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:
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!
Boa tarde.
ResponderExcluirEstou 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