GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So installieren Sie Nagios Server Monitoring unter Ubuntu 16.04

Nagios ist eine Open-Source-Software zur System- und Netzwerküberwachung. Nagios kann die Aktivität eines Hosts und seiner Dienste überwachen und gibt eine Warnung/Warnung aus, wenn auf dem Server etwas Schlimmes passiert. Nagios kann auf Linux-Betriebssystemen ausgeführt werden. Derzeit verwende ich Ubuntu 16.04 für die Installation.

Voraussetzungen

  • 2 Ubuntu 16.04 - 64-Bit-Server
    • 1 – Nagios-Host mit IP:192.168.1.9
    • 2 - Ubuntu-Client mit IP:192.168.1.10
  • Root/Sudo-Zugriff

Was wir in diesem Tutorial tun werden:

  1. Software die Paketabhängigkeiten wie - LAMP etc.
  2. Benutzer- und Gruppenkonfiguration.
  3. Installieren von Nagios.
  4. Apache konfigurieren.
  5. Testen des Nagios-Servers.
  6. Hinzufügen eines Hosts zur Überwachung.

Installieren der Voraussetzungen

Nagios benötigt den gcc-Compiler und build-essentials für die Kompilierung, LAMP (Apache, PHP, MySQL) für die Nagios-Weboberfläche und Sendmail, um Benachrichtigungen vom Server zu senden. Um all diese Pakete zu installieren, führen Sie diesen Befehl aus (es ist nur eine Zeile):

sudo apt-get install wget build-essential apache2 php apache2-mod-php7.0 php-gd libgd-dev sendmail unzip

Benutzer- und Gruppenkonfiguration

Damit Nagios ausgeführt werden kann, müssen Sie einen neuen Benutzer für Nagios erstellen. Wir nennen den Benutzer "nagios" und erstellen Sie zusätzlich eine Gruppe namens "nagcmd" . Wir fügen den neuen Benutzer der Gruppe wie unten gezeigt hinzu:

useradd nagios
groupadd nagcmd
usermod -a -G nagcmd nagios
usermod -a -G nagios,nagcmd www-data

Installation von Nagios

Schritt 1 – Laden Sie den Nagios-Core herunter und extrahieren Sie ihn

cd ~
wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.2.0.tar.gz
tar -xzf nagios*.tar.gz
cd nagios-4.2.0

Schritt 2 - Nagios kompilieren

Bevor Sie Nagios bauen, müssen Sie es mit dem Benutzer und der Gruppe konfigurieren, die Sie zuvor erstellt haben.

./configure --with-nagios-group=nagios --with-command-group=nagcmd

Für weitere Informationen verwenden Sie bitte:./configure --help .

Nun zur Installation von Nagios:

make all
sudo make install
sudo make install-commandmode
sudo make install-init
sudo make install-config
/usr/bin/install -c -m 644 sample-config/httpd.conf /etc/apache2/sites-available/nagios.conf

Und kopieren Sie das Evenhandler-Verzeichnis in das Nagios-Verzeichnis:

cp -R contrib/eventhandlers/ /usr/local/nagios/libexec/
chown -R nagios:nagios /usr/local/nagios/libexec/eventhandlers

Schritt 3 - Installieren Sie die Nagios-Plugins

Laden Sie die Nagios-Plugins herunter und extrahieren Sie sie:

cd ~
wget https://nagios-plugins.org/download/nagios-plugins-2.1.2.tar.gz
tar -xzf nagios-plugins*.tar.gz
cd nagios-plugin-2.1.2/

Installieren Sie die Nagios-Plugins mit den folgenden Befehlen:

./configure --with-nagios-user=nagios --with-nagios-group=nagios --with-openssl
make
make install

Schritt 4 - Nagios konfigurieren

Nach Abschluss der Installationsphase finden Sie die Standardkonfiguration von Nagios in /usr/local/nagios/.

Wir werden Nagios und den Nagios-Kontakt konfigurieren.

