====== Monit ====== Monit 🇬🇧 ist ein rasch eingerichtetes, einfach zu bedienendes aber effektives Programm zur Überwachung von Serverdiensten. Es kann auch wichtige Basisdaten wie CPU-Nutzung, Festplattenbelegung und mehr einbeziehen. Falls ein Serverdienst ausfällt, kann er automatisch neu gestartet werden. Bei Problemen werden ein oder mehrere Empfänger per E-Mail informiert. Zusätzlich gibt es eine übersichtliche Status-Webseite. Ursprünglich für einen einzelnen Server gedacht, gibt es mit M/Monit 🇬🇧 auch eine kommerzielle Variante, die mehrere Server gleichzeitig (unter einer Oberfläche) überwachen kann. * Dokumentation auf Ubuntu https://wiki.ubuntuusers.de/Monit/ * Webseite https://mmonit.com/monit/ * Konfiguration Beispiele https://mmonit.com/wiki/Monit/ConfigurationExamples * Erste Schritte https://linux-de.com/?p=14427 ===== Installation ===== sudo apt-get install monit # Konfiguration sudo mc /etc/monit # Start Stop über systemctl sudo systemctl start monit.service sudo systemctl status monit.service sudo systemctl stop monit.service sudo systemctl restart monit.service # Check der Konfiguration sudo monit -t ==== Einrichtung ===== Die Hauptkonfiguration liegt in /etc/monit/monitrc Standardmäßig wird auch noch das Verzeichnis /etc/monit/conf.d/ mit durchsucht. ==== Überwachungen ==== Es können Server Dienste, Hardware Infos oder auch Dateien überwacht werden. Einzelne Überwachungen liegen im Ordner /etc/monit/conf-available/ und müssen zur Aktivierung wie bei Apache mit einem symbolischen Link ins Verzeichnis /etc/monit/conf-enabled/ sudo ln -s /etc/monit/conf-available/check-cups-file /etc/monit/conf-enabled/ sudo systemctl restart monit ==== Benachrichtigungen ==== Für Benachrichtigungen muss in der Hauptkonfiguration ein SMTP Zugang eingerichtet werden: set mailserver smtp.strato.com port 465 username "station@megadruck24.de" password "abcd" using SSL with timeout 30 seconds ===== Code Beispiele ===== ==== Datei überwachen -> Service starten ==== Datei anlegen in /etc/monit/conf-available/ und enable it. # /etc/monit/conf-available/check-cups-file check file cup_marker with path /path/to/marker.file if not exist then exec "/bin/systemctl restart cups.service" # optional: alert on success (Monit >= 5.XX uses alert) else if succeeded then alert ==== Webserver einrichten ==== sudo vim /etc/monit/conf.d/httpd ## HTTP interface set httpd port 2812 use address localhost #Den Zugriff nur für localhost erlauben allow BENUTZERNANE:SICHERES_PASSWORT #Erlaubt den Zugriff nur mit dieser Authentifizierung ===== Aliase ===== Bei Nutzung nach .bash_aliases kopieren # monit alias monit_log="tail -f /var/log/monit.log" alias monit_check_config="sudo monit -t" alias monit_restart="sudo systemctl restart monit.service" alias monit_status="sudo systemctl status monit" alias monit_stop="sudo systemctl stop monit" alias monit_config="sudo mc /etc/monit/ /etc/monit/" alias mcmonit="sudo mc /etc/monit/ /etc/monit/"