Segue abaixo um esquema para notificação de usuários quando algum problema ocorre:
Geralmente temos a necessidade de notificar de forma individualizada, mas o acesso às informações pode ser feita por todos, então criamos da seguinte maneira:
No arquivo contacts foi criado:
define contact{
contact_name Administrador
service_notification_commands notify-by-email
host_notification_commands host-notify-by-email
email [EMAIL PROTECTED]
}
define contact{
contact_name usuario1
service_notification_commands notify-null
host_notification_commands notify-null
}
define contact{
contact_name usuario2
service_notification_commands notify-null
host_notification_commands notify-null
}
define contact{
contact_name grupo-de-notificao-cpq-1
service_notification_commands notify-by-email
host_notification_commands host-notify-by-email
email [EMAIL PROTECTED]
}
define contact{
contact_name grupo-de-notificao-cpq-2
service_notification_commands notify-by-email
host_notification_commands host-notify-by-email
email [EMAIL PROTECTED]
}
No arquivo contactgroups foi criado:
define contactgroup{
contactgroup_name grupo-de-acesso
alias Profissionais que tem acesso
members administrador, usuario1, usuario2
}
define contactgroup{
contactgroup_name grupo-de-notificacao-cpd-1
alias Profissionais que sao notificados
members administrador, grupo-de-notificacao-cpd-1
}
define contactgroup{
contactgroup_name grupo-de-notificacao-cpd-2
alias Profissionais que sao notificados
members administrador, grupo-de-notificacao-cpd-2
}
No arquivo hosts foi criado:
define host{
use default
host_name server-cpd-1
alias servidor Linux CPD 1
address 10.10.10.1
}
define host{
use default
host_name server-cpd-2
alias servidor Linux CPD 2
address 10.10.20.1
}
No arquivo services foi criado:
define service{
use default
host_name server-cpd-1
service_description Porta LAN
check_command check_ifoperstatus!public!1
contact_groups administrador, grupo-de-notificacao-cpd-1, grupo-de-acesso
}
define service{
use default
host_name server-cpd-1
service_description Porta LAN
check_command check_ifoperstatus!public!1
contact_groups administrador, grupo-de-notificacao-cpd-2, grupo-de-acesso
}
O nagios manda mensagem para todos que são contatos do serviço, então na definição do usuário eu simplesmente criei o comando notify-null, o acesso é garantido pois ele faz parte do grupo de acesso, mas não recebe nada porque o comando manda a notificação para o lixo. Quem tem que receber notificação pertence ao grupo de notificação, mas recebem a mensagem pelo e-mail de grupo da empresa, evitando inclusive que o nagios tenha que enviar muitas mensagens, essa tarefa passa para o servidor de correio.
2 comentários:
Fala rapaz!
Faltou só um esquema, colocar no post a tua definição default do host, já que em cada host ele chama o "default".
Você criou alguma lista com o mailman? Algum dia eu queria criar uma lista de discussão com o mailman e colocar os usuários nessa lista de discussão, enviado por broadcast.
Eu to brincando com o Hyperic, tem uma versão free e parece ser bem bacana.
Olá Gabriel, tudo bem cara? Podes mandar a sua correção para o artigo para que fique registrado. Abração.
Postar um comentário