O que eu amo no Nagios é que o framework fornece ferramentas suficientes para resolver problemas complexos de monitoramento. Esta é mais uma abordagem sobre como realizar isso, em vez de uma solução.
Como notas do @kasperd acima, o Nagios não possui um mecanismo para determinar se um host está ativado / desativado ou quebrado. Se você puder criar um script para determinar se um host "deve estar ativado", essa abordagem funcionará.
O Nagios suporta a idéia de dependências de host e / ou serviço. A ideia é que um host ou serviço não seja considerado inativo se uma das dependências estiver inativa. Dado isso, você poderia:
-
Defina o host do cliente "A" que você precisa monitorar
-
Defina um "on / off" host "B" que será usado para determinar se o host está desligado
- Desenvolva um script de verificação personalizado que possa determinar se o host está ativado / desativado. Será crítico se o host estiver desligado. normal se estiver.
-
Tornar o host "A" dependente do host "B"
Com esta configuração, a notificação para o Host A só será processada se o Host "B" estiver normal. Veja Dependência do Host na documentação. Como alternativa, você poderia fazer isso com uma verificação de host personalizada que determina o estado "deve estar ligado" e o estado real e retornou o status correto.