AWS hostalive mit Icinga ohne Ping, aber mit check_tcp

Um einen Host bei Amazon Web Services per Icinga zu überwachen, kann man leider nicht auf den normalen „hostalive“ von Icinga zurückgreifen. Dieser „pingt“ den Server regelmäßig an und meldet sich entsprechend, wenn der Server nicht erwartungsgemäß antwortet.

Auf Amazon EC2 oder auch Lightsail Servern werden Ping-Anfragen erstmal grundsätzlich aus Sicherheitsgründen geblockt. Auf EC2 Servern lassen sich die sogenannten ECHO-Requests (ICMP Requests) zum Glück freischalten –  auf den Lightsail Servern geht das leider nicht.

Um dennoch die Erreichbarkeit überprüfen zu können, kann man bei Icinga anstatt der standardmäßig eingestellten „hostalive“ Abfrage auch einen eigenen Check verwenden, der z.B. die Erreichbarkeit des Hosts per TCP/IP auf einem bestimmten Port (z.B. 80 – WWW) testet.

„AWS hostalive mit Icinga ohne Ping, aber mit check_tcp“ weiterlesen

Icinga Ping-Check deaktivieren

Um den Ping-Test in einem Icinga Host zu deaktivieren, muss eine kleine Anpassung in der „services.conf“ vorgenommen werden, die wiederum dazu führt, dass man in einem Host den Ping-Check deaktivieren kann.

services.conf anpassen

apply Service "ping4" {
    import "generic-service"

    check_command = "ping4"

    ignore where host.vars.ping == "no"
    assign where host.address
}

apply Service "ping6" {
    import "generic-service"

    check_command = "ping6"

    ignore where host.vars.ping == "no"
    assign where host.address6
}

Wichtig ist hier die jeweils die Zeile:

ignore where host.vars.ping == "no"

Damit erreicht man, dass in einem Host, das die Variable vars.ping = „no“ definiert, kein Ping-Check durchgeführt wird.