Bearbeiten Sie die Nagios-Standardkonfiguration mit vim:

vim /usr/local/nagios/etc/nagios.cfg

Kommentieren Sie Zeile 51 aus für die Host-Monitor-Konfiguration.

cfg_dir=/usr/local/nagios/etc/servers

Speichern und beenden.

Fügen Sie einen neuen Ordner mit dem Namen server:

hinzu
mkdir -p /usr/local/nagios/etc/servers

Der Nagios-Kontakt kann in der Datei contact.cfg konfiguriert werden. Um es zu öffnen, verwenden Sie:

vim /usr/local/nagios/etc/objects/contacts.cfg

Ersetzen Sie dann die Standard-E-Mail durch Ihre eigene E-Mail.

Apache konfigurieren

Schritt 1 - Apache-Module aktivieren

sudo a2enmod rewrite
sudo a2enmod cgi

Sie können den Befehl htpasswd verwenden, um einen Benutzer nagiosadmin für die Nagios-Weboberfläche zu konfigurieren

sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

und geben Sie Ihr Passwort ein.

Schritt 2 - aktivieren Sie den virtuellen Nagios-Host

sudo ln -s /etc/apache2/sites-available/nagios.conf /etc/apache2/sites-enabled/

Schritt 3 - Starten Sie Apache und Nagios

service apache2 restart
service nagios start

Wenn Nagios startet, sehen Sie möglicherweise den folgenden Fehler:

Starting nagios (via systemctl): nagios.serviceFailed

Und so beheben Sie das Problem:

cd /etc/init.d/
cp /etc/init.d/skeleton /etc/init.d/nagios

Bearbeiten Sie nun die Nagios-Datei:

vim /etc/init.d/nagios

... und fügen Sie den folgenden Code hinzu:

DESC="Nagios"
NAME=nagios
DAEMON=/usr/local/nagios/bin/$NAME
DAEMON_ARGS="-d /usr/local/nagios/etc/nagios.cfg"
PIDFILE=/usr/local/nagios/var/$NAME.lock

Machen Sie es ausführbar und starten Sie Nagios:

chmod +x /etc/init.d/nagios
service apache2 restart
servuce nagios start

Testen des Nagios-Servers

Bitte öffnen Sie Ihren Browser und greifen Sie auf die Nagios-Server-IP zu, in meinem Fall: http://192.168.1.9/nagios .

Nagios Login mit Apache htpasswd.

Nagios-Admin-Dashboard

Hinzufügen eines Hosts zur Überwachung

In diesem Tutorial werde ich einen zu überwachenden Ubuntu-Host zum Nagios-Server hinzufügen, den wir oben erstellt haben.

Nagios Server IP : 192.168.1.9
Ubuntu Host IP : 192.168.1.10

Schritt 1 – Mit Ubuntu-Host verbinden

ssh [email protected]

Schritt 2 – NRPE-Dienst installieren

sudo apt-get install nagios-nrpe-server nagios-plugins

Schritt 3 - NRPE konfigurieren

Bearbeiten Sie nach Abschluss der Installation die nrpe-Datei /etc/nagios/nrpe.cfg:

vim /etc/nagios/nrpe.cfg

... und fügen Sie die Nagios-Server-IP 192.168.1.9 zur server_address hinzu.

Serveradresse=192.168.1.9

Schritt 4 - NRPE neu starten

service nagios-nrpe-server restart

Schritt 5 – Ubuntu-Host zum Nagios-Server hinzufügen

Bitte verbinden Sie sich mit dem Nagios-Server:

ssh [email protected]

Erstellen Sie dann eine neue Datei für die Hostkonfiguration in /usr/local/nagios/etc/servers/.

vim /usr/local/nagios/etc/servers/ubuntu_host.cfg

Fügen Sie die folgenden Zeilen hinzu:

# Ubuntu Host configuration file

define host {
        use                          linux-server
        host_name                    ubuntu_host
        alias                        Ubuntu Host
        address                      192.168.1.10
        register                     1
}

