Monitorar Elastix via SNMP

Publicado por Eduardo Rebelo Lopes em 26/08/2013

[ Hits: 19.975 ]

 


Monitorar Elastix via SNMP



Para facilitar o monitoramento do servidor Elastix, vamos utilizar a feature default do Elastix, assim como de diversos outros sistemas, o SNMP - Simple Network Management Protocol.

Introdução

Assumindo que temos um servidor Elastix já instalado e com conhecimentos básicos de SNMP, vamos utilizar a integração dessas duas ferramentas para facilitar o monitoramento dos eventos no nosso servidor Asterisk.

Muitas vezes, é necessário saber em qual momento do dia temos o maior fluxo de chamadas, ou qual época do mês, ou ainda, qual época do ano. Assim, ter um monitoramento do nosso servidor pode ser bastante útil.

Vamos utilizar o SNMP para coleta dos dados e como front-end para visualização e manipulação, o Zabbix.

Maiores informações no Elastix, favor visitar o site:
E para maiores informações sobre o SNMP, acesse:
E ainda, para informações referentes ao Zabbix:
Assim, podemos dar início à configuração do ambiente.

Instalação SNMP

Tomando como base que nosso servidor é um CentOS, que para esse tutorial é a versão CentOS release 5.9 (Final), vamos instalar o "net-snmp" e o "net-snmp-utils":

# yum install net-snmp net-snmp-utils

Pronto, uma vez instalado os pacotes SNMP, vamos para a configuração.

Configurando o SNMP

O Elastix tem, por default, suporte a SNMP, só que essa opção não é habilitada, assim, temos o arquivo "/etc/asterisk/res_snmp.conf".

É necessário habilitar, descomentando as seguintes linhas:

subagent=yes
enable=yes

Assim, podemos agora criar as MIBS default do Asterisk, a própria Digium nos disponibiliza em seu site, crie em "/usr/share/snmp/mibs" as seguintes MIBS:
  • DIGIUM-MIB
  • ASTERISK-MIB

Disponível em:
Item: 2 Child Pages:
  • Asterisk MIB Definitions
  • Digium MIB Definitions

Pronto, agora com o SNMP instalado, as MIBS criadas, o Asterisk com SNMP habilitado, precisamos configurar o SNMP AgentX Protocol e o acesso do Asterisk SNMP subagent ao SNMP master daemon, conforme temos no site da Digium (link acima), em "/etc/snmp/snmpd.conf".

Vamos inserir:

# Enable AgentX support
master agentx

# Set permissions on AgentX socket and containing
# directory such that process in group 'asterisk'
# will be able to connect

agentXPerms  0660 0550 nobody asterisk

Dando permissão necessária para o agentX:

# chmod 755 /var/agentx

Pronto, tudo configurado. Devemos então, reiniciar alguns serviços.

Iniciar o SNMP:

# /etc/init.d/snmpd start

Reiniciar o Asterisk (comando default do Elastix):

# amportal restart

Obs.: não esquecer de colocar o SNMP para iniciar com o boot.

Testando e monitorando

Vamos testar se está tudo correto agora:

# snmpwalk -Oa -c public -v 2c localhost ASTERISK-MIB::asteriskVersion

A saída deve ser alguma coisa como:
ASTERISK-MIB::astVersionString.0 = STRING: 1.8.20.1
ASTERISK-MIB::astVersionTag.0 = Gauge32: 10820

Pronto, podemos criar um template com todos os itens que podemos monitorar, como por exemplo, a quantidade de ligações ativas:

# snmpwalk -On -c public -v 2c localhost ASTERISK-MIB::astConfigCallsActiv
The number of calls currently active on the Asterisk PBX

Exemplo abaixo de um template com alguns itens possíveis com SNMP:
Linux: Monitorar Elastix via SNMP
O Zabbix tem suporte a SNMP V1, V2 e V3, utilize a forma que for mais conveniente para você. Podemos então, criar os gráficos, triggers, etc.
Linux: Monitorar Elastix via SNMP


É isso aí!
Viva o Linux.

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Guia do comando rm

Usando o Ubuntu After Install - Ubuntu 14.04

Instalação do Ocomon - 2.0-RC6.1 - Helpdesk de suporte e controle de inventário

Como migrar da plataforma Windows para Linux Oracle RAC

VPN básica site-to-site com IPsec

  

Comentários
[1] Comentário enviado por Murgoth em 17/10/2013 - 19:42h

[[email protected] ~]# snmpwalk -On -c public -v 2c localhost ASTERISK-MIB::astConfigCallsActiv
Cannot find module (ASTERISK-MIB): At line 0 in (none)
ASTERISK-MIB::astConfigCallsActiv: Unknown Object Identifier
[[email protected] ~]#


O que poderia estar causando esse erro, estou usando a versão 1.8 do ASTERISK

[2] Comentário enviado por edul0pes em 18/10/2013 - 08:49h

Murgoth,

Geralmente esse erro é por não encontrar a MIB, você pode testar utilizando o OID, por exemplo:

A chave 'asteriskVersion', ela deve retornar a versão do Asterisk, conforme exemplificado abaixo:

snmpwalk -Oa -c public -v 2c localhost ASTERISK-MIB::asteriskVersion
ASTERISK-MIB::astVersionString.0 = STRING: 1.8.20.1
ASTERISK-MIB::astVersionTag.0 = Gauge32: 10820

Caso a saída seja similar a sua, tente utilizar pela OID:

snmpwalk -On -c public -v 2c localhost .1.3.6.1.4.1.22736.1.1.1.0
.1.3.6.1.4.1.22736.1.1.1.0 = STRING: "1.8.20.1"



[3] Comentário enviado por rennar em 21/11/2013 - 17:38h

meu snmp está funcionando certinho junto com o asterisk, porém meu zabbix mostra que está conectado porém não pega nenhuma informação para montar os gráficos. Alguém tem alguma sugestão?

[4] Comentário enviado por edul0pes em 22/11/2013 - 13:21h


[3] Comentário enviado por rennar em 21/11/2013 - 17:38h:

meu snmp está funcionando certinho junto com o asterisk, porém meu zabbix mostra que está conectado porém não pega nenhuma
informação para montar os gráficos. Alguém tem alguma sugestão?


Você criou os itens? os gráficos?
o Zabbix não cria nada 'sozinho'

Abs

[5] Comentário enviado por marcosotoni em 25/09/2014 - 11:08h

Eduardo, e se o ID do processo for DINAMICO, como podemos proceder esse monitoramento???

[6] Comentário enviado por edul0pes em 25/09/2014 - 17:56h


[5] Comentário enviado por marcosotoni em 25/09/2014 - 11:08h:

Eduardo, e se o ID do processo for DINAMICO, como podemos proceder esse monitoramento???


Boa tarde marcosotoni,

É possivel sim, de uma olhada no link https://www.zabbix.com/documentation/2.4/manual/config/items/itemtypes/snmp/dynamicindex
o Zabbix chama isso de Dynamic Index, é bem simples, qualquer coisa avisa ai.

Abs



Contribuir com comentário