Utilizando o protocolo SNMP para gerenciar ativos de rede
no Zabbix
Douglas Rodrigues Almeida¹, Rafael Barasuol Rohden¹
¹Universidade de Cruz Alta (UNICRUZ)
[email protected], [email protected]
Resumo. O objetivo deste trabalho é apresentar um estudo sobre a utilização do protocolo SNMP na ferramenta de monitoramento de redes Zabbix para gerenciar equipamentos utilizados em conexões de internet via rádio. Foi escolhida essa ferramenta para estudo por ser de código aberto, além de possuir vários recursos como: interface de gerenciamento web; gráficos em tempo real; alertas por sms, email e outros; e principalmente por possuir suporte nativo ao protocolo SNMP (Simple Network Management Protocol ou Protocolo Simples de Gerenciamento de Redes), principal objeto deste estudo. Este protocolo foi criado para facilitar a comunicação entre a ferramenta de gerenciamento e os produtos e serviços de diversos fabricantes. (LIMA, 2014) Abstract. The objective of this work is to present a study on the use of the SNMP protocol in the Zabbix network monitoring tool to manage equipment used in radio internet connections. This tool was chosen for being open source, in addition to having several resources such as: Web management interface; Real-time graphics; Alerts by sms, email and others; And mainly because it has native support to the Simple Network Management Protocol (SNMP), main objective of this study. This protocol was created to facilitate communication between the management tool and the products and services of various manufacturers.
1. Introdução
O uso do software de gerência de redes é o mecanismo que auxilia para que o gerente descubra problemas e isole sua causa. As ferramentas de monitoramento são baseadas principalmente no protocolo SNMP, sendo que alguns desses softwares podem agregar scripts e agentes remotos para coletar dados que serão posteriormente utilizados para extrair históricos, análises gráficas e consultas diversas, auxiliando no acompanhamento da rede. (NETO; UCHÔA, 2006)
Existem diversas ferramentas de monitoramento de ativos de rede disponíveis, tais como Cacti, Nagios, Munin, Observium, Zenoss, The Dude, Zabbix, e outras, cada uma com suas particularidades, sendo que cabe ao gerente da rede a escolha da ferramenta que melhor se adapte às necessidades de sua estrutura.
Será apresentada neste artigo uma forma de otimizar o uso de uma destas ferramentas de monitoramento. Foi escolhido o software Zabbix para implementação do protocolo SNMP para gerenciar os ativos da rede por ser uma ferramenta de código aberto e possuir suporte nativo ao protocolo
2. Gerenciamento de redes
As redes de computadores surgiram com a necessidade de compartilhar periféricos como impressoras, leitores de fitas, dispositivos de armazenamento, etc (NUNES, 2014). A rápida evolução proporcionou uma vasta integração entre os diversos tipos de equipamentos. Hoje em dia vários deles já podem ser gerenciados de modo que o acompanhamento do sistema é feito de forma automática pelas ferramentas de monitoramento.
O uso do software de gerência de redes é o mecanismo para que o gerente descubra problemas e isole sua causa. As ferramentas de monitoramento são baseadas principalmente no protocolo SNMP, sendo que alguns desses softwares podem agregar scripts e agentes remotos para coletar dados que serão posteriormente utilizados para extrair históricos, análises gráficas e consultas diversas, auxiliando no acompanhamento da rede. (NETO; UCHÔA, 2006)
3. Management Information Base (MIB)
A Base de Informações de Gerenciamento são variáveis dispostas de forma hierárquica nos hosts, e expressam diversos tipos de valores que servem para gerência e análise do sistema. As MIBs são compostas por vários módulos, sendo que cada um deles, representa um conjunto de objetos relacionados.
Lopes (2008) explica que “A estrutura e representação para nomes dos objetos MIB, foi estabelecida pela ISO (International Organization for Standardization) ITU (International Telecommunication Union), através do namespace (espaço de nomes) identificador de objeto no qual é absoluto e único no mundo inteiro. “ Este namespace obedece a uma hierarquia e é atribuído a cada estágio desta hierarquia uma string e um inteiro para sua identificação. (LOPES, 2008)
4. Protocolo SNMP
Segundo Quequi (2016): “O SNMP é um protocolo da camada de aplicação que tem como objetivo principal coletar informações de dispositivos gerenciáveis, é o responsável por vincular informações de gerência“. Benício (2015) diz ainda que: “Esse protocolo foi definido pela IETF (Internet Engineering Task Force) pelo qual as informações de gestão para um elemento de rede podem ser consultadas ou alteradas por usuários remotos. “
Atualmente existem três versões do protocolo SNMP. O SNMPv1, SNMPv2, SNMPv3. Todos têm como base senhas ou palavras, mais conhecidas como comunidades, permitindo a comunicação entre todos os dispositivos, equipamentos e aplicações com suporte ao protocolo (JUNIOR, 2016).
Segundo Silva, Medeiros & Martins (2015):
“No ambiente do protocolo simples de gerenciamento (SNMP), existem duas entidades fundamentais: o gerente e o agente. O primeiro, que lida com a função de gerenciar a rede, comumente é um servidor, o qual através de um software realiza consultas de informações pela rede ao agente (switch, roteador, servidor Linux, servidor Windows, etc.) e esse responde. “
5. Zabbix
Criada por Alexei Vladishev em 1998, Zabbix é uma solução open source de monitoramento utilizado por empresas. É um software que monitora vários parâmetros de diversos ativos em uma rede de computadores (LIMA, 2014).
Horst (2015) descreve a ferramenta da seguinte forma:
“Zabbix é uma ferramenta moderna. Open Source e multiplataforma, livre de custos de licenciamento, pois sua licença é a GPLv2 (GNU General Public Licence). Tem apenas uma versão, que é considerada de classe Enterprise, sendo utilizada para monitorar a disponibilidade e o desempenho de aplicações, ativos e serviços de rede por todo o mundo”
Possui a capacidade de monitorar milhares de itens em apenas um servidor. Podemos ter um servidor central de monitoramento e vários outros servidores subordinados a ele enviando as métricas. Também é possível separar os servidores web, servidor de banco de dados e servidor de monitoramento, aumentando assim a flexibilidade e obtendo maior ganho em desempenho (LIMA, 2014).
6. Metodologia
A pesquisa a ser desenvolvida classifica-se como aplicada, conforme Barros e Lehfeld (2000, p. 78), a pesquisa aplicada tem como motivação a necessidade de produzir conhecimento para aplicação de seus resultados, com o objetivo de “contribuir para fins práticos, visando à solução mais ou menos imediata do problema encontrado na realidade”. Appolinário (2004, p. 152) salienta que pesquisas aplicadas têm o objetivo de “resolver problemas ou necessidade concretas e imediatas”.
O projeto está dividido nas seguintes etapas: Etapa 1 – Estudo teórico
- Levantamento bibliográfico em Gerenciamento de Redes - Pesquisa sobre a ferramenta de monitoramento Zabbix - Pesquisa sobre MIB (Management Information Base)
- Pesquisa sobre o protocolo SNMP (Simple Network Management Protocol) Etapa 2 - Implementação
- Instalação da ferramenta de monitoramento Zabbix - Coleta dos objetos da MIB
- Configuração do Template e Itens na ferramenta de monitoramento - Coleta dos resultados em ambiente de testes
Etapa 3 – Validação
- Testes do uso do protocolo SNMP em um provedor de internet
7. Resultados
Para obtenção dos resultados, foi utilizado a máquina virtual VM Virtual Box Versão 5.0.14 e instalado o Zabbix Appliance, que segundo Vladishev (2017) “Ele é uma alternativa à instalação manual do Zabbix para um ambiente de testes. Esta opção vem com o banco de dados MySQL.”
A instalação e configuração do ambiente para testes não será abordada neste artigo por não ser o foco do mesmo. Serão mostrados os resultados obtidos considerando o Zabbix já instalado na máquina virtual. Os passos serão apresentados na linguagem padrão (inglês), porém o usuário pode, se preferir, configurar para a linguagem de sua preferência.
As subseções a seguir demonstram as configurações necessárias para realizar o monitoramento de um equipamento através do protocol SNMP, juntamente com a imagem para melhor entendimento.
7.1 Criando o Template
Segundo Lima (2014) “Um template é um conjunto padrão de elementos que podem ser aplicados em vários hosts que serão gerenciados utilizando o mesmo esquema. “
A criação do Template está acessível por meio do menu Configuration>Templates>Create template
A Figura 1 apresenta o formulário que possibilita a definição básica do Template. Na aba Template é necessário o preenchimento de, no mínimo, dois campos.
A legenda a seguir apresenta o preenchimento dos dados. 1. Nome do Template
2. Nome Visível
3. Grupo ao qual o Template será associado
7.2 Obtendo o OID do item que será monitorado
A arquitetura de gerenciamento de redes SNMP define uma base de informações gerenciais. Nesta base, cada recurso gerenciado (estado de interface, quantidade de memória livre, descrição do Sistema, etc) é considerado um objeto e identificado pelo seu OID (Object Identifier). O SNMP simplesmente recupera (faz "queries") do valor correspodente a cada OID, que é disponibilizado pelo agente SNMP do dispositivo de rede.
Para obtenção do OID, foi utilizado o iReasoning MIB Browser. Foi possível obter a MIB referente ao equipamento que será monitorado através do site <
https://help.ubnt.com/hc/en-us/articles/210391987-airMAX-How-to-Enable-and-Test-SNMP> A Figura 2 apresenta o MIB Browser com a árvore MIB do equipamento após ter sido carregada.
Figura 2. Árvore MIB
É possível navegar pela árvore até o item desejado. Clicando sobre o item as informações OID, Value e Type poderão ser visualizadas. Estas informações são de suma importância para a configuração do Item no Template.
7.3 Criando os Itens do Template
Todo dado que necessitamos coletar é chamado de Item. Para que o Template seja útil é necessário ter a definição do que se espera calcular ou produzir com ele. (HORST 2015)
Para abrir o formulario de criação do Item deve-se acessar o menu Configuration>Templates, abrir o Template que foi criado, clicar na aba Items e após em Create item
A Figura 3 apresenta a criação do primeiro Item no Template teste.
Figura 3. Criação de Itens
Neste exemplo foi criado o item referente a coleta do CCQ (Client Connection Quality), que segundo o Blog da Entelco Telecom, disponível em <
http://www.entelco.com.br/blog/ccq-e-modulacao-ubiquiti-entenda-como-funciona/> “é
um indice que avalia a qualidade da conexão de um cliente/estação wireless. O nível baseia-se em um valor percentual, no qual 100% corresponde a um estado perfeito do link.”
7.4 Configurando o Host a ser monitorado
Após ter sido criado o Template foi acessado o formulário para criação do host através do menu Configuration>Hosts e após em Create host
A Figura 4 apresenta o formulário para criação do Host preenchido.
Figura 4. Configuração do Host
7.5 Consultando os dados coletados
É possível consultar os dados coletados correspondente aos itens configurados através do menu Monitoring > Latest data
A Figura 5 apresenta a tela de coleta dos dados recentes, onde é possível filtrar os equipamentos que queremos visualizar
Figura 5. Dados recentes
A coluna Name apresenta o nome dos itens separados por grupos, conforme foram configurados. Last Check apresenta a hora da última coleta de dados. Last Value apresenta o ultimo valor coletado. Change apresenta a diferença entre o ultimo valor coletado e o valor da coleta anterior.
Também é possível visualizar o gráfico com todas as coletas do item através do Link Graph.
A Figura 6 apresenta o gráfico de coleta do CCQ. É possível identificar a hora exata em que houve variação, momentos em que manteve-se acima ou abaixo do esperado.
Figura 6. Gráfico CCQ
É possível ajustar o gráfico conforme a preferência. Neste caso, o gráfico está ajustado para apresentar a última hora. Durante a criação do Item, somente para teste, foi configurado para coletar o dado a cada 10 segundos gerando assim um gráfico mais
detalhado. O gráfico também apresenta o mínimo, o máximo e a média do valor obtido durante o período selecionado.
8. Considerações
Os resultados obtidos durante os testes foram satisfatórios, mostrando que é possível obter dados de forma automatizada durante longos períodos. Estes dados irão auxiliar o gerente de rede para tomar decisões antecipadamente e prever possíveis falhas ou problemas na rede.
O próximo passo será configurar todos os itens desejados, implementar a utilização de Macros, Triggers, Trap e otimizar a utilização dos gráficos.
9. Referências
Appolinário, F. (2004) “Dicionário de metodologia científica: um guia para a produção do conhecimento científico” São Paulo: Ed Atlas
Barros, A. J. S; Lehfeld, N. A. S (2000) “Fundamentos de Metodologia: Um guia para a Iniciação Científica” São Paulo: Ed Makron Books
Benicio, Washington Ernando Pereira (2015) “Monitoramento e Gerenciamento de Redes utilizando Zabbix” Trabalho apresentado ao Curso de Análise e Desenvolvimento de Sistemas do Instituto Federal como requisito para obtenção do título de Tecnólogo em Análise e Desenvolvimento de Sistemas
Horst, Adail Spínola; Pires, Aécio dos Santos; Déo, André Luis Boni (2015) “De A a Zabbix” Ed. Novatec
Junior, Adriano Roberto Vidal (2012) “Monitoramento de equipamentos utilizando o protocolo SNMP”. Monografia de especialista em Configuração e Gerenciamento de Servidores e Equipamentos de Redes, Universidade Tecnológica Federal do Paraná – 2012.
Lima, Janssen dos Reis. (2014) “Monitoramento de Redes com Zabbix: Monitore a saúde dos servidores e equipamentos de rede”. Ed. Brasport
Lopes, Márcio Moraes (2008) “Gerenciamento de Redes TCP/IP: Monitoramento da taxa de utilização de enlaces em redes ethernet usando a ferramenta Zabbix” Monografia apresentada como requisito para obtenção do Título de Bacharel em Ciência da Computação, Universidade Católica de Goiás
Neto, Arlindo Follador; Uchôa, Joaquim Quinteiro “Ferramentas Livres para Monitoração de Servidores” Artigo apresentado ao Curso de Pós-Graduação Lato Sensu Administração em Redes Linux - Universidade Federal de Lavras (UFLA); Nunes, Leonardo Batista (2014) “Gerenciamento de uma Rede de Computadores em um
Ambiente Corporativi (UEPB/Campus VII) Utilizando o Software Zabbix” Monografia apresentada ao Curso de Licenciatura em Computação. Universidade Estadual da Paraíba – UEPB
Quequi, Jackson Francisco da Rosa (2016) “Gerenciamento e analise em redes de computadores” Trabalho de Conclusão de Curso (Graduação em Ciência da Computação) - Universidade de Cruz Alta
Vladishev, A. Manual online do Zabix. Disponível em < https://www.zabbix.com/documentation/3.0/start>