icinga2-monitor ein linux-Dienst ausgeführt wird

Ich habe einen server mit Plex und zwei andere Dienste, die ich überwachen möchten mit Icinga2 und für das Leben von mir ich kann nicht herausfinden, wie man, um zu arbeiten. Wenn ich den folgenden Befehl ausführen:

./check_procs -c 1:1 -a '/usr/lib/plexmediaserver/Plex Media Server'

Gibt die folgende, wenn ich manuell mit kill Plex:

PROCS CRITICAL: 0 processes with args '/usr/lib/plexmediaserver/Plex Media Server' | procs=0;;1:1;0;

Ich kann einfach nicht herausfinden, wie Sie dieses Kontrollkästchen, um den server.. wo setze ich es ?

Habe ich versucht, indem eine andere Erklärung zu /etc/icinga2/conf.d/Dienste.conf wie folgt:

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

        check_command = "procs"

        assign where host.name == NodeName

        arguments = 
        {
            "-a" = 
            {
              value = "/usr/lib/plexmediaserver/Plex Media Server"
              description = "service name"
              required = true
            }
        }
    }

Dann aber der agent ließ sich nicht starten überhaupt.

InformationsquelleAutor stumped221 | 2017-09-28

 

2 Replies
  1. 0

    ich bin ein kleines cluster aus Raspberry Pi ‚ s, die ich bin-überwachung mit Icinga2. Auf dem master-Knoten meiner cluster habe ich ein dhcp-server läuft. Ich überprüfen Sie den status der folgenden Weise.

    Zuerst habe ich heruntergeladen die prüfen Sie service-status-plugin von Icinga Exchange, machte es ausführbar und zog es nach /usr/lib/nagios/plugins (der Pfad kann abweichen).

    Dann definierte ich ein check-Befehl für Sie:

    object CheckCommand "Check Service" {
    import "plugin-check-command"
    command = [ PluginDir + "/check_service.sh" ]
    arguments += {
        "-o" = {
            required = true
            value = "$check_service_os$"
        }
        "-s" = {
            required = true
            value = "$check_service_name$"
        }
    }
    }
    

    Nun alles, was Links war die Definition eines Service:

    object Service "Check DHCP" {
    host_name = "Localhost"
    check_command = "Check Service"
    enable_perfdata = true
    event_command = "Restart DHCP"
    vars.check_service_name = "isc-dhcp-server"
    vars.check_service_os = "linux"
    }
    

    Als Bonus können Sie sogar definieren einen event-Befehl, startet Ihr service:

    object EventCommand "Restart DHCP" {
        import "plugin-event-command"
        command = [ "/usr/bin/sudo", "systemctl", "restart" ]
        arguments += {
            "(no key)" = {
                skip_key = true
                value = "$check_service_name$"
            }
        }
        vars.check_service_name = "isc-dhcp-server"
    }
    

    Aber für diese zu arbeiten, müssen Sie geben Sie Ihrem nagios-Benutzer (oder was auch immer der Benutzer läuft Ihre icinga-service) sudo-Berechtigungen, um die Dienste neu starten. Fügen Sie diese Zeile in der sudoers-Datei:

    nagios ALL = (ALL) NOPASSWD: /bin/systemctl restart *
    

    Ich hoffe, das hilft Ihnen bei Ihrem problem 🙂

    Jan

  2. 0

    Ich löste dies durch die Definition eines service:

    apply Service for (service => config in host.vars.processes_linux) {
      import "generic-service"
      check_command = "nrpe"
      display_name = config.display_name
      vars.nrpe_command = "check_process"
      vars.nrpe_arguments = [ config.process, config.warn_range, config.crit_range ]
    }
    

    In der host-definition, die ich fügen Sie einfach ein config-sagen wir mongodb:

    vars.processes_linux["trench-srv-lin-process-mongodb"] = {
      display_name = "MongoDB processes"
      process = "mongod"
      warn_range = "1:"
      crit_range = "1:"
    }
    

    Auf dem remote-host, die ich brauche um das Paket zu installieren nagios-nrpe-server

    Und in der Configdatei /etc/nagios/nrpe_local.cfg ich diese Zeile hinzufügen:

    command[check_procs]=/usr/lib/nagios/plugins/check_procs -w $ARG1$ -c $ARG2$ -s $ARG3$
    

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.