리눅스 Load Average란?

공정위 광고 문구 Ver 3.1
공정위 광고 문구 Ver 3.2(모바일 전용)

리눅스에서 top 명령어 또는 uptime 명령어로 1분, 5분, 15분의 시스템의 평균 로드 지표인 Load Average를 통해 평균 부하 정도를 알 수 있습니다. Load Average는 CPU에 어느 정도의 일이 쌓이는지를 나타내는 것으로 정의 내릴 수 있습니다.

✅ 리눅스 Load Average의 이해

~]# uptime                                                                                                         
 10:36:12 up 5 days, 17:35,  1 user,  load average: 2.03, 20.17, 15.09
 ⓐ현재 시간|ⓑ부팅  5 17:35동안 가동| ⓒ시스템에 로그인한 사용자 |ⓓ최근 1분,5분,15분동안 시스템의 평균 부하율  

세 개의 숫자 (2.03, 20.17, 15.09)는 시스템에서의 1분,5분,15분 동안의 평균 부하를 나타 냅니다. 1코어의 단일 CPU 환경일 경우 평균 부하 1이 의미하는 것은 100% CPU를 사용하고 있다는 것을 의미합니다. 2코어일 경우는 50%, 4코어일 경우 25%를 사용하는 것을 의미합니다.

리눅스 uptime 명령어를 통한 Load Average 확인하기

결국 단일 CPU 환경에서 부하 1과 4개의 CPU에서 부하가 4라는 것은 자원을 사용하는 양적인 측면에서 동일한 것으로 이해할 수 있습니다.

✅ 평균 부하가 높은 것의 의미

Load Average의 평균 부하가 높다는 것은 “어떤 이유로 높은가?”로 원인을 찾을 수 있습니다.

  • 평균 부하 원인
  • CPU에 의한 부하: 프로세스가 CPU 자원을 사용하기 전 대기 상태.
  • RAM에 의한 부하: 높은 RAM 사용으로 RAM 영역이 아닌 Swap 영역으로 옮겨진 경우.
  • 디스크 I/O에 자원이 집중된 경우

시스템의 주요 리소스는 CPU, RAM, 디스크 I/O 3가지와 네트워크를 볼 수 있으며, 서버에서의 문제 발생이 원인일 경우 시스템 엔지니어의 경우 RAM, 또는 CPU를 추가할지를 고민할 수 있고, 개발자의 경우 새로 수정한 코드가 느리게 실행되는지 체크를 고려할 수 있습니다.

✅ 부하의 원인 파악하기

구체적인 부하의 원인을 파악하기 위해 vmstat 명령어를 활용할 수 있습니다.

  • r과 b 열에서 각각의 프로세스 및 확인할 수 있습니다.
  • r – The number of processes waiting for run time: 현재 실행되고 있는 프로세스의 갯수
  • b – The number of processes in uninterruptible sleep: I/O를 위해 대기열에 있는 프로세스의 개수
vmstat 2
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0 1077988   3124 321444    0    0     2     1   47  134  0  0 100  0  0
 0  0      0 1077988   3124 321444    0    0     0     0   47  133  0  0 100  0  0
 1  0      0 1077988   3124 321444    0    0     0     0   48  139  0  0 100  0  0
 4  0      0 1077988   3124 321444    0    0     0     0   44  122  0  0 100  0  0
 0  0      0 1077988   3124 321444    0    0     0     0   49  136  0  0 100  0  0
 1  0      0 1077988   3124 321444    0    0     0     0   46  126  0  0 100  0  0
 0  0      0 1077988   3124 321444    0    0     0     0   44  128  0  0 100  0  0
 0  0      0 1077988   3124 321444    0    0     0     0   46  133  0  0 100  0  0
 1  0      0 1077988   3124 321444    0    0     0     0   45  126  0  1 100  0  0
 0  0      0 1077988   3124 321444    0    0     0     0   48  133  0  0 99  0  0
 0  0      0 1077988   3124 321444    0    0     0     0   45  132  0  0 100  0  0
 0  0      0 1077988   3124 321444    0    0     0     0   46  129  0  0 100  0  0
 0  0      0 1077988   3124 321444    0    0     0     0   49  135  0  0 100  0  0
 0  0      0 1077988   3124 321444    0    0     0     0   46  127  0  0 100  0  0

b 열에 있는 프로세스가 많이 표시되는 경우 I/O 처리 과정의 문제를 체크 해 볼 수 있겠습니다.

리눅스 TOP 명령어: 명령줄 인터페이스(CLI-Command-Line Interface)

