Monit je nástroj s otevřeným zdrojovým kódem, který poskytuje několik funkcí monitorování systému, které jsou velmi užitečné pro správce systému. Tento článek poskytuje průvodce instalací a konfigurací monit. Diskutujeme také konkrétní příklad týkající se monitorování procesů.
1. Nainstalujte monit
Na Fedoře, openSUSE, Debian nainstalujte monit jako balíček z distribučního úložiště. Například na Debianu (a Ubuntu) nainstalujte monit pomocí apt-get, jak je uvedeno níže.
# apt-get install monit
Pokud vaše distribuce nemá balíček monit, stáhněte si zdroj monit a nainstalujte jej.
2. Nakonfigurujte monit
Ukázkový záznam monitorování procesu v konfiguračním souboru monit /etc/monit/monitrc vypadá následovně.
check process PROCESSNAME with pidfile PIDFILENAME-WITHABSOLUTE-PATH start = STARTUP-SCRIPT stop = STOP-SCRIPT
Chcete-li například monitorovat démona cron, připojte k souboru monitrc následující řádky.
# vim /etc/monit/monitrc check process crond with pidfile /var/run/crond.pid start = "/etc/init.d/cron start" stop = "/etc/init.d/cron stop"
Další konfigurace (například restartování procesu, když překročí limit paměti nebo procesu), naleznete v části JAK MONITOROVAT v „man monit“.
Také povolte syslog zrušením komentáře na následujícím řádku v /etc/monit/monitrc.
# vim /etc/monit/monitrc set logfile syslog facility log_daemon
3. Povolit spuštění monit
Upravte soubor /etc/default/monit a povolte příznak spuštění, který zajistí, že konfigurace bude provedena, aby se monit mohl spustit.
# vim /etc/default/monit startup=1
4. Spusťte monit
# /etc/init.d/monit start Starting daemon monitor: monit
5. Zkontrolujte funkčnost monit
Abychom to otestovali, zabijme běžícího démona cron, jak je ukázáno níže.
# ps -ef | grep cron root 2886 1 0 10:18 ? 00:00:00 /usr/sbin/cron # pkill -9 cron
V dalším intervalu monit automaticky spustí démona cron bez zásahu administrátora, jak je ukázáno ve zprávách syslog níže.
Dec 5 13:06:55 (none) monit[2968]: 'crond' process is not running Dec 5 13:06:55 (none) monit[2968]: 'crond' trying to restart Dec 5 13:06:55 (none) monit[2968]: 'crond' start: /etc/init.d/cron
Proveďte ps -ef, abyste se ujistili, že úlohu cron spustí monit automaticky, když jste ji zabili.
# ps -ef | grep cron root 19728 1 0 13:06 ? 00:00:00 /usr/sbin/cron