Requisitos de hardware para monitorar uma rede maior (3000 dispositivos)

3

Atualmente, estou avaliando o software de monitoramento para (pelos meus padrões) uma rede maior que deverá crescer para cerca de 3.000 dispositivos. Eu estou encontrando dados sobre os requisitos de hardware para escalar difícil de encontrar. (Edit: os dispositivos são receptores de satélite monitorados pelo SNMP, portanto, exigem um monitor sem agente. Nossa principal preocupação é identificar dispositivos com falha e não precisamos de muita análise.)

Os dispositivos 3000 terão cerca de 40 pontos de dados cada um, conectados em um ciclo de 5 a 10 minutos. Em um intervalo de 10 minutos, são 12.000 pontos por minuto. Isso fornece dois tipos de carga: a carga da CPU para o aplicativo de pesquisa e, mais importante, a carga de gravação em disco para armazenar esses pontos de dados.

Eu olhei para o Solarwinds Orion, Zenoss, Zabbix e OpenNMS. Temos experiência do Zenoss e do Orion em redes menores de algumas centenas de dispositivos. Minhas impressões iniciais são:

  • O Zenoss não possui uma implementação RRD muito eficiente, mas nos permite dimensionar horizontalmente adicionando coletores, que armazenam dados RRD localmente.
  • O Orion nos permite adicionar mecanismos de pesquisa, mas requer um servidor SQL compartilhado para os dados de desempenho.
  • O Zabbix afirma escalar para este nível, mas não encontrei nenhuma orientação útil. Como usa um banco de dados para dados de desempenho, o ajuste do banco de dados é fundamental.
  • O OpenNMS se parece com o líder de desempenho, devido a uma implementação de RRD otimizada e suporte para agrupamento.

Alguém tem experiência ou dados de desempenho para monitorar essa escala de rede?

    
por Adrian Cox 18.01.2012 / 13:54

4 respostas

3

OpenNMS pode fazer o trabalho.

Para esse tipo de ambiente, a chave será encadeamentos de CPU e algo que pode manipular gravações de disco de baixa latência. Eu usaria um servidor autônomo (versus uma VM), forneceria 12 ou mais núcleos e planejaria um armazenamento de conexão direta que tivesse 6 ou mais eixos ou que pudesse aproveitar SSDs para os diretórios OpenNMS RRD. O OpenNMS também pode ser ajustado nas frentes de coleta e registro de dados para torná-lo mais eficiente. Entrar em contato com a equipe de serviços profissionais para ajudar na instalação seria uma boa opção.

    
por 18.01.2012 / 14:38
2

Até onde eu sei, o Zabbix tem instalações com 10k + dispositivos. Talvez você precise distribuir a carga, ou seja, colocando o servidor de banco de dados (se sua solução precisar de um) para outra máquina. Você também pode querer olhar para Zabbix Proxy.

    
por 18.01.2012 / 13:57
2

Tenho experiência em monitorar esse tamanho de rede. Além disso, estou sempre avaliando novas possibilidades quando se trata de monitorar soluções.

Dito isso, estou mais em uma perspectiva da Microsoft do que você, e nem tenho certeza se consideraria algumas das soluções mencionadas em soluções de nível corporativo, mas talvez ainda possa ajudar .

Quase todos os sistemas de monitoramento consistem em alguns componentes comuns - o banco de dados e os servidores de gerenciamento. (NetIQ, Nimsoft, Quest, VMware, SCOM, só para citar alguns.)

A quantidade de hardware que você vai precisar depende muito de como você planeja fazer o seu monitoramento - especificamente - quantos pontos de dados você deseja capturar. Para as coisas mais básicas, como utilização da CPU, memória, espaço de armazenamento, etc., seus requisitos serão menores. Se você quiser monitorar uma enorme quantidade de métricas de aplicativos, como quantas solicitações por segundo seus hosts estão recebendo, verificar arquivos de log de palavras-chave etc., bem, a quantidade de dados coletados pelo sistema de monitoramento será muito maior e os requisitos de hardware vão aumentar.

Outras coisas a serem consideradas são fatores como: você deseja carregar agentes em cada máquina (normalmente permite informações mais detalhadas) ou você quer tentar ficar completamente sem agente? Você está monitorando todas as máquinas físicas, todas as VMs ou uma mistura das duas? Como sobre equipamentos de rede, você está monitorando isso também? Em grandes redes heterogêneas como essa, o que você geralmente acaba sendo várias soluções em execução para cobrir todas as suas bases. Se você tem um monte de VMs para monitorar, certas soluções como VMware VC Ops e Quest vFoglight obtêm informações do vCenter (ou de vários vCenters), o que significa que muitas das métricas são mais precisas do que se fossem medidas na própria VM. e também significa que você não precisa carregar um agente na VM. Você também pode normalmente compactar mais máquinas em uma solução de monitoramento somente de VM. O VMware VC Ops tem clientes hoje que executam 10k VMs em uma única instância de VC Ops.

