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 apt
Servicekonfiguration:
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.
}