Tenho uma instalação icinga2 monitorando alguns hosts debian usando agente nativo.
Todas as verificações estão funcionando bem, exceto apt
. Os resultados exibidos são retirados da máquina mestre icinga2 e não consigo entender por quê.
Esta é a minha apt
configuração de serviço:
apply Service "apt" {
import "generic-service"
check_command = "apt"
assign where (host.name == NodeName || host.vars.linux_ver == "debian")
// assign where host.name == NodeName
}
Alguma dica?
Responder1
A pergunta é antiga, mas: Você precisará definir o cliente remoto (command_endpoint) de alguma forma, caso contrário ele só verificará o mestre. Presumo que a configuração do seu agente esteja em execução, então você já configurou o arquivo zones.conf
. Sugiro adicionar um segundo serviço para os clientes remotos:
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"
}
Configuração do host:
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.
}