Seitenhierarchie

Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Auf dieser Seite:

Inhalt
maxLevel2

Param Include
page_English Translation
url=/display/ID/iLert+Icinga+2+Integration

Mit dem iLert Icinga Notification Plugin können Sie Icinga einfach in iLert integrieren. Ihr bestehendes Icinga-System (und andere Nagios-Forks) können Sie so um die SMS-, Push- und Sprach-Benachrichtigung von iLert einfach erweitern.

Hinweis
titleHaben Sie Icinga 1.x im Einsatz?

Für Icinga 1.x nutzen Sie bitte die Anleitung iLert Icinga 1 Integration

Systemvoraussetzungen

  • Icinga 2.x
  • Python 2.7.3 (oder höher)

Vorbereitung

Auszug einschließen
iLert Nagios Integration
iLert Nagios Integration
nopaneltrue

Installationsanleitung

Laden Sie das iLert Icinga Plugin runter und entpacken es:

Panel
> wget http://www.ilert.de/s/ilert_nagios.zip
> unzip ilert_nagios.zip

Legen Sie die Plugin-Datei nagios_ilert.py im Verzeichnis /usr/local/bin ab. Die Datei muss sowohl von Icinga als auch vom Cron-Daemon ausführbar sein:

Panel
> mv ilert_nagios.py /usr/local/bin
> chmod 755 /usr/local/bin/ilert_nagios.py

Öffnen Sie die Plugin-Konfigurationsdatei ilert_icinga2.conf und tragen den API Schlüssel im pager Feld der User-Definition ein, z.B.

Panel
object User "ilert" {
display_name = "iLert"
groups = [ "icingaadmins" ]
states = [ OK, Warning, Critical, Unknown]
types = [ Problem, Recovery, Acknowledgement ]
vars.additional_notes = "This user maps to an alert source in iLert."
pager = "12345678-abcd-efgh-ijkl-87654321"
}

Kopieren Sie die Datei in das Icinga Konfigurationsverzeichnis (variiert je nach Installation).

Panel
> mv ilert_icinga2.conf /etc/icinga2/conf.d/

Über das Attribut vars.notification.enable_ilert = true in Host- und Service-Definitionen können Sie iLert als Benachrichtigungskontakt aktivieren. Um iLert für alle Hosts und Services zu aktivieren, fügen Sie das Attribut in das Template /etc/icinga2/conf.d/templates.conf ein:

Panel
template Host "generic-host" {
 max_check_attempts = 5
 check_interval = 1m
 retry_interval = 30s check_command = "hostalive"  
 
 vars.notification.enable_ilert = true
 
template Service "generic-service" {
 max_check_attempts = 3
 check_interval = 1m
 retry_interval = 30s  
 
 vars.notification.enable_ilert = true 
}

Editieren Sie die crontab-Datei von dem Icinga Benutzer

Panel
> crontab -u icinga -e

Fügen Sie folgenden Eintrag hinzu:

Panel
* * * * * /usr/local/bin/ilert_nagios.py -m send

Über diesen Cron-job werden im Minutentakt Events an iLert gesendet, die im ersten Sendeversuch gescheitert sind (z.B. aufgrund eines Netzwerkfehlers).

Starten Sie Icinga neu:

Panel
> /etc/init.d/icinga2 restart

FAQ

Welche Icinga Notification Types werden vom Plugin verarbeitet?

Das Plugin verarbeitet die Notification Types PROBLEMACKNOWLEDGEMENT und RECOVERY. Die Notification Types FLAPPING* und DOWNTIME* werden ignoriert.

Seite einschließen
_FAQInternetConnection
_FAQInternetConnection

Unterstützt das Plugin auch Icinga 1.x?

Ja, die Anleitung finden Sie unter iLert Icinga 1 Integration.

Seite einschließen
_FAQPluginSupport
_FAQPluginSupport

Wie kann ich die SSL Verschlüsselung ausschalten?

Sie können den API-Endpunkt und Port über die beiden Kommandozeilen-Optionen -e und -p steuern. Um über HTTP (anstatt HTTPS) zu kommunizieren, ergänzen Sie den Aufruf des Plugins um die Argumente -e http://ilertnow.com -p 80 in der Nagios Konfigurations-Datei ilert_icinga.conf und in Cron:

Panel
object NotificationCommand "ilert-notification" {
 import "plugin-notification-command"
 command = "/usr/local/bin/ilert_nagios.py -m save -e http://ilertnow.com -p 80"  ...
}
 

Der Eintrag in Cron sieht dann wie folgt aus:

Panel
* * * * * /usr/local/bin/ilert_nagios.py -m send -e http://ilertnow.com -p 80