ℹ️ 제휴 안내
본 사이트의 콘텐츠에는 제휴 링크가 포함되어 있습니다. 방문자가 이 링크를 통해 상품 또는 서비스를 구매하면 본 사이트는 판매처로부터 수수료를 지급받습니다. 이 과정에서 구매자가 지불하는 금액(이벤트 할인 시 금액이 내려갑니다↓)은 오르지 않습니다. 게시된 가격·할인·재고 정보는 작성 시점 기준이며 실제와 다를 수 있으므로, 구매 전 판매처에서 최종 확인하시기 바랍니다. 상품 선정과 평가는 자체 기준에 따라 작성되며, 수수료 지급 여부가 소개 순서나 평가 내용에 영향을 주지 않습니다.

Similar Posts

  • 아파치 재시작 오류 | (20014)Internal error: Error retrieving pid file logs/httpd.pid

    아파치 재시작을 진행했으나 위 두 가지 오류가 확인될 수 있습니다. apachectl restart 등의 명령어를 입력했지만 위와 같은 오류가 발생한 이유는 아파치가 정상적으로 종료되지 않았기 때문에 발생하는 오류입니다. ✅ Error retrieving pid file logs/httpd.pid 해결하기 로그 폴더에서 httpd.pid를 확인했을 때 폴더가 비어 있음을 확인할 수 있습니다. 1. 원본 파일 백업 후 루트 계정의 pid…

  • HTTP 500 에러(내부 서버 오류)

    HTTP 500 에러는 이용 중인 컴퓨터, 인터넷의 문제가 아닌 내부 서버 오류입니다. ✅ HTTP 500 에러 HTTP 500 error로 발생하는 원인은 다양합니다. 다른 사이트 역시 마찬가지이지만 주로 워드프레스 사이트에서 .htaccess 파일이 변경된 경우일 수 있으며, 서버의 DB에서 오류가 발생한 경우 등 다양한 원인이 존재합니다. 1. .htaccess 파일 오류 워드프레스의 경우 초기 세팅 파일이나…

  • HTTP 503 에러(Service Unavailable) 원인과 해결

    웹사이트에 접속했을 때 발생하는 HTTP 503 에러(Service Unavailable)의 원인은 서버 측에서 발생하는 에러입니다. 서버 과부하, 서버 구성 오류 등 다양한 원인이 있습니다. ✅ HTTP 503 에러 로그 확인하기 먼저 503 error이 발생한 원인을 파악하기 위해 error_log를 확인합니다. ✅ 다양한 HTTP 503 에러 로그 원인 1. httpd 미구동 데몬이 정상적으로 작동하는지 확인해 볼 수…

  • APM 설치 후 503 에러

    APM 설치 후 503 에러가 발생해서 원인을 error.log를 확인 해 보니 아래와 같은 오류가 확인 되었습니다. ✅ APM 설치 후 503 에러 원인: PHP-FPM 에러 AWS EC2 서비스에 APM 설치 후 처음에는 문제가 없었는데 이미지 파일을 만들면서 서버 재부팅이 있었습니다. 문제는 설치 후 > 서버 재부팅을 하면서 문제가 생긴 것으로 확인 했습니다. 보통…

  • APM 설치 후 아파치 403 에러(403 Forbidden)

    리눅스에서 APM을 설치한 후에 아파치 403 에러가 뜰 경우 SELinux가 켜져 있는지 먼저 확인할 수 있습니다. 1. APM 설치 후 아파치 403 에러 발생 시 퍼미션 확인 SELinux 설정을 끈 이후에도 동일한 오류가 발생한다면 퍼미션(권한) 문제이기 때문에 폴더의 소유권과 권한을 확인해 주어야 합니다. 에러 로그를 확인 했을 때 위와 같은 오류가 확인되며, 퍼미션을…

  • SELinux 개념과 보안 설정

    SELinux(Security-Enhanced Linux)란 보안을 강화하기 위해 개발된 리눅스 커널의 보안 기능 중 하나입니다. 셀리눅스는 컴퓨터 시스템의 보안을 강화하기 위해 NSA(National Security Agency:미국 국가안보국)와 레드햇(Red Hat) 등의 기업과 개발자들이 협력하여 개발했습니다. zero-day 공격 및 buffer overflow 등 어플리케이션 취약점으로 인한 해킹을 방지해 주는 핵심 구성요소에 속하지만APM 설치 후 사용하는데 오류가 발생하는 등 불편함이 있습니다. 잘…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 1   +   7   =