트러블슈팅

CPU 과부화 장애 트러블슈팅

댕발바닥 2024. 8. 23. 21:31

 

개인적으로 구성해둔 미니 PC 서버에서 이상감지가 되었다.

 

Zabbix를 통하여 간단하게 서버 리소스 상태만 감지하고 있었는데 어느날 부터 갑자기 CPU 점유가 100%가 넘어가기 시작하며, 나중에는 서버가 죽어버렸다.

 

일단 서버를 재부팅하였고 다시 리소스가 정상화 되었으며 트러블 슈팅을 하기로 생각했다.

 

위 그림을 보면 CPU 점유가 100%가 넘었고 장애가 발생되었다. 실제로 운영하는 서비스가 저렇게 되면 대형사고와 마찬가지다.

 

일단 개인적으로 구축한 서비스들이 전부다 지연이 되었고 동작 불가상태까지 넘어갔다.

 

top 명령어를 통한 서버 상태 확인

 

첫 째로 현재 CPU 상태를 보기 위하여 서버 상태를 체크하였고 위 스크린샷을 보면 알 수 있듯이 특정 PID (39521)이 말도안되는 높은 CPU 점유를 가지고 있었다.

PID 확인

해당 PID cmd 를 확인해 보았고 컨테이너 환경에서 동작하고 있는 Jenkins에서 문제가 발생되었다.

이전까지 CI/CD로 잘 사용하고 있었는데 문제가 발생되었다.

 

jekins 로

 

로그를 보니 AcessDeniedException 로그가 무수히 찍혀있는것이 확인 되었다. 계속 Exception이 발생되고 있으며 Jekins 내부적으로 Exception으로 인하여 과부하가 걸린것 같아 보인다.

 

이때 최근에 Jekins 비밀번호를 잊어버려 초기화 하기 위해 설정중 useSecurity를 꺼두었다. 이후 다시 설정을 하지않아도 된다 생각하여 진행하지 않았는데 그게 문제를 발생시킨것 같다.

 

jekins 설정

 

현재는 위 처럼 다시 설정해서 모니터링 진행할 예정이다. 

 

DNS + Nginx를 통해서 Jekins 페이지에 접근 할수있게 설정 해두었는데 보안 OFF에 의해서 이슈가 발생된것으로 보인다 아직은 여기서 더 트러블슈팅 할 능력이 되지않아 모니터링을 진행해서 재발되지않는지 확인해 보려한다.