Icinga 2 ist ein kostenloses und quelloffenes Überwachungstool Dies hilft Ihnen, Netzwerkressourcen zu überwachen, bei Ausfällen benachrichtigt zu werden und Leistungsdaten zu generieren.
Icinga 2 ist sehr skalierbar und Sie können kleine bis größere, komplexe Umgebungen an mehreren Standorten überwachen.
Icinga 2 unterstützt alle wichtigen Distributionen wie Debian , Ubuntu , CentOS / RHEL , Fedora , openSUSE, SLES, Gentoo, FreeBSD und ArchLinux.
Dieser Beitrag behandelt kurz die Installation und Konfiguration von Icinga 2 auf CentOS 7 / RHEL 7 .
Wechseln Sie zum Root-Benutzer.
$ sudo su -
Icinga-Pakete sind von anderen Paketen (z. B. Nagios-Plugins) abhängig, die im EPEL-Repository verteilt werden. Konfigurieren Sie also das EPEL-Repository auf CentOS 7 / RHEL 7 .
rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
Aktivieren Sie darüber hinaus die optionalen und zusätzlichen Repositorys auf RHEL 7.
subscription-manager repos --enable rhel-7-server-optional-rpms subscription-manager repos --enable rhel-7-server-extras-rpms
Icinga 2-Repository hinzufügen
Icinga stellt sein offizielles Repository zur Verfügung für ihre Pakete. Installieren Sie also das Repository-rpm
rpm --import https://packages.icinga.com/icinga.key yum install https://packages.icinga.com/epel/icinga-rpm-release-7-latest.noarch.rpm
Installieren Sie Icinga 2
yum -y install icinga2
Um den Icinga2-Dienst zu starten, führen Sie Folgendes aus:
systemctl start icinga2
Um den Icinga 2-Dienst so einzustellen, dass er beim Systemstart automatisch gestartet wird, führen Sie Folgendes aus:
systemctl enable icinga2
SELinux
Wenn auf dem System SELinux aktiviert ist, installieren Sie das folgende Paket, um eine gezielte Richtlinie für Icinga 2 zu haben.
yum install -y icinga2-selinux
Nagios-Plugins installieren
Ohne die Plugins kann Icinga 2 die externen Dienste nicht überwachen. Installieren Sie also Nagios-Plugins auf Icinga 2.
yum -y install nagios-plugins-all
DB IDO MySQL konfigurieren
Das DB IDO-Modul für Icinga 2 kümmert sich um den Export aller Konfigurations- und Statusinformationen in die Datenbank; Für diese Anforderung benötigen wir einen Datenbankserver.
Derzeit werden MySQL und PostgreSQL unterstützt. Hier verwenden wir den MySQL-Server als Datenbankserver.
Wenn Sie bereits einen MySQL-Server auf Ihrem System haben, können Sie den folgenden Schritt überspringen.
yum -y install mariadb-server mariadb
Starten und aktivieren Sie den MariaDB-Dienst.
systemctl start mariadb systemctl enable mariadbFühren Sie die Ersteinrichtung von MariaDB mit mysql_secure_installation durch Befehl.
IDO-Module für MySQL installieren
Installieren Sie nun IDO-Module für MySQL mit dem folgenden Befehl. Sie finden das Paket icinga2-ido-mysql im Icinga 2-Repository.
yum -y install icinga2-ido-mysql
Datenbank für Icinga 2 erstellen
Melden Sie sich mit dem folgenden Befehl bei MariaDB an.
mysql -u root -p
Erstellen Sie eine Datenbank für IDO-Module, und diese wird verwendet, wenn Sie die Icinga2-Webschnittstelle einrichten.
CREATE DATABASE icinga2; grant all privileges on icinga2.* to icinga2@localhost identified by 'icinga123'; FLUSH PRIVILEGES; quit
Nachdem Sie die Datenbank erstellt haben, importieren Sie das Icinga 2 IDO-Schema mit dem folgenden Befehl.
mysql -u root -p icinga2 < /usr/share/icinga2-ido-mysql/schema/mysql.sql
IDO MySQL-Modul aktivieren
Lassen Sie uns die verfügbaren und aktivierten Funktionen in Icinga 2 auflisten.
icinga2 feature list
Ausgabe:
Disabled features: api command compatlog debuglog elasticsearch gelf graphite influxdb livestatus opentsdb perfdata statusdata syslog Enabled features: checker ido-mysql mainlog notification
Sie können dieses ido-mysql sehen ist bereits aktiviert.
Wenn ido-mysql auf Ihrem System nicht aktiviert ist, aktivieren Sie es mit dem folgenden Befehl.
icinga2 feature enable ido-mysql
Aktivieren Sie außerdem den Befehl Funktion, die der Icinga-Weboberfläche und anderen Icinga-Add-Ons hilft, Befehle über die externe Befehlspipe an Icinga 2 zu senden.
icinga2 feature enable command
IDO DB MySQL-Modul konfigurieren
Sobald Sie die IDO-Module in Icinga 2 aktiviert haben, platziert Icinga 2 die neue Konfigurationsdatei unter /etc/icinga2/features-enabled/ido-mysql.conf in dem Sie die Datenbankanmeldeinformationen manuell aktualisieren müssen.
vi /etc/icinga2/features-enabled/ido-mysql.conf
Aktualisieren Sie die obige Datei wie unten gezeigt.
user = "icinga2", password = "icinga123", host = "localhost", database = "icinga2"
Starten Sie die Icinga 2-Instanz neu, damit diese aktivierten Funktionen wirksam werden.
systemctl restart icinga2
Überprüfen Sie den Status des Icinga 2-Dienstes.
systemctl status icinga2
Ausgabe:
● icinga2.service - Icinga host/service/network monitoring system Loaded: loaded (/usr/lib/systemd/system/icinga2.service; enabled; vendor preset: disabled) Active: active (running) since Tue 2018-09-04 05:00:38 UTC; 23h ago Main PID: 11656 (icinga2) CGroup: /system.slice/icinga2.service ├─ 4520 /usr/lib64/nagios/plugins/check_ping -H 10.142.0.4 -c 5000,100% -w 3000,80% ├─ 4521 /usr/bin/ping -n -U -W 30 -c 5 10.142.0.4 ├─11656 /usr/lib64/icinga2/sbin/icinga2 --no-stack-rlimit daemon -e └─11690 /usr/lib64/icinga2/sbin/icinga2 --no-stack-rlimit daemon -e Sep 05 04:43:10 rhicinga2server icinga2[11656]: mail not found in $PATH. Consider installing it. Sep 05 04:43:10 rhicinga2server icinga2[11656]: [2018-09-05 04:35:29 +0000] information/WorkQueue: #10 (Json...in); Sep 05 04:43:10 rhicinga2server icinga2[11656]: [2018-09-05 04:35:30 +0000] information/WorkQueue: #7 (IdoMy...in); Sep 05 04:43:10 rhicinga2server icinga2[11656]: [2018-09-05 04:35:38 +0000] information/ConfigObject: Dumpin...ate' Sep 05 04:43:10 rhicinga2server icinga2[11656]: [2018-09-05 04:40:29 +0000] information/WorkQueue: #6 (ApiLi...in); Sep 05 04:43:10 rhicinga2server icinga2[11656]: [2018-09-05 04:40:29 +0000] information/WorkQueue: #5 (ApiLi...in); Sep 05 04:43:10 rhicinga2server icinga2[11656]: [2018-09-05 04:40:38 +0000] information/ConfigObject: Dumpin...ate'
Firewall
Konfigurieren Sie die Firewall so, dass Icinga 2-Clients mit dem Icinga 2-Server kommunizieren können.
firewall-cmd --permanent --add-port=5665/tcp firewall-cmd --reload
Wir werden das Icinga 2-Webinterface in unserem nächsten Tutorial konfigurieren.
LESEN :So richten Sie Icinga Web 2 unter CentOS 7 / RHEL 7 ein
Das ist alles.