Pular para o conteúdo principal

Monitorando sinal rx-power gbic Mikrotik via Zabbix

Ambiente utilizado foi maquina Debian 8 Jessie + Zabbix Server 3.2.7. Após várias tentativas de conseguir essa monitoração por snmp e não funcionar (não encontrei a OID ou não existe ela rsrs), comecei a procurar uma forma de fazê-lo via ssh, e acabou dando certo.

Criei um usuário no Mikrotik(CRS212) com permissão para leitura:
Exemplo: 
Usuário – zabbix 
Senha – zabbix

Acesse o terminal do Debian Zabbix:
Digite: apt install sshpass
Será instalado esse pacote para que possamos enviar a senha junto com o comando no Linux para o Mikrotik.

Agora teste a conexão via ssh com o Mikrotik
ssh usuariomikrotik@ipdomikrotik
será feita uma pergunta:
Are you sure you want to continue connecting (yes/no)?
Responda YES

Pronto, já podemos enviar o comando direto do Debian Zabbix para o Mikrotik.
sshpass -p senhausuariomikrotik ssh usuariomikrotik@ipmikrotik interface ethernet monitor number=0  once | grep rx-power | sed 's/dBm//g' | awk '{print $2}'

Explicando o comando:

sshpass – permite enviar a senha junto com todo o comando, para não ser necessário digita-la posteriormente.

ssh – para conexão Linux ao Mikrotik

Agora abaixo os comandos que serão utilizados para pegar a informação no terminal do Mikrotik

interface – comando para entrar no diretório interface do mikrotik

ethernet – para acesso ao diretório da portas do equipamento

monitor – visualização de detalhes das portas ou de uma especifica

number – informar a porta especifica que você procura a informação x, dentro do terminal mikrotik digite “interface ethernet print” ele vai listar o número de cada interface, no meu exemplo utilizei o “0” que é referente a porta sfp1.

once – mostrar apenas uma vez, devido o valor rx-power ser dinâmico eu utilizo o onde para me retornar a informação apenas uma vez. 


Até aqui o comando lhe passará a seguinte informação (imagem abaixo), note que é bastante coisa, mas só preciso nesse momento do rx-power. Isso é o que o restante do comando vai fazer, que é tratar a saída do comando somente com o que preciso.

Obs: não entrarei em detalhes sobre cada comando, apenas o que cada um está tratando no exemplo.


| grep rx-power | sed 's/dBm//g' | awk '{print $2}'

grep – mostrará a linha onde tem a string rx-power

sed – substitui “dBm” por vazio

awk – vai mostrar apenas o segundo campo da linha onde fica o valor “-10.936”


Nesse momento temos a informação de forma totalmente manual, agora vamos configurar o Agente Zabbix para utilizar o UserParameter e realizar o comando.
Edite o arquivo /etc/zabbix/zabbix_agentd.conf, procure por UserParameter=0
Ele tem a seguinte sintaxe  UserParameter=<key>,<command>
key – nome que você vai dar ao parâmetro, pode ser qualquer um.
Seguido do comando que acabamos de testar ficando dessa forma:

UserParameter=rxpower,sshpass -p senhausuariomikrotik ssh usuariomikrotik@ipmikrotik interface ethernet monitor number=0  once | grep rx-power | sed 's/dBm//g' | awk '{print $2}'


salve e saia da edição.

Reinicie o serviço do agente Zabbix

/etc/init.d/zabbix-agent restart

Utilizaremos o comando zabbix_get para testar o UserParameter que acabamos de configurar.

zabbix_get -s 127.0.0.1 -k rxpower

Explicando o comando:
zabbix_get - O Zabbix Get é um utilitário de linha de comando que pode ser utilizado para se comunicar com o agente de monitoração do Zabbix e requisitar um dado do agente.
Parâmetro –s, especifica o DNS ou IP do host a ser consultado.
Parametro –k, especifica a chave de item que se deseja o valor.

Nesse ponto acabei encontrando o seguinte problema, ao executar o zabbix_get:

Could not create directory ‘/var/lib/zabbix//.ssh’
Host key verification failed.

E não me retornava o valor esperado, o primeiro passo foi criar o arquivo .ssh na pasta /var/lib/zabbix , apenas criei e deixei lá vazio.
Depois editei o arquivo /etc/ssh/sshd_config e adicionei as linhas

AllowUsers root
AllowUsers zabbix

Salve e saia do arquivo e reinicie o serviço ssh.

 /etc/init.d/ssh restart

Rodei o zabbix_get novamente e funcionou.

Criação do item no Zabbix
Acesse o Zabbix na interface Web e crie um host com uma interface do agente com 127.0.0.1
Vá em itens > criar item


Pronto, monitoramento sendo realizado ok.





Postagens mais visitadas deste blog

Monitoração de status ONU Fiberhome com Zabbix

Cenário utilizado foi um Debian 8 com Zabbix 3.2 e Banco Mysql, esse tutorial exige que você já tenha familiaridade com comandos snmp para coleta de informações de seus dispositivos e criação de itens e triggers no Zabbix, primeiro passo é garantir que o servidor Zabbix tenha acesso snmp a OLT Fiberhome e segundo obter o arquivo MIB  e coloca-lo no /usr/share/snmp/mibs do Zabbix-Server. Teste a comunicação snmp entre servidor e OLT, acesse o terminal do Zabbix-Server. Digite: snmpwalk -v2c -c [comunidade] [ip-da-olt] terá uma saída semelhante a imagem: Pronto, a comunicação está funcionando. Agora podemos buscar por informações especificas sobre a OLT nesse link  podemos encontrar vários parâmetros para utilizar junto ao comando snmpwalk, no nosso exemplo utilizaremos apenas dois, o "authOnuListMac" vai listar todas as Onu's autorizadas e seus respectivos Mac's. Digite no terminal Zabbix: snmpwalk -v2c -c [comunidade]  [ip-da-olt] authOnuListMa

Monitoração de quantidade de interfaces PPPoE no Mikrotik via Zabbix-3-2.

Nesse tutorial vou considerar que já tenha instalado o seu Zabbix o pacote " snmp-mibs-downloader " e a mib " MIKROTIK-MIB.txt " no caminho /usr/share/snmp/mibs. Apos conferir isso,  já podemos realizar o teste no concentrador Mikrotik. Configure o protocolo snmp no Mikrotik, Acesse sua RouterBoard e faça o caminho indicado na imagem: Irá abrir essa janela abaixo, onde habilitara o protocolo e podera fazer mudança sobre a versão e a comunidade(padrão "public") Aplique as modificações, o Mikrotik já está configurado. Agora está pronto para realizarmos os teste no terminal do Zabbix. Sintaxe do comando SNMP. snmpwalk -v[numero da versão] -c[comunidade] IP-MIKROTIK   Exemplo: snmpwalk -v1 -c public 192.168.88.1 Certifique-se de que seu servidor Zabbix tem comunicação com o Mikrotik, ao realizar o comando acima ele irá listar varias informações de seu equipamento como na imagem abaixo, lembrando de alterar os dados do exemp