Warum zeigt die Icinga2-Remote-Apt-Prüfung Ergebnisse vom Master an?

Warum zeigt die Icinga2-Remote-Apt-Prüfung Ergebnisse vom Master an?

Ich habe eine Icinga2-Installation, die einige Debian-Hosts mithilfe eines nativen Agenten überwacht.

Alle Prüfungen funktionieren einwandfrei, außer apt. Die angezeigten Ergebnisse stammen von der Icinga2-Mastermaschine und ich verstehe nicht, warum.

Dies ist meine aptServicekonfiguration:

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

  check_command = "apt"

  assign where (host.name == NodeName || host.vars.linux_ver == "debian")
//  assign where host.name == NodeName
}

Irgendwelche Hinweise?

Antwort1

Die Frage ist zwar alt, aber: Sie müssen den Remote-Client (command_endpoint) irgendwie definieren, sonst wird nur der Master geprüft. Ich gehe davon aus, dass Ihre Agentenkonfiguration ausgeführt wird, sodass Sie die bereits konfiguriert haben zones.conf. Ich schlage vor, einen zweiten Dienst für die Remote-Clients hinzuzufügen:

apply Service "apt2" {
  import "generic-service"
  check_interval = 10m   // * how often to check
  check_command = "apt"  // * call the plugin
  command_endpoint = host.vars.remote_client // * execute the plugin on the remote machine

  //vars.apt_only_critical = "1" //uncomment if you want.

  assign where host.vars.remote_client && host.vars.linux_apt == "1" // * only check where remote client is set and vars.linux_apt is set to "1" 
}

Hostkonfiguration:

object Host "<HostName>" {
  import "generic-host" // * default stuff
  address = "<HostAddress>" // * default stuff
  vars.linux_apt = "1" // * Set this host to be checked by the new service
  vars.remote_client = "<HostNameAsConfiguredInZones.conf>" // * Needed for the remote service checks. Check `zones.conf` on what to insert here for your host.
}

verwandte Informationen