Entendendo o SNMP em um ambiente SIEM e monitorando o Zevenet Appliance

PUBLICADO EM 14 de janeiro de 2019

Uma introdução ao SNMP

SNMP ou Simple Network Management Protocol é um protocolo da camada de aplicação definido pelo IETF em que é atual emendar RFC 1157. SNMP basear sua representação de dados em um ASN.1 (protocolo de camada de apresentação), definida também pelo IETF no RFC 1065 as SMI (Estrutura e Identificação de Informações Gerenciais).

SNMP permite dois modos de trabalho, síncrono (ou polling) e assíncrono. O modo síncrono é o modo mais comum de usar SNMP, funciona enviando PDUs (Unidades de dados de protocolo) para dispositivos gerenciados que implementam SNMP na rede, esses PDU poderiam ser para recuperação de dados (GetRequest) que requer uma resposta do dispositivo (GetResponse) ou para definir um valor em um objeto específico (SetRequest).

SNMP em modo assíncrono funciona pelo uso de armadilhas. Armadilhas são alertas não solicitados PDUs enviados pelo dispositivo gerenciado para uma estação coletora de coletores centrais, esses coletores são o indicador de que um evento crítico ocorreu no dispositivo monitorado, por exemplo, superaquecimento ou uso excessivo de memória e são direcionados ao UDP porta 162.

MIB - Base de Informação de Gestão

Cada objeto que poderia ser gerenciado por SNMP são agrupados hierarquicamente e representados em um arquivo especial chamado Arquivos MIB, esses MIBs são descritores de grupos de objetos gerenciados organizados sob uma árvore de OIDs (Identificadores de Objeto) que identifica cada objeto de uma maneira única.

Podemos ver um exemplo de um conteúdo MIB na seguinte imagem:

Uma das mais comuns MIB arquivos é definido pelo IETF no MIB-II.

SNMP - arquitetura

O SNMP define os tipos 3 de entidades em sua arquitetura:

Estações de Gerenciamento de Rede: Execute aplicativos de gerenciamento para controlar e monitorar os elementos de rede.
Elementos de rede: Dispositivos como o Zevenet Load Balancer, que será monitorado pela estação de gerenciamento de rede.
Agentes: Software responsável por executar ordens enviadas pelas estações de gerenciamento de rede, como recuperar o valor de um OID específico.

Na figura a seguir, é mostrado um exemplo de uma arquitetura SNMP usual em uma rede:

Configurando o SNMP em aparelhos Zevenet

Aparelhos Zevenet vêm com um SNMP agente implementado nele permitindo o padrão Debian GNU / Linux OIDs para ser sondado de forma síncrona por uma estação de gerenciamento de rede para controlar o estado do balanceador de carga.

Para configurar o SNMP em dispositivos Zevenet, isso pode ser feito de maneira fácil através da GUI da Web da seguinte maneira:

1. Navegue até a GUI da Web do appliance e vá para a seção Sistema> Serviços Locais na barra lateral:

2. Ative a caixa de seleção SNMP e configure a interface a partir da qual as solicitações de entrada serão permitidas. É recomendável configurar aqui a interface de gerenciamento.

3. Podemos mudar a porta de escuta e o comunidade nome, observe que tal nome é necessário ao solicitar um OID e deve ser incluído no pedido.

4. O último campo é o endereço IP ou a sub-rede a partir da qual o serviço permitirá solicitações de entrada.

Com este serviço, a entrega de sua aplicação pode ser monitorada em uma plataforma SIEM centralizada, a fim de garantir o comportamento correto do tráfego.

Por favor, encontrar abaixo alguns úteis OIDs SNMP para monitorar adequadamente um balanceador de carga. Note que existem muitos diferentes OIDs para usar, por isso recomendamos a utilização de uma ferramenta como snmptranslate a fim de traduzi-los para um nome mais compreensível para os gerentes de rede.

OIDs SNMP para estatísticas de memória

Use o seguinte OIDs para Zevenet Appliances, a fim de obter diferentes estatísticas de memória:

memTotalSwap: Espaço de troca total configurado para o host em kB (. 1.3.6.1.4.1.2021.4.3.0)
memAvailSwap: Espaço de troca atualmente disponível em kB (. 1.3.6.1.4.1.2021.4.4.0)
memAvailSwap: Memória real instalada no host em kB (. 1.3.6.1.4.1.2021.4.5.0)
memAvailReal: Memória real disponível em kB (. 1.3.6.1.4.1.2021.4.6.0)
memTotalFree: Total de memória livre em kB (. 1.3.6.1.4.1.2021.4.11.0)
memShared: Total de memória real ou virtual alocada para uso como memória compartilhada em kB (. 1.3.6.1.4.1.2021.4.13.0)
memBuffer: Total de memória real ou virtual alocada para uso como buffer de memória em kB (. 1.3.6.1.4.1.2021.4.14.0)
memCached: Total de memória real ou virtual alocada para uso como memória cache em kB (. 1.3.6.1.4.1.2021.4.15.0)

OIDs SNMP para estatísticas de carga da CPU

Use o seguinte OIDs para Zevenet Appliances, a fim de obter os valores de carga da CPU:

