Saudações,
Gostaria de pedir a opinião dos coletivos e ver os sistemas de monitoramento distribuído, o que você usa e o que sabe que pode marcar minhas caixas?
Os requisitos são bastante complexos;
Nenhum ponto único de falha. Realmente. Estou falando sério! Precisa ser capaz de tolerar falhas de nó único / múltiplo, 'mestre' e 'trabalhador' e você pode presumir que nenhum local de monitoramento ("site") possui vários nós ou está na mesma rede. Portanto, isso provavelmente exclui as técnicas tradicionais de HA, como DRBD ou Keepalive.
Lógica distribuída, eu gostaria de implantar mais de 5 nós em várias redes, em vários datacenters e em vários continentes. Quero que a visualização "Olho de pássaro" da minha rede e aplicativos da perspectiva de meus clientes, os pontos de bônus para a lógica de monitoramento não sejam afetados quando você tiver mais de 50 nós ou mais de 500 nós.
Precisa ser capaz de lidar com um número razoavelmente razoável de verificações de host / serviço, a Nagios, para valores estimados que pressupõem 1500-2500 hosts e 30 serviços por host. Seria muito bom se adicionar mais nós de monitoramento permitisse escalar de forma relativamente linear, talvez daqui a cinco anos eu esteja procurando monitorar 5000 hosts e 40 serviços por host! Adicionando a partir da minha nota acima sobre 'lógica distribuída', seria bom dizer:
- Em circunstâncias normais, essas verificações devem ser executadas em $ n ou n% dos nós de monitoramento.
- Se uma falha for detectada, execute verificações em outros $ n ou n% de nós, correlacione os resultados e use-os para decidir se os critérios foram atendidos para emitir um alerta.
Gráficos e recursos amigáveis de gerenciamento. Precisamos rastrear nossos SLAs e saber se nossos aplicativos 'altamente disponíveis' estão ativos 24x7 é algo útil. Idealmente, sua solução proposta deve gerar relatórios "prontos para uso" com o mínimo de esforço.
Deve ter uma API sólida ou sistema de plug-ins para o desenvolvimento de verificações personalizadas.
Precisa ser sensato sobre alertas. Não quero necessariamente saber (via SMS, às 03:00!) Que um nó de monitoramento calcula que meu roteador principal está inoperante. Eu não quero saber se um percentual definido deles concordam que alguma coisa divertida está acontecendo;) Basicamente o que eu estou falando aqui é "quorum" lógica, ou a aplicação de sanidade à loucura distribuídos!
Estou disposto a considerar as opções comerciais e de código aberto, embora eu prefira evitar softwares que custam milhões de libras :-) Também estou disposto a aceitar que talvez não exista nada lá fora que marque todas essas caixas, mas queria perguntar isso ao coletivo.
Ao pensar em monitorar nós e seu posicionamento, lembre-se de que muitos deles serão servidores dedicados em redes de ISPs aleatórias e, portanto, estão fora da minha esfera de controle. Soluções que dependem de feeds BGP e outras palhaçadas complexas de rede provavelmente não serão adequadas.
Devo também salientar que já avaliei, implantei ou usei / usei muito a maioria dos sabores de código aberto no passado, incluindo Nagios, Zabbix e amigos - eles não são realmente ferramentas ruins, mas são fracassos em geral " distribuído ", particularmente no que diz respeito à lógica discutida na minha pergunta e nos alertas 'inteligentes'.
É um prazer esclarecer todos os pontos necessários. Cheers rapazes e moças :-)