Monit.

Monitorando Serviços com SNMP

Escrito por Douglas Baiocco. Publicado em Nagios/ZABBIX.

O SNMP (do inglês Simple Network Management Protocol - Protocolo Simples de Gerência de Rede) é um protocolo para gerenciamento de ativos de rede. Com o SNMP é possível monitorar diversos fatores de equipamentos de rede, como portas desligadas, nível de tráfego, estado de conexões, entre outras.

O FAN Nagios possui todas as ferramentas necessárias ao bom uso dos recursos do SNMP, que serão descritos neste documento da forma mais prática possível.

Para informações mais detalhadas a respeito do SNMP, recomendo a página SNMP (inglês).

 

O SNMP trabalha com uma arquitetura onde temos o serviço SNMP rodando em uma máquina ou equipamento (agente) e softwares que farão a leitura das informações (gerentes).

O monitoramento de servidores Windows ou Linux é facilitado pelos plugins NSCLIENT++ e NRPE, uma vez que facilita diversas atividades. Em casos de equipamentos de rede, como impressoras, switchs ou roteadores, a instalação de um plugin é impraticável. Nesses casos o SNMP é muito útil, já que ele disponibiliza uma série de variáveis para o acompanhamento do estado geral do dispositivo.

Um dos usos propostos ao SNMP é o monitoramento de impressoras de rede. Vamos a um cenário comum em muitas empresas:

As impressoras de rede, em ambientes corporativos, possuem o que chamamos de suprimentos, que nada mais são do que os toners, cilindros e demais peças que devem ser substituídas de tempo em tempo. Em muitos casos, a empresa realiza a contratação de serviços de outras empresas especializadas em gestão de impressão, alugando equipamentos e gerenciando o parque de máquinas. Em muitos momentos, ao esgotar o toner, por exemplo, a impressora pára de imprimir e exibe um aviso de erro. O usuário precisa entrar em contato com a equipe de suporte e esta, trocar o suprimento.

Um experimento interessante pode ser feito utilizando o FAN Nagios para monitorar o estado dos suprimentos da impressora. Imagine a situação melhorada: o usuário não solicita a troca do toner, mas a troca acontece mesmo assim, antecipando o erro.

Os pré-requisitos para esta situação são:

  • Um servidor com FAN Nagios configurado e funcionando
  • Uma impressora de rede com suporte a SNMP
  • Paciência para encontrar os dados necessários

Primeiramente, precisamos verificar se o SNMP está disponível na impressora. Para isso, acesse o site de configuração da impressora e verifique nos menus. Esta parte varia de impressora para impressora, portanto, este ponto deverá ficar por sua conta, já que esta é uma tarefa ingrata. Nem todo fabricante utiliza nomenclatura padrão para estas informações.

Após a verificação do SNMP habilitado, vamos tentar identificar quais valores pertencem aos suprimentos que desejamos monitorar. Para facilitar este processo, utilize a ferramenta de linha de comando netsnmp (http://sourceforge.net/projects/net-snmp/). Instale este utilitário no seu pc com windows e siga os passos adiante:

 

Observação: o FAN Nagios esta pronto para trabalhar com MIBs (arquivo com os componentes do SNMP para facilitar este processo) Neste nosso tutorial, não vamos utilizar MIBs, mas sims descobrir o valor do SNMP na raça.

 

Para listar os objetos do SNMP, acesse o prompt de comando e digite (após instalar o netsnmp)

snmpwalk -c public -v1 IP_DO_DISPOSITIVO

image001

 

Note a quantidade de dados que são retornados pelo comando. Estes são todos os objetos SNMP disponíveis no equipamento. Precisaremos encontrar os valores referentes aos suprimentos, para isso, o comando fica inútil neste formato. Utilizaremos um redirecionador para montar um arquivo texto que contenha os objetos:

 

snmpwalk -c public -v1 IP_DO_DISPOSITIVO > c:\temp\snmp.txt

image003

 

Abra o arquivo que foi gerado em c:\temp\snmp.txt (fica a critério a forma de abrir. Se quiser uma dica, digite: notepad c:\temp\snmp.txt).

image005

 

Abra seu browser e entre na pagina de configuração da impressora (geralmente apontando para o endereço IP da mesma):

img35

 

 

Note que o nível de toner está em 100%. É este valor que iremos procurar no arquivo gerado pelo comando SNMPWALK:

img36

 

 

Anote o valor do objeto SNMP: mib-2.43.16.5.1.2.1.2

 

 

Uma pequena observação sobre este nosso caso:

 

Os valores podem não bater. A configuração do SNMP varia de máquina para máquina. O mais correto é obter o manual ou a listagem dos objetos para que este trabalho seja mais ágil e simples. Caso não seja possível, esta maneira é a mais trabalhosa, mas é valida para a grande maioria dos equipamentos.

Com esta impressora em especifico, não é simples assim de encontrar o nivel de toner. Infelizmente, sem uma tabela de conversão dos valores do SNMP, é bastante chato conseguir encontrar o valor correto. Uma técnica que eu constumo utilizar, principalmente com impressoras, é extrair um arquivo, guarda-lo e retirar novamente depois de alguns dias. Comparando os dois arquivos, eu tenho uma relação do que foi alterado nesse tempo e consigo identificar o valor correto. Não é a solução mais elegante mas pode ser aplicada em ultimo caso. Com Switchs de rede e demais equipamentos podemos fazer algo parecido: retiro o arquivo antes, desligo uma porta ou retiro um cabo e vejo o que foi alterado.

 

Para efeito do tutorial, deixei os prints como estão, mas o valor correto é mib-2.43.11.1.1.9.1.1

 

Com o objeto SNMP anotado, voltemos ao FAN Nagios, entramos no Centreon e vamos adicionar um novo serviço.

Clique em Configuration, dentro do Centreon e vá até Services e clique em Add para adicionar este novo serviço:

img37

 

Complete os dados da tela conforme a imagem:

 

Lembrando que, na opção Check Command, escolha check_snmp (este é o comando que será utilizado pelo Nagios para monitorar este serviço). Coloque o ID do SNMP anotado anteriormente e defina os valores para os alertas de estado. Neste nosso exemplo colocamos 50 para alerta e 10 para critico:

imgsnmp

 

Lembre-se de associar este Serviço a algum HOST. Este ponto é muito importante, já que um serviço não pode existir sem um host atribuido. Portanto, você precisa adicionar o host da impressora antes de executar este passo (desculpe avisar isso só agora :)

Clique na guia Relations para atribuir um host:

img39

 

Clique em SAVE e seu monitoramento por SNMP está pronto.

 

Por fim, é preciso apenas exportar as configurações do Centreon para o Nagios: dentro de Configuration, selecione a guia Monitoring Engines. Selecione os campos Move Export Files e Restart Nagios e clique no botão Export.

img33

 

 

Agora voce pode entrar no Nagios e verificar o status deste serviço recem cadastrado.

 

Relacionados