GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren und konfigurieren Sie Monit.

Einführung

Monit ist ein hilfreiches Programm, das Serverprogramme automatisch überwacht und verwaltet, um sicherzustellen, dass sie nicht nur dauerhaft online bleiben, sondern auch, dass Dateigröße, Prüfsumme oder Berechtigungen immer korrekt sind.

# yum install monit ( To install monit On RedHat/CentOS/Fedora/ )

# sudo apt-get install monit ( To install monit On Ubuntu/Debian )

Konfiguriere den Monit-Daemon

# vi /etc/monit.conf ( Configuration file in RedHat/CentOS/Fedora/ )

# vi /etc/monit/monitrc ( Configuration file in Ubuntu/Debian )

HINZUFÜGEN DER DIENSTE JETZT ZUR MONIT-KONFIGURATIONSDATEI

Öffnen Sie die Konfigurationsdatei, z. B.

For RedHat/CentOS/Fedora (# vi /etc/monit.conf)
For Ubuntu/Debian (# vi /etc/monit/monitrc)

Löschen Sie alle Zeilen in der Konfigurationsdatei und fügen Sie die unten angegebenen Zeilen hinzu. (jede Zeile wird unten kurz definiert)

Daemon-Intervall festlegen

Dies ist das Intervall (in Sekunden), in dem Monit seine Tests durchführt. Der von Ihnen gewählte Wert hängt davon ab, wie viele Tests Sie definieren. Wenn wir diesen Wert ändern, müssen Sie Monit neu starten.

# check services at 30 seconds of intervals
set daemon 30

Protokolldatei setzen

# set logfile syslog facility log_daemon                       
set logfile /var/log/monit.log

Überprüfen Sie die Speichernutzungseinstellungen und starten Sie neu

##To check the memory usage and restart the services.    
	check system localhost
    	if memory usage > 93%
        then exec "/usr/local/bin/httpd-start"
aus

Überprüfen Sie den HTTPD-Dienst und starten Sie neu

Hier wird der Httpd-Dienst von monit überwacht, d. h. wenn der Dienst nicht läuft oder wenn der loadavg-Wert höher ist, führt monit den httpd-Dienst aus, um neu zu starten

#To check the Httpd service and restart the services.
# Httpd
        check process httpd with pidfile /var/run/httpd/httpd.pid
        start program = "/usr/local/bin/httpd-start"
        stop program = "/usr/local/bin/httpd-kill"
        if loadavg (1min) greater than 10 for 1 cycles then restart

Prüfen Sie den mysqld-Dienst und starten Sie neu

Hier wird der Mysqld-Dienst von monit überwacht, d. h. wenn der Dienst nicht läuft oder wenn der loadavg-Wert größer ist, führt monit den Mysql-Dienst aus, um neu zu starten

#To check the mysql service and restart the services.
# mysqld
        check process mysqld with pidfile /var/run/mysqld/mysqld.pid
        start program = "/etc/init.d/mysqld start"
        stop program = "/etc/init.d/mysqld stop"
        if memory usage > 70% for 1 cycles then restart
        if failed host 127.0.0.1 port 3306 then restart
        if loadavg (1min) greater than 5 for 1 cycles then restart

Auf die gleiche Weise können wir jeden Dienst hinzufügen, der von monit überwacht und neu gestartet werden muss

Sobald alle Dienste in der Konfigurationsdatei hinzugefügt wurden. Die Konfigurationsdatei sieht wie folgt aus..

# check services at 2-minute intervals
set daemon 30
# set logfile syslog facility log_daemon                       
set logfile /var/log/monit.log
##To check the memory usage and restart the services.    
	check system localhost
    	if memory usage > 93%
        then exec "/usr/local/bin/httpd-start"

#To check the Httpd service and restart the services.
# Httpd
        check process httpd with pidfile /var/run/httpd/httpd.pid
        start program = "/usr/local/bin/httpd-start"
        stop program = "/usr/local/bin/httpd-kill"
        if loadavg (1min) greater than 10 for 1 cycles then restart

#To check the mysql service and restart the services.
# mysqld
        check process mysqld with pidfile /var/run/mysqld/mysqld.pid
        start program = "/etc/init.d/mysqld start"
        stop program = "/etc/init.d/mysqld stop"
        if memory usage > 70% for 1 cycles then restart
        if failed host 127.0.0.1 port 3306 then restart
        if loadavg (1min) greater than 5 for 1 cycles then restart

HINWEIS:Da wir die folgende Zeile in der Konfigurationsdatei definiert haben

Programm starten =„/usr/local/bin/httpd-start“
Programm stoppen =„/usr/local/bin/httpd-kill“

Wir müssen die Skripte httpd-start, httpd-kill hinzufügen, d.h.

Erstellen Sie eine Datei mit dem folgenden Befehl und fügen Sie die folgenden Zeilen hinzu

vi /usr/local/bin/httpd-start
#!/bin/bash
/usr/bin/killall -9 httpd; /usr/bin/killall -9 php-cgi; /usr/bin/ipcs |grep apache | /bin/cut -d" " -f2 | /usr/bin/xargs /usr/bin/ipcrm sem {};
/bin/sleep .5;
/usr/sbin/apachectl start
#/sbin/swapoff -a
#/sbin/swapon -a
exit 0;

Jetzt speichern und beenden mit dem Befehl

 :wq!

Jetzt dasselbe für das httpd-kill-Skript

Erstellen Sie eine Datei mit dem folgenden Befehl und fügen Sie die folgenden Zeilen hinzu

 vi /usr/local/bin/httpd-kill
#!/bin/bash
/usr/bin/killall -9 httpd; /usr/bin/ipcs |grep apache | /bin/cut -d" " -f2 | /usr/bin/xargs /usr/bin/ipcrm sem {};
/bin/sleep .5;
exit 0;

die gleiche Art und Weise müssen wir für Mysqld-Skripte definieren..

Nachdem Sie alle Programme für die Überwachung konfiguriert haben, überprüfen Sie die Monit-Syntax auf Fehler. Wenn Fehler gefunden werden, beheben Sie diese, es ist nicht so schwer herauszufinden, was schief gelaufen ist. Verwenden Sie den folgenden Befehl

# monit -t

Wenn die Monit-Konfigurationsdatei korrekt ist, erhalten Sie eine Meldung wie „Steuerdateisyntax OK“, oder wenn Sie keine Fehler sehen,

Nachdem Sie alle möglichen Fehler behoben haben, können Sie den folgenden Befehl eingeben, um den Monit-Dienst zu starten.

# /etc/init.d/monit start

Überprüfen des Monit-Dienstes

Sie können überprüfen, ob der Monit-Dienst gestartet wurde, indem Sie die Protokolldatei überprüfen.

# tail -f /var/log/monit

Beispielprotokollausgabe ist wie folgt

[BDT Apr  3 03:06:04] info     : Starting monit HTTP server at [localhost:2812]
[BDT Apr  3 03:06:04] info     : monit HTTP server started
[BDT Apr  3 03:06:04] info     : 'e2enetworks.com' Monit started
[BDT Apr  3 03:06:04] error    : 'nginx' process is not running
[BDT Apr  3 03:06:04] info     : 'nginx' trying to restart
[BDT Apr  3 03:06:04] info     : 'nginx' start: /etc/init.d/nginx

Cent OS
  1. So installieren und konfigurieren Sie Nginx unter CentOS 7

  2. So installieren und konfigurieren Sie Redis unter CentOS 7

  3. So installieren und konfigurieren Sie GitLab unter CentOS 7

  4. So installieren und konfigurieren Sie Monit.

  5. So installieren und konfigurieren Sie CyberPanel unter CentOS 8

So installieren und konfigurieren Sie ISPConfig CP unter CentOS 7

So installieren und konfigurieren Sie ownCloud auf CentOS 7

So installieren und konfigurieren Sie Samba unter CentOS 8

So installieren und konfigurieren Sie Fail2ban unter CentOS 8

So installieren und konfigurieren Sie HAproxy unter CentOS 6

So installieren und konfigurieren Sie Grafana