+ Responder ao Tópico



  1. #1

    Padrão 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.

    Clique na imagem para uma versão maior

Nome:	         mikrotik01.png
Visualizações:	203
Tamanho: 	14,6 KB
ID:      	67580

    | 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

    Clique na imagem para uma versão maior

Nome:	         mikrotik02.png
Visualizações:	321
Tamanho: 	11,9 KB
ID:      	67581

    Pronto, monitoramento sendo realizado ok.


  2. #2

    Padrão Re: Monitorando sinal rx-power gbic Mikrotik via Zabbix

    bom material explicativo, mas porque vc não criou dentro do host o itens com a opção SSH? seria mais fácil e teriam o mesmo resultado. era só colar o comando e passar o usuário e senha.

  3. #3

    Padrão Re: Monitorando sinal rx-power gbic Mikrotik via Zabbix

    Não tinha como tratar a saída do comando interface ethernet monitor, o terminal mikrotik não tem os programas grep cut awk sed, por isso tive que fazer dessa forma.

  4. #4

    Padrão Re: Monitorando sinal rx-power gbic Mikrotik via Zabbix

    dentro do zabbix quando vc cria o. host vc pode criar os itens a ser monitorado. lá vc coloca o Scripts SSH . não precisaria mexer no agente

  5. #5

    Padrão Re: Monitorando sinal rx-power gbic Mikrotik via Zabbix

    Você já conseguiu pegar essa informação do exemplo do tutorial(rxpower gbic mikrotik) da forma como descreveu?

  6. #6

    Padrão Re: Monitorando sinal rx-power gbic Mikrotik via Zabbix

    eu pego os dados do peers da sessão do BGP, o total de rotas ativas do Full route e o total de clientes por VLAN. e nunca tive problema.