
들어오는 트래픽에 대해 여러 작업을 수행하는 서버가 있습니다.
최근 서버가 버벅거렸습니다. 시스템이 질식하면 재부팅됩니다. 이로 인해 질식의 병리에 대한 의미 있는 정보가 거의 남지 않습니다(이것은 확실히 폭력적인 충돌이 아닙니다).
귀하의 경험 중 어떤 도구가 시스템 초크와 관련된 의미 있는 데이터를 보존하는 데 도움이 되었습니까?
이는 메모리 소비, "ps", "top" 또는 기타 매개변수일 수 있습니다.
여러 개의 긴 명령(ps -a)을 가끔씩 출력하는 스크립트는 대용량 저장소를 사용하고 분석하기 어려울 수 있습니다.
답변1
SAR을 설치하면 기본적으로 10분마다 데이터 스냅샷이 제공되지만 cron 작업을 사용하여 정보 속도를 변경할 수 있습니다.
메모리, 로드 CPU 사용량, 디스크 I/O 통계와 같은 유용한 데이터를 많이 제공합니다.
답변2
시스템의 가장 일반적인 매개변수에 대한 기록 분석이 필요합니다. 웹을 통해 가장 일반적인 시스템 리소스에 대한 그래프를 제공하는 MUNIN을 추천합니다. 이를 통해 어떤 프로세스/어떤 서비스가 리소스를 질식시키는지, 어떤 리소스를 지속적으로 모니터링할 수 있는지 확인할 수 있습니다.
그 후에는 시스템 로그 파일을 tail -f하는 것이 좋습니다. 이것이 바로 이 문제의 원인입니다.
답변3
때때로 나는 SAR이 약간 부적절하다고 느낍니다. 나는 시스템에서 무슨 일이 일어나고 있는지에 대한 완전한 그림이 필요한 경우를 보았습니다. 그러면 top, ps, vmstat, netstat, iostat, iotop과 같은 명령이 유용합니다. 일반적으로 나는 이러한 명령을 파일에 기록합니다. 이제 공간이 제약이 되는 경우 다음과 같은 서비스가 있습니다.SeaLion
위의 모든 명령을 실행하고 클라우드에 저장합니다. 브라우저에서 이러한 데이터에 액세스할 수 있습니다.
또한 컴퓨터에서 통계를 수집하여 문제를 디버깅하는 동안 유용할 수 있는 , Nagios
, Munin
와 같은 다른 서비스에 대해서도 언급하고 싶습니다 New Relic
.Server density