Permitir host para baixo enquanto sob relógio nagios

3

Estamos usando nagios para observar a integridade de nossos servidores. Agora temos uma tarefa para adicionar o servidor, que estará ativo apenas por um certo tempo. E durante esse tempo, temos que garantir que todos os serviços estejam funcionando. Infelizmente não sabemos quando será o host desativado. Então, precisamos de alguma maneira automática para conseguir isso.

  1. Existe uma maneira (diretiva de configuração) para não informar se o host está inativo. Quero dizer, mesmo em clientes nagios como nagstamon . Eu não gosto da idéia do ícone preto na systray o dia todo.
  2. Existe uma maneira de não informar qualquer serviço em execução em um host, enquanto o host está inativo?
  3. Ao obter pontos 1. e 2. , existe uma maneira de monitorar todos os serviços do host quando e somente quando o host está ativo?
por Michal Bryxí 18.12.2010 / 20:06

5 respostas

3

Deixe-me pegar os pontos na ordem errada.

2) NAGIOS já deveria fazer isto; Se um host estiver inativo, os alertas de serviço não serão enviados.

1) Eu estava pensando que você poderia fazer isso com o tempo de inatividade flexível: este é o tempo de inatividade de uma determinada duração da janela que não inicia em um horário conhecido; em vez disso, a janela é iniciada automaticamente quando o host fica inativo.

Mas então me ocorreu: tudo o que você realmente precisa fazer é não enviar alertas quando o host estiver inativo. Se você conseguir isso, então

  • Quando o host está inativo, os alertas de serviço não serão enviados. Você não se importa que o host esteja fora do ar, porque, como você diz, você não sabe quando vai e volta, então a ausência de um alerta de host é irrelevante. O HOST DOWN ainda será registrado, permitindo que você veja retrospectivamente o que ocorreu, mas os alertas não serão enviados.

  • Quando o host estiver ativo, alertas de serviço serão enviados de qualquer maneira.

É isso que você quer, não é? Em caso afirmativo, você precisa adicionar à definição de host

notification_options   n

Eu acho que isso também resolveu o problema 3, como é o que acontece normalmente. Eu não posso falar por clientes não essenciais como nagstamon. Na minha experiência, estes são geralmente screen-scrapers, e suas decisões sobre o que notificar não são baseadas na lógica de notificação do NAGIOS. Se o seu cliente respeitar as regras incorporadas do NAGIOS, deve estar tudo bem; caso contrário, você terá que trabalhar com essa ferramenta específica para adicionar uma lógica semelhante.

    
por 18.12.2010 / 21:08
0

Você pode definir períodos de tempo personalizados usando a definição de período de tempo em seu timeperiods.cfg. Aqui está um exemplo

# Here is a slightly friendlier period during work hours
define timeperiod{
    timeperiod_name workhours
    alias           Standard Work Hours
    monday          09:00-17:00
    tuesday         09:00-17:00
    wednesday       09:00-17:00
    thursday        09:00-17:00
    friday          09:00-17:00
    }

Em seguida, use isso para o valor check_period em suas definições de host e serviço.

    
por 18.12.2010 / 20:28
0

Esta resposta não cobrirá suplementos de monitoramento de terceiros como nagstamon ou o plugin nagios do firefox, porque ele irá variar muito.

De algumas maneiras que posso pensar em cima da minha cabeça:

  • Desative as verificações de host para o servidor. No entanto, isso deixará o host em um estado permanente de "UP" e os serviços começarão a alertar.
  • Configura constantemente tempo de inatividade flutuante. O tempo de inatividade flutuante é iniciado na próxima vez que o host for visto "DOWN" e executado pela duração especificada. Você poderia fazer isso com um cronjob emitindo o "SCHEDULE_HOST_DOWNTIME" por 2 horas flutuantes a cada duas horas. (Veja NAGIOS Developer - Comandos Externos ).
  • Programe o tempo de inatividade do host e de todos os serviços (veja o link acima).

  • O que você também pode fazer é colocar dependências de serviço para usar. Se você verificar o host via PING, adicione um serviço PING e um service_dependency para todos os outros serviços nesse host para depender do PING e, em seguida, desligue as notificações de ping. Isso vai parecer algo como:

define servicedependency {
dependent_host_name flaky_biscuit
dependent_service_description service1, service2, service3, service4, service5 host_name flaky_biscuit
service_description PING
execution_failure_criteria w,u,c
notification_failure_criteria w,u,c
}

O que isto significa, em essência, é que quando o PING está em alerta, desconhecido ou crítico, o PING notificará, nenhum dos serviços dependentes o fará. (E mais uma vez, desligue as notificações do PING!) Além disso, quando o PING está em estado de aviso, desconhecido ou crítico, os serviços dependentes nem sequer serão executados .

Eu não posso falar por NagStaMon, mas o plugin Firefox NAGIOS tem preferências que essencialmente dizem "ignorar serviços reconhecidos", significando que se você reconhecer ou agendar um serviço em tempo de inatividade, tiver notificações desativadas ou qualquer outra modificação em um serviço , ele não será renderizado como "aviso / crítico" na barra de status, mesmo que esteja nesse estado. Eu não sei o que o NagStaMon faz ou não tem dessa maneira.

    
por 18.12.2010 / 21:07
0

Aqui está a minha ideia de usar verificações passivas para isso, mas preciso declarar as suposições primeiro. Que você não deseja monitorar o tempo de atividade do host. Apenas quando o host está ativo, os serviços apropriados estão sendo executados.

Em seus hosts aleatórios de tempo de atividade, você pode executar algo como o seguinte link do script de shell. Este exemplo monitoraria o SMTP, mas é bastante simples. Você precisará executar essa execução como um usuário que possa fazer ssh em seu host nagios usando um par de chaves, e garantir que isso seja deixado como um exercício para o leitor (ou postar uma nova pergunta). Eu não testei isso, mas deveria funcionar. A documentação da verificação passiva ( link ) deve ser útil.

Isso não automatiza o provisionamento dos hosts em seu servidor Nagios, mas você pode usar algo como fantoche para isso.

    
por 19.12.2010 / 01:17
0

Para alertar você deve verificar o Nagios BPI (Business Process Intelegence). A Nagios Enterprises acaba de lançar este novo addon. vá para o ponto Nagios e veja o roteiro.

    
por 20.12.2010 / 17:45

Tags