define service {
      host_name                       ubuntu_host
      service_description             PING
      check_command                   check_ping!100.0,20%!500.0,60%
      max_check_attempts              2
      check_interval                  2
      retry_interval                  2
      check_period                    24x7
      check_freshness                 1
      contact_groups                  admins
      notification_interval           2
      notification_period             24x7
      notifications_enabled           1
      register                        1
}

define service {
      host_name                       ubuntu_host
      service_description             Check Users
      check_command           check_local_users!20!50
      max_check_attempts              2
      check_interval                  2
      retry_interval                  2
      check_period                    24x7
      check_freshness                 1
      contact_groups                  admins
      notification_interval           2
      notification_period             24x7
      notifications_enabled           1
      register                        1
}

define service {
      host_name                       ubuntu_host
      service_description             Local Disk
      check_command                   check_local_disk!20%!10%!/
      max_check_attempts              2
      check_interval                  2
      retry_interval                  2
      check_period                    24x7
      check_freshness                 1
      contact_groups                  admins
      notification_interval           2
      notification_period             24x7
      notifications_enabled           1
      register                        1
}

define service {
      host_name                       ubuntu_host
      service_description             Check SSH
      check_command                   check_ssh
      max_check_attempts              2
      check_interval                  2
      retry_interval                  2
      check_period                    24x7
      check_freshness                 1
      contact_groups                  admins
      notification_interval           2
      notification_period             24x7
      notifications_enabled           1
      register                        1
}

define service {
      host_name                       ubuntu_host
      service_description             Total Process
      check_command                   check_local_procs!250!400!RSZDT
      max_check_attempts              2
      check_interval                  2
      retry_interval                  2
      check_period                    24x7
      check_freshness                 1
      contact_groups                  admins
      notification_interval           2
      notification_period             24x7
      notifications_enabled           1
      register                        1
}

Sie finden viele check_command in der Datei /usr/local/nagios/etc/objects/commands.cfg. Siehe dort, wenn Sie weitere Dienste wie DHCP, POP usw. hinzufügen möchten.

Und jetzt prüfen Sie die Konfiguration:

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

... um zu sehen, ob die Konfiguration korrekt ist.

Schritt 6 – Alle Dienste neu starten

Starten Sie auf dem Ubuntu-Host den NRPE-Dienst:

service nagios-nrpe-server restart

... und starten Sie auf dem Nagios-Server Apache und Nagios:

service apache2 restart
service nagios restart

Schritt 7 – Testen des Ubuntu-Hosts

Öffnen Sie den Nagios-Server über den Browser und sehen Sie, dass ubuntu_host überwacht wird.

Der Ubuntu-Host ist auf dem überwachten Host verfügbar.

Alle Dienste fehlerfrei überwacht.

Schlussfolgerung

Nagios ist eine Open-Source-Anwendung zur Überwachung eines Systems. Nagios ist aufgrund der einfachen Konfiguration weit verbreitet. Nagios wird von verschiedenen Plugins unterstützt, und Sie können sogar Ihre eigenen Plugins erstellen. Weitere Informationen finden Sie hier.


Ubuntu
  1. So installieren Sie MySQL unter Ubuntu 18.04

  2. So installieren Sie Minecraft Server auf Ubuntu 18.04

  3. So installieren Sie Nginx unter Ubuntu 20.04

  4. So installieren Sie Zimbra 8.6 auf einem Ubuntu 14.04-Server

  5. So installieren Sie Nagios unter Ubuntu 13.04

So installieren Sie MySQL 8.0 auf Ubuntu 18.04

So installieren Sie Zabbix Server auf Ubuntu 20.04

So installieren Sie Nagios 4.4.3 auf Ubuntu 18.04 und Ubuntu 16.04

So installieren Sie Nagios unter Ubuntu 22.04

So installieren Sie Cacti Monitoring unter Ubuntu 14.04

So installieren Sie Ganglia Monitoring Server unter Ubuntu 18.04