Dito isso, na minha opinião pessoal, o VC Ops é quase como um mecanismo de análise muito sofisticado do que uma solução de monitoramento real. É meio bacana ver isso dizer "com base no seu crescimento atual, o host ESXi [x] no Datacenter [y] atingirá a capacidade em 30 dias".

Tudo bem, então, em geral, existem várias maneiras diferentes de projetar um banco de dados, mas lembre-se de que você precisa de alta disponibilidade. Você não pode trabalhar em uma rede tão grande e assumir a propriedade de uma solução de monitoramento que escurecerá completamente se um dos nós do seu banco de dados ficar inativo. Portanto, não compre 1 servidor HP Proliant. Mas dois. Ou três. Agrupe-os. Planeje para HA. Então, preço que fora - US $ 30 mil?

Em segundo lugar, muitas dessas soluções terão um tipo de função de "servidor de gerenciamento" em sua infraestrutura. Na minha experiência, isso geralmente pode ser virtualizado muito bem. Eles agem como intermediários entre os agentes e o repositório central, equilibrando a carga e garantindo que todos os dados provenientes dos milhares de agentes sejam inseridos no repositório de forma ordenada. Você verá que nesses tipos de soluções, você precisa ter alguns servidores de gerenciamento para HA, mas não deseja muitos, pois cada servidor de gerenciamento adicional causará contenção e bloqueios, já que todos eles apenas inserem dados no repositório. .

Portanto, planeje um ou dois hosts de virtualização para eles. Outros $ 15k talvez? Isso é apenas um parque de bailes. Eu não sei se a sua empresa vai construir isso em novos equipamentos Cisco UCS, ou Dell PowerEdges que você compra na Craigslist.

A maioria das soluções de nível corporativo é configurável o suficiente para aproveitar o SQL Server ou o MySQL ou até mesmo o Postgres. No entanto, muito poucos deles são totalmente incríveis em tudo, e o que eu costumo ver uma empresa fazendo é executar duas ou mais soluções de monitoramento em paralelo.

edit: também não se esqueça de planejar a distribuição geográfica. Eu tenho servidores que residem fisicamente em Amsterdã e estão sendo monitorados em Miami. É possível, mas eu não estou orgulhoso de admitir isso.

edição # 2: Também é importante notar que, enquanto algumas empresas são muito escrupulosas em gastar dinheiro em software - isso depende apenas da cultura da empresa - uma boa companhia perceberá o valor do suporte corporativo. Apenas algo para ter em mente.

    
por 18.01.2012 / 15:15
1

Vindo de um ambiente universitário onde fizemos monitoramento de disponibilidade (Ok / Warning / Critical com alertas) e monitoramento de desempenho (gráficos, RRD) de MUITOS dispositivos de rede (principalmente Cisco, mas verificando muitas métricas) ...

Eu acho que isso está sendo superanalisado. Primeiramente, identifique o conjunto mínimo de métricas que você precisa, qual resolução e por quanto tempo precisa armazená-las. Mesmo que você realmente precise pesquisar cada um dos 3.000 dispositivos a cada 5 a 10 minutos, por 40 métricas, você precisa reter os dados gráficos RRD neles, ou você pode simplesmente usar algo como o Nagios para alertar se uma métrica está fora? um limite predefinido?

Além disso, quão confiável isso precisa ser?

Veja como eu faria isso, tendo em mente que meu ponto de vista padrão é o custo mínimo, código aberto e a suposição de que quem quer que esteja implementando isso pode fazer alguma codificação:

  • Identifique algumas soluções possíveis (Nagios / Icinga? OpenNMS? Cacti ou Cricket ou mrtg?) que tenham uma interface um pouco flexível.
  • Obtenha 10 ou 20 servidores 1U baratos e mínimos que podem suportar 5% ou 10% da carga total. Invente um algoritmo para distribuir a verificação / pesquisa de seus 3.000 dispositivos entre esses 10 ou 20 hosts.
  • Se você precisar apenas de alerta, cada host pode viver em isolamento. Provavelmente seria bom ter uma caixa Nagios para monitorar esses 10-20 hosts, apenas para garantir que eles estejam funcionando e coletando dados.
  • Se você precisa de gráficos / tendências com uma interface comum, você precisará fazer algum trabalho na web (PHP?), mas você deve ser capaz de reunir uma interface que liga gráficos / dados / etc. do nó de pesquisa apropriado.
por 30.01.2012 / 22:21