terça-feira, 25 de novembro de 2014

Agentuino + Zabbix - parte 2 - implementação do Zabbix

Olá pessoal,

No último post vimos o uso do Agentuino que implementa uma biblioteca para tornar o Arduino um agente SNMP e como ele disponibiliza informações coletadas pelo Arduino através de SNMP, fazendo que agentes de monitoramento SNMP (Zabbix, Nagios, etc) possam ser utilizados para verificar estas informações e disponibilizá-los para visualização e monitoramento. No caso do nosso projeto de monitoramento de temperatura vamos usar o Zabbix para visualizar e monitorar a temperatura.
Hoje veremos como utilizar o Zabbix para monitoramento SNMP:

Zabbix:

Deve-se instalar um Zabbix em uma máquina física ou através de máquina virtual. Lembrando que o Zabbix é open-source e é praticamente uma distro Linux especializada em monitoramento. A instalação é bem simples.

Download:

http://www.zabbix.com/download.php

Uma vez instalado o Zabbix devemos acessá-lo para configurar o monitoramento do Arduino:


Entre com o usuário Admin e senha configurada para o acesso admin. Uma vez logado vá em Configurações, Templates e clique no botão Criar Template:



    Dê um nome para o template. No caso eu coloquei como SNMP Arduino. Clique em Salvar.


Em Configurações, Templates, selecione SNMP Arduino:



Clique em Itens:


Clique em Criar Item:
 

Preencha os campos:
 
- Nome: Nome do Item. Neste caso coloquei como Temperatura
- Tipo: Agente SNMPv1 (o Agentuino está implementado em SNMP v1).
- Chave: temp (é o campo disponibilizado pelo SNMP que contém a temperatura coletada).
- SNMP OID: é a OID que está armazenando a temperatura.
- Comunidade SNMP: public

Os demais campos pode deixar como estão. Dê um Salvar.


Agora vamos criar um gráfico para visualizarmos a temperatura. Clique em Gráficos:


Clique em Criar Gráfico:


Dê um nome para o Gráfico e clique em Adicionar (como mostra a figura):


Escolha o item Temperatura que foi criado anteriormente:


Clique em Salvar:


Clique na aba Visualizar:


Vamos criar o host agora. Vá em Configuração, Hosts e clique em Criar host:


Preencha os campos:

- Nome do host
- Nome de exibição
- Interfaces SNMP: coloque o endereço IP do Arduino.

Clique em Salvar.



Selecione a aba Templates e clique em Adicionar:


Selecione o template SNMP Arduino:


Clique em Salvar:


Clique em Macros  e preencha os campos:

- Macro: {$SNMP_COMMUNITY}
- Valor: public

Clique em Salvar


Observe que o host Arduino Sensor no ícone de Disponibilidade SNMP está em verde.


Vamos agora criar uma Tela de visualização. Vá em Configuração, Telas e clique em Criar tela:


Escolha um Nome para a tela e especifique o número de linhas e colunas. No caso é 1 x 1 pois é somente o gráfico que iremos exibir na tela.


Clique em Alterar:


Escolha como Recurso o Gráfico simples e clique no botão Selecionar do campo Parâmetro:


Nas caixas escolha o Grupo onde o host Arduino Sensor está e selecione o Host Arduino Sensor.
Selecione o item Temperatura:


Deixe os campos no padrão e clique em Salvar:


Para visualizar a tela vá em Monitoramento, Telas e escolha a tela que você criou (Arduino Temperatura):


Com isso configuramos o Zabbix para mostrar a temperatura de forma gráfica. No próximo post vamos configurar Triggers (gatilhos) para avisar via e-mail ou SMS se a temperatura está acima do esperado.

Até a próxima!

Um comentário:

  1. Boa tarde.
    Estou fazendo meu tcc, onde usarei o arduino para ler dados de um pluviometro com que é acionado por reed switch, onde o zabbix receberia estes dados e enviaria o s devidos alertas. A minha dúvida é em relação ao Arduino, como é programado para fazer isto e como usar a biblioteca Agentuino

    ResponderExcluir