Icinga-Integrationshandbuch

In diesem Handbuch erfahren Sie, wie Sie Ihr Vereisung Installation mit PagerDuty über ein einfaches Perl-basiertes Plugin. Da Icinga ein Fork von Nagios ist, nutzen wir für diese Integration die integrierte Nagios-Unterstützung von PagerDuty.

Beachten Sie, dass Sie als Root angemeldet sein müssen, um die Installation abzuschließen. Abhängig von Ihrer Linux-Distribution und Ihrer Icinga-Konfiguration müssen Sie diese Anweisungen möglicherweise leicht anpassen. Sollten Sie Probleme bei der Installation haben, wenden Sie sich bitte an Kontaktieren Sie uns .

Suchen Sie nach Icinga 2? Hier klicken

Erste Schritte

Wenn Sie noch keinen PagerDuty „Icinga“-Dienst haben, sollten Sie einen erstellen:

In PagerDuty

  1. Gehen Sie zum Leistungen und wählen Sie Serviceverzeichnis .
  2. Auf der Serviceverzeichnis Seite:
    • Wenn Sie einen neuen Dienst für Ihre Integration erstellen, klicken Sie auf + Neuer Service und befolgen Sie die beschriebenen Schritte, indem Sie diese Integration in Schritt 4.
    • Wenn Sie Ihre Integration zu einem vorhandenen Dienst hinzufügen, klicken Sie auf das Name des Dienstes, zu dem Sie die Integration hinzufügen möchten. Klicken Sie dann auf das Integrationen und klicken Sie auf Eine neue Integration hinzufügen .
  3. Unter Wählen Sie die Integration(en) aus, die Sie zum Senden von Benachrichtigungen an diesen Dienst verwenden suchen und wählen Sie diese Integration .
  4. Klicken Sie auf das Dienst hinzufügen oder Integration hinzufügen , um Ihre neue Integration zu speichern. Sie werden auf die Integrationsseite für Ihren Dienst weitergeleitet.
  5. Suchen Sie die Integration in der Liste, kopieren Sie die Integrationsschlüssel und bewahren Sie es für die spätere Verwendung an einem sicheren Ort auf.

Aufstellen

  1. Installieren Sie die erforderlichen Perl-Abhängigkeiten: Für Debian, Ubuntu und andere von Debian abgeleitete Systeme:
     aptitude installiere libwww-perl libcrypt-ssleay-perl 

    RHEL , Fedora, CentOS und andere von Redhat abgeleitete Systeme:

     yum installiere perl-libwww-perl perl-Crypt-SSLeay 
  2. Laden Sie pagerduty_icinga.cfg von GitHub herunter
     wget https://raw.github.com/ PagerDuty/pagerduty-icinga-pl/master/pagerduty_icinga.cfg 
  3. Öffnen Sie die Datei in Ihrem bevorzugten Editor.
  4. Geben Sie den Integrationsschlüssel Ihres Nagios/Icinga-Dienstes in das Pager-Feld ein. Der Integrationsschlüssel ist eine 32-stellige Zeichenfolge, die auf der Detailseite des Dienstes zu finden ist.
  5. Kopieren Sie die Icinga-Konfigurationsdatei an den richtigen Ort und ändern Sie den Besitzer:
     cp pagerduty_icinga.cfg /usr/local/icinga/etc/objects chown icinga:icinga /usr/local/icinga/etc/objects/pagerduty_icinga.cfg 
  6. Fügen Sie den Kontakt „pagerduty“ zur Hauptkontaktgruppe Ihrer Icinga-Konfiguration hinzu. Wenn Sie die Standardkonfiguration verwenden, öffnen Sie /usr/local/icinga/etc/objects/contacts.cfg und suchen Sie nach der Kontaktgruppe „admins“. Fügen Sie dann einfach den Kontakt „pagerduty“ hinzu.
     define contactgroup{ contactgroup_name admins alias Icinga Administrators members icingaadmin,pagerduty ; <-- Fügen Sie hier „pagerduty“ hinzu. } 
  7. Laden Sie pagerduty_icinga.pl von GitHub herunter und kopieren Sie es nach /usr/local/bin.
     wget https://raw.github.com/ PagerDuty/pagerduty-icinga-pl/master/pagerduty_icinga.pl cp pagerduty_icinga.pl /usr/local/bin 
  8. Stellen Sie sicher, dass die Datei von Icinga ausführbar ist
     chmod 755 /usr/local/bin/pagerduty_icinga.pl 
  9. Aktivieren Sie Umgebungsvariablenmakros in /usr/local/icinga/icinga.cfg (falls nicht bereits aktiviert)
     enable_environment_macros=1 
  10. Bearbeiten Sie die Crontab des Icinga-Benutzers
     crontab -u icinga -e 
  11. Fügen Sie der Crontab die folgende Zeile hinzu
     * * * * * /usr/local/bin/pagerduty_icinga.pl flush 
  12. Starten Sie Icinga neu
     /etc/init.d/icinga Neustart 

Häufig gestellte Fragen

Was passiert, wenn ein Icinga-Ereignis eintritt, während mein Netzwerk ausgefallen ist?

Sollte ein PagerDuty -Server aus irgendeinem Grund nicht erreichbar sein, werden die Ereignisse in einer Warteschlange auf der Festplatte gespeichert. Der installierte Cron-Job versucht, die Ereignisse im Minutentakt erneut zu senden.

Da Icinga meine externe Internetverbindung benötigt, um Fehlerberichte an PagerDuty zu senden, wie werde ich benachrichtigt, wenn unsere Site die externe Konnektivität verliert?

Sie sollten einen externen Ping-Check-Dienst konfigurieren wie Pingdom zur Überwachung der externen Konnektivität Ihrer Site. Natürlich können Sie PagerDuty auch zur Weiterleitung von Warnmeldungen dieser Dienste verwenden.

Es scheint nicht zu funktionieren. Was ist los?

Überprüfen Sie das Syslog auf Meldungen von „pagerduty_icinga“. Auf den meisten Systemen:

 grep pagerduty_icinga /var/log/syslog 

Bitte Kontaktieren Sie uns wenn Sie das Problem nicht lösen können.

Welche Art von Icinga-Nachrichten versteht PagerDuty ?

PagerDuty kann verarbeiten PROBLEM , ANERKENNUNG , Und ERHOLUNG Nachrichten. Alle anderen Nachrichten, einschließlich FLAPPINGSTART Und FLAPPENSTOP , werden ignoriert. Wenn Sie möchten, dass PagerDuty zusätzliche Icinga-Nachrichten verarbeitet, lassen Sie es uns bitte wissen!

Wie wäre es mit einer 2-Wege-Ack-Integration zwischen Icinga und PagerDuty?

PagerDuty Kunden haben ein bidirektionales Integrationspaket für Nagios/Icinga und PagerDuty entwickelt. Es nutzt die generische Integrations-API und Webhooks von PagerDuty, um Benachrichtigungen von Nagios/Icinga an PagerDuty zu senden und den Status der Alarmbestätigung synchron zu halten. Erfahren Sie mehr darüber. Hier .

Bereit, loszulegen?

Testen Sie jedes Produkt der Operations Cloud kostenlos. Keine Kreditkarte erforderlich.