1 carga de CPU minuto (. 1.3.6.1.4.1.2021.10.1.3.1)
5 carga de CPU minuto (. 1.3.6.1.4.1.2021.10.1.3.2)
15 carga de CPU minuto (. 1.3.6.1.4.1.2021.10.1.3.3)

OIDs SNMP para estatísticas da CPU

Use o seguinte OIDs para Zevenet Appliances, a fim de obter as estatísticas da CPU:

SsCpuSystem: porcentagens de tempo de nível de sistema de processamento da CPU do sistema. 1.3.6.1.4.1.2021.11.10.0)
ssCpuRawSystem: Cargas gastas no código no nível do sistema (. 1.3.6.1.4.1.2021.11.52.0)
ssCpuIdle: Porcentagem do tempo do processador em estado inativo (. 1.3.6.1.4.1.2021.11.11.0)
ssCpuRawIdle: Carrapatos gastos à toa por cpu (. 1.3.6.1.4.1.2021.11.53.0)

OIDs SNMP para estatísticas de interfaces de rede

Use o seguinte OIDs para Zevenet Appliances para obter as estatísticas das interfaces de rede:

ifNumber: Número de interfaces no sistema (1.3.6.1.2.1.2.1)
interfaces de: tabela para estatísticas de interfaces (1.3.6.1.2.1.2.2)

Esta OID corresponde com uma tabela no MIB2. Observe que as tabelas são diferentes em sua representação do que os objetos escalares. Imagine uma mesa com um OID xTable, com colunas Coli e índice i, para obter acesso à coluna Col1 e índice 1, devemos solicitar um snmpget para xTable.xEntry.Col1.1, Onde xEntry tem apenas um significado conceitual, também podemos obter todas as entradas de uma coluna Col1 com um snmpwalk para xTable.xEntry.Col1 ou obter a tabela completa com um snmpwalk ao seu OID (xTable.xEntry). Permite o que obtemos como colunas:

ifDescr: Interfaces nomes (1.3.6.1.2.1.2.2.1.2)
ifType: Tipo de interfaces, por exemplo, ethernet (1.3.6.1.2.1.2.2.1.3)
ifMtu: Unidade máxima de transferência (1.3.6.1.2.1.2.2.1.4)
ifSpeed: Largura de banda estimada ou nominal atual em b / s (1.3.6.1.2.1.2.2.1.5)
ifPhysAddress: menor endereço da camada de protocolo, por exemplo, endereço MAC (1.3.6.1.2.1.2.2.1.6)
ifOperStatus: Status atual (1.3.6.1.2.1.2.2.1.8)
ifInOctets: Número de octetos recebidos1.3.6.1.2.1.2.2.1.10)
ifInUcastPkts: Número de pacotes unicast de entrada (1.3.6.1.2.1.2.2.1.11)
ifInDiscards: Número de pacotes de entrada descartados (1.3.6.1.2.1.2.2.1.13)
ifInErrors: Número de pacotes de entrada com erros que os impedem de serem entregues (1.3.6.1.2.1.2.2.1.14)
ifOutOctets: Número de octetos transmitidos (1.3.6.1.2.1.2.2.1.16)
ifOutUcastPkts: Número de pacotes unicast transmitidos (1.3.6.1.2.1.2.2.1.17)
ifOutDiscards: Número de pacotes transmitidos descartados (1.3.6.1.2.1.2.2.1.19)
ifOutErrors: Número de pacotes de saída com erros que não puderam ser transmitidos (1.3.6.1.2.1.2.2.1.20)

Monitoramento SNMP de back-ends do balanceador de carga

Por outro lado, o SNMP é muito útil em um ponto de vista do balanceador de carga, pois pode ser usado para reunir métricas de back-ends e usá-las para alterar o comportamento do planejador ou para automatizar a ativação e a desativação de back-ends. Referir-se este link para obter mais informações sobre como usar uma verificação de guardião de farm personalizado com o SNMP.

Mais monitoramento de entrega de aplicativos

Há casos de uso em que é necessário obter valores de monitoramento específicos, como farms, back-ends ou estatísticas e estados de clustering. Para reunir esses valores específicos, siga Este artigo também pode ser feito por meio do REST api.

Mais recursos de monitoramento

Consulte os artigos sobre como monitorar os equipamentos Zevenet com Nagios ou Zabbix através dos seguintes links:

https://www.zevenet.com/knowledge-base/howtos/monitoring-zevenet-nagios/
https://www.zevenet.com/knowledge-base/howtos/monitoring-zevenet-zabbix/

Espero que você ache este artigo útil e que leve você ao próximo nível de uso SNMP monitorar Aparelhos Zevenet!

Referência

UCD-SNMP-MIB http://www.net-snmp.org/docs/mibs/UCD-SNMP-MIB.txt
RFC do protocolo SNMP: https://tools.ietf.org/html/rfc1157
RFC SIM: https://tools.ietf.org/html/rfc1065
net-snmp: http://www.net-snmp.org/wiki/
Wiki do Debian snmp: https://wiki.debian.org/SNMP
UCD-SNMP-MIB: http://www.net-snmp.org/docs/mibs/UCD-SNMP-MIB.txt

Compartilhar no:

Documentação sob os termos da Licença de Documentação Livre GNU.

Esse artigo foi útil?

Artigos Relacionados