uptime cpu load high 찾기

# uptime 확인시 2년 넘게 운영되는 서버가
# system load average (cpu) 가 높게 나오고 계속 올라간다.
# top, htop 에서 프로세스들의 cpu 사용률 확인해 봤지만
# 아래 그림과 같이 높은 cpu 를 사용하는 프로세스는 보이지 않았다.
# 대신 cpu 1개가 계속 100% 상태다.


# 하지만 다음과 같이 pcpu(%cpu) 항목 보기로 cpu 사용률정렬(-r)해서 보면 보인다.
ps -eo %cpu,pid,user,args -r | head -3
%CPU   PID USER     COMMAND
 99    895 root     /sbin/rngd -f
 8.1 30810 root     /usr/lib/systemd/systemd-journald
 0.9 30738 root     htop

# 참고로 맥에서는 -f 기본에 %cpu 컬럼추가해서 봐도 된다.
ps -ef -o %cpu -r | head -3

# htop 에서 CPU% 가 99%인 /sbin/rngd 가 ps 로 보면 높은 cpu 사용률을 보인다.
# 찾아보니 rngd 는 Check and feed random data from hardware device to kernel 로 위와 같은 상황시 재부팅해야한다고 한다.
# 커널 3.10.0-514.21 부터 /dev/hwrnd 가 생겼고
# 기존 rngd 에서 에러가 발생할 수 있어 업데이트가 필요하다고 한다.


comments:

댓글 쓰기