monit 도구를 통해 다른 서버의 CPU 로드 평균을 모니터링하는 방법은 무엇입니까?
이 예에서는 유일한 localhost를 보여줍니다.
check System my_server
if loadavg (1min) > 4 then alert
if loadavg (5min) > 2 then alert
if memory usage > 12% then alert
if swap usage > 25% then alert
if cpu usage (user) > 80% then alert
if cpu usage (system) > 30% then alert
if cpu usage (wait) > 20% then alert
답변1
monit
예를 들어, 다른 서버의 규칙을 직접 사용하여 특정 서버를 구성할 수는 없습니다.
데몬 구성은 monit
설치된 특정 서버에만 적용됩니다. 예를 들어 monit
데몬 자체는 agent
서버/VM(원격)에서만 실행됩니다.
그러나 다음을 수행할 수 있습니다.
- 사용매체/모니터링
monit
네트워크를 통해 중앙 서버와 통신하고 데이터를 수집하기 위해 - 브라우저를 통해 각 monit 인스턴스에 개별적으로 액세스하도록 monit을 구성하십시오.
- Nagios의 프록시로 monit을 사용하십시오.
참고로 M/monit
역시 작가가 쓴 글인데 monit
유료였습니다. 일반 호스트 모니터링, 분석 및 모바일 장치에서 잘 작동하는 인터페이스를 갖춘 소규모 인프라를 위한 흥미로운 경량 모니터링 솔루션입니다.
바라보다M/모니트 스크린샷
M/Monit과 대화하려면 각 경우에 웹 인터페이스를 활성화 monit
해야 합니다 . monit
웹 인터페이스를 제공하는 것 외에도 웹 인터페이스를 활성화하면 REST API에 액세스할 수 있어 원격으로 액세스할 수 있는 XML 통계도 제공됩니다.
M/Monit의 웹 인터페이스를 활성화하거나 모니터링 데이터를 원격으로 탐색하려면:
set httpd port 2812 allow 0.0.0.0/0.0.0.0 # allow localhost to connect to the server allow admin:monit
당신은 또한 볼 수 있습니다Monit 웹 인터페이스 설치 및 구성
모니터 웹 인터페이스를 구성한 후 브라우저를 사용하여 특정 서버/VM을 직접 가리킬 수도 있습니다.
그럼에도 불구하고 여러 서버를 모니터링하려면 Nagios 또는 Zabbix를 사용하는 것을 선호합니다.
monit 용 Nagios 플러그인이 있지만 저는 네이티브를 사용하는 것을 선호합니다 agent
.nrpe
monit
웹 인터페이스를 통한 원격 통신을 위한 Python 라이브러리도 있습니다. 이를 통해 자신만의 방식으로 스크립트를 작성하여 몇 대의 서버를 모니터링할 수 있습니다. 이 방법은 제가 아직 탐색하지 않았습니다.https://github.com/polymeris/python-monit
모니터링 웹 인터페이스 예:
(원천:잠 못 이루는 짐승.eu)