Claro que o Habr não é exatamente o lugar mais romântico, mas não podemos deixar de confessar nosso amor pelo Zabbix. Em muitos dos nossos projetos de monitoramento, utilizamos o Zabbix e valorizamos muito a simplicidade e a lógica deste sistema. Sim, não há a modinha de clusters de eventos e aprendizado de máquina (e alguns outros recursos disponíveis de forma nativa em sistemas comerciais), mas o que existe já é definitivamente suficiente para garantir tranquilidade em relação a sistemas produtivos.

Neste artigo, falaremos sobre algumas ferramentas para expandir as funcionalidades do Zabbix: CMDB baseada na solução gratuita iTop e um mapa de objetos baseado no OpenStreetMap (OSM). No final do artigo, você encontrará um link para o repositório com o código da parte frontal para OSM.
Vamos analisar o conceito geral usando o exemplo de um projeto hipotético para monitoramento de uma rede de farmácias. Na captura de tela abaixo está nosso stand de demonstração, mas usamos um conceito semelhante em ambientes produtivos. A transição entre objetos pode ser feita tanto para um mapa aninhado quanto para o cartão do objeto na CMDB.

Cada farmácia é um conjunto do seguinte equipamento: estação de trabalho (ou várias estações de trabalho), roteador, câmeras IP, impressora e outros periféricos. Nas estações de trabalho, os agentes Zabbix estão instalados. A verificação do equipamento periférico é feita através de ping a partir da estação de trabalho. Da mesma forma, no mapa de objetos, a partir da impressora, você pode acessar seu cartão na CMDB e conferir os dados de inventário: modelo, data de entrega, responsável, etc. Assim é como parece um mapa aninhado.

Aqui é necessário fazer um pequeno desvio. Você pode se perguntar: por que não usar o inventário interno do Zabbix? Em alguns casos, ele pode ser suficiente, mas recomendamos aos clientes que usem uma CMDB externa ( não é a única opção, mas este sistema é bastante funcional em sua gratuidade). É um repositório centralizado conveniente, onde é possível gerar relatórios e monitorar a atualidade dos dados (na verdade, não é só isso).

Na captura de tela abaixo está um exemplo de modelo para preencher o inventário do Zabbix a partir do iTop. Todos esses dados podem ser, obviamente, utilizados posteriormente no texto das notificações, permitindo que você tenha informações atualizadas imediatamente em caso de uma situação de emergência.

Na captura de tela abaixo — o cartão de localização. Aqui podemos ver a lista de todo o equipamento de TI que está na farmácia. Na aba Histórico podemos acompanhar as mudanças na composição do equipamento.

É possível acessar o cartão de qualquer objeto, verificar quais dispositivos de rede estão conectados, encontrar as informações de contato do engenheiro responsável, saber quando o cartucho de tinta foi trocado pela última vez, etc.

Sobre nossa abordagem geral para a integração do Zabbix com o iTop.
Agora vamos passar para o serviço de mapeamento. Consideramos que é uma ferramenta conveniente para visualizar o status de objetos distribuídos na tela de uma grande poltrona de couro.

Ao clicar no marcador de emergência, aparece uma dica de ferramenta. A partir dela, é possível acessar o cartão do objeto no CMDB ou no Zabbix. Ao aproximar ou afastar, os marcadores se agrupam em clusters com a cor do status mais crítico.
O mapa geográfico é implementado com o uso da biblioteca js e . A cada marcador são adicionados eventos do sistema de monitoramento e um link para o objeto correspondente no CMDB. O status dos clusters é determinado pelo evento mais crítico dos marcadores subordinados. Se necessário, é possível integrar o mapa com qualquer sistema de monitoramento com API aberta.
Você pode ver o código da parte frontal em . Contribuições são bem-vindas.
Se você está interessado em nossa abordagem, em você pode solicitar uma demonstração. Vamos contar mais e mostrar.
Fonte: habr.com
