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 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

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

ATUALIZAÇÃO ZABBIX 6.0 PARA 6.2

Sistema Operacional utilizado - Debian 11  Recomendo fazer o backup dos arquivos de configurações e banco, Pare o serviços do zabbix server: # systemctl stop zabbix-server Crie diretórios para arquivos de backup: # mkdir -p /opt/zabbix_backup/bin_files # mkdir -p /opt/zabbix_backup/conf_files # mkdir -p /opt/zabbix_backup/doc_files # mkdir -p /opt/zabbix_backup/web_files # mkdir -p /opt/zabbix_backup/db_files Backup de arquivos binários, doc e conf do Zabbix: # cp -rp /etc/zabbix/zabbix_server.conf /opt/zabbix_backup/conf_files # cp -rp /usr/sbin/zabbix_server /opt/zabbix_backup/bin_files # cp -rp /usr/share/doc/zabbix-* /opt/zabbix_backup/doc_files # cp -rp /etc/apache2/conf-enabled/zabbix.conf /opt/zabbix_backup/conf_files 2>/dev/null # cp -rp /etc/zabbix/web/zabbix.conf.php /opt/zabbix_backup/conf_files 2>/dev/null Backup de arquivos da web Zabbix (frontend) # cp -rp /usr/share/zabbix/ /opt/zabbix_backup/web_files Backup do banco de dados Zabbix Este comando fará um backup com