Internet und Hostinglösungen
  • Werbung
  • Schlagwörter

Icinga 2 Monitoring Installation unter Debian 8 Jessie

Vorwort


Icinga ist eine System- und Netzwerküberwachungs-Anwendung. Welche Hosts und Services überwacht und alarmiert Sie, wenn sich der Status verschlechtert oder (wieder) verbessert.

Da Icinga ein Fork (eine Abspaltung) von Nagios ist, sind alle Plugins für Nagios vollständig kompatibel. Die Icinga-Entwickler haben sich als Ziel gesetzt die Kompatibilität mit Nagios beizubehalten. Vorteile von Icinga gegenüber Nagios sind über 400 Patches (Nachbesserungen).

Installation


Icinga2


Öffnen Sie die Datei mit den Paketquellen und fügen Sie folgende Zeilen ein:
nano /etc/apt/sources.list
deb http://debmon.org/debmon debmon-jessie main

Laden Sie nun den Schlüssel herunter und stufen Sie die Pakete des Mirros als vertrauenswürdig ein:
wget -O - http://debmon.org/debmon/repo.key 2>/dev/null | apt-key add -


Bringen Sie Ihr System auf den neusten Stand:
apt-get update && apt-get -y upgrade

Nach der aktualisierung des Systems können Sie Icinga2 installieren:
apt-get install icinga2

Nun können Sie Icinga2 starten:
/etc/init.d/icinga2 start


Monitoring Plugins


Nach der Installation sollte Sie noch die Monitoring-Plug-Ins installierten:
apt-get install nagios-plugins



Konfiguration


Livestatus


icinga2 feature enable livestatus
Enabling feature livestatus. Make sure to restart Icinga 2 for these changes to take effect.

Damit das Livestatus Feature aktviert wird, müssen Sie Icinga2 neustarten:
/etc/init.d/icinga2 restart

Nun können die Livedaten mit folgendem Befehl ausgelesen werden:
echo -e "GET hosts\n" | unixcat /var/run/icinga2/cmd/livestatus

Wenn Sie diese Daten von einem anderen Host auslesen möchten, öffnen Sie die Datei livestatus.conf und fügen Sie die folgenden Zeilen ein:
nano /etc/icinga2/features-available/livestatus.conf

object LivestatusListener "livestatus-tcp" {
socket_type = "tcp"
bind_host = "127.0.0.1"
bind_port = "6558"
}

oder
object LivestatusListener "livestatus-unix" {
socket_type = "unix"
socket_path = "/var/run/icinga2/cmd/livestatus"
}

echo -e "GET hosts\n" |netcat 127.0.0.1 6558

Nach der Konfigurationsänderung müssen Sie Icinga2 neustarten:
/etc/init.d/icinga2 restart



Prüfbefehle


=== check_mysql ===
nano /etc/icinga2/conf.d/commands.conf

object CheckCommand "mysql" {
import "plugin-check-command"
command = [ PluginDir + "/check_mysql" ]
arguments = {
"-H" = "$mysql_address$"
"-P" = "$mysql_port$"
"-u" = "$mysql_user$"
"-p" = "$mysql_pass$"
"-d" = "$mysql_db$"
}

vars.mysql_address = "$address$"
}


=== swap_by_ssh ===
object CheckCommand "check_by_ssh" {
import "plugin-check-command"
command = [ PluginDir + "/check_by_ssh" ]
arguments = {
"-H" = "$by_ssh_address$"
"-p" = "$by_ssh_port$"
"-C" = "$by_ssh_command$"
"-l" = "$by_ssh_logname$"
"-i" = "$by_ssh_identity$"
"-q" = {
set_if = "$by_ssh_quiet$"
}
"-w" = "$by_ssh_warn$"
"-c" = "$by_ssh_crit$"
"-t" = "$by_ssh_timeout$"
"-o" = "UserKnownHostsFile=/dev/null"
"-o" = "StrictHostKeyChecking=no"
}
vars.by_ssh_address = "$address$"
vars.by_ssh_quiet = false
}