Lenildo Morais é Mestre em Ciência da Computação pelo Centro de Informática da UFPE, Pesquisador do Lab. de Tecnologias de Investigação ASSERT – Sist. Avançado e Eng. de Software, é também Ger. de Projetos da Ustore – Empresa do Porto Digital de Pernambuco, e membro do conselho editorial da Channel 360°.

Nos dias de hoje não existe empresa que já não tenha uma rede de computadores. Com isso vem também o uso de impressoras, servidores, switchs, pontos de acesso sem fio, firewall e tudo isso com uma interligação em uma ou mais redes locais com a internet. Porém,  basta apenas um desses itens citados parar de funcionar corretamente que o administrador de rede é contatado para solucionar o problema o quantos antes.

Visando alcançar um diagnostico mais preciso da infraestrutura de rede e diante do crescimento de empresas que adotam a tecnologia da informação como ferramenta estratégica e de controle, o gerenciamento de redes surge como necessidade em um ambiente que o número de dispositivos de redes aumenta com o decorrer do tempo.

Objetivando a centralização da gerência de redes e o baixo custo para implementação, esse artigo propõe a utilização da ferramenta Zabbix e do protocolo SNMP, não somente para monitoramento e controle, mas para resolução e antecipação de problemas relacionados a equipamentos de rede.

1.O que é Zabbix?

O Zabbix é uma ferramenta de monitoramento de rede, o que significa que o Zabbix é uma ferramenta que nos permite monitorar a performance e disponibilidade de todos serviços e ativos da rede, ou seja, desde aplicações envolvidas na rede, até os inúmeros equipamentos que são interligados a ela, tais como servidores, hosts, switches, roteadores entre muitos outros.

O Zabbix é projetado para monitoramento, disponibilidade e desempenho dos componentes da infraestrutura. A ferramenta é capaz de monitorar um número ilimitado de métricas e fornece analises sofisticadas sobre a saúde da infraestrutura de TI. É capaz de identificar a origem de um incidente de TI, permitindo aos usuários agirem de forma rápida, reduzindo os custos associados à paralisação.

A principio o Zabbix é um sistema que consegue coletar informações de todos dispositivos que estão interligados na rede, absorvendo as informações por meio de scripts, via agente ou até mesmo através do protocolo SNMP.

Esse poderoso sistema de gerência e monitoramento absorve todas as informações requisitadas, e permite que as informações sejam coletadas e armazenadas em um banco de dados.

O Zabbix, através de uma interface web bem amigável, possibilita que as informações que foram armazenadas anteriormente nas bases de dados, sejam consultadas e analisadas por meio de alertas. Os alertas permitem que os problemas que estejam ocorrendo na rede ou equipamentos sejam identificados, assim sendo possível tomar decisões e efetuar melhorias.

2. A Arquitetura do Zabbix

O Zabbix oferece portabilidade a diversos sistemas operacionais, disponibilizando agentes aos mais diversos sistemas operacionais, permitindo o monitoramento entre diferentes plataformas.

Entretanto existe uma dependência em relação à estrutura do Zabbix, visto que o mesmo foi projetado com o intuito de ser uma ferramenta Open Source, seu servidor necessariamente deve ser hospedado em uma máquina com o Linux ou Mac OS, visto que não existe um pacote do servidor disponível para as versões do Windows.

A arquitetura Zabbix e a flexibilidade dos módulos permitem que a ferramenta seja utilizada para o monitoramento convencional (vivo/morto on/off), acompanhamento de desempenho de aplicações, análise de experiência de usuário e análise de causa raiz em ambientes complexos, através do servidor Zabbix e as regras de correlacionamento. A ferramenta de monitoramento de redes Zabbix oferece uma interface 100% Web para administração e exibição de dados. Os alertas do sistema de monitoramento Zabbix podem ser configurados para utilizar vários métodos de comunicação, como SMS, e-mail e abertura de chamados em sistemas de helpdesk. O sistema permite ainda que ações automáticas como, por exemplo, restart de serviços sejam executados a partir de eventos.

O Zabbix permite monitoramento agentless (sem agentes) para diversos protocolos e conta com funções de auto-discovery (descoberta automática de itens) e low level discovery (descoberta de métricas em itens monitorados).

2.1 Servidor Zabbix

O servidor é responsável pela coleta e o armazenamento dos dados monitorados. O servidor deve ser necessariamente hospedado em uma máquina com o sistema operacional baseado na família do Unix (Linux ou Mac OS). O Agente Zabbix é um processo implantado nos dispositivos monitorados para monitorar aplicações e recursos localmente (discos, memoria, processamento, rede, sistema de arquivos).

O agente coleta as informações dos dispositivos localmente para o servidor Zabbix. Os agentes Zabbix são extremamente eficientes devido ao uso das informações nativas do sistema para coleta eficiente dos dados.

2.2 Agente Zabbix

O agente é responsável por repassar todas as informações que foram coletadas do sistema operacionais em qual está rodando para o servidor. O agente permanece instalado na máquina e rodando como um  serviço, e assim que o servidor solicita alguma requisição o agente processa a requisição e retorna os dados solicitados, dados tais como: consumo dos recursos de HD, memória, estatística de processador, entre outros.

2.3 Banco de Dados

Onde todas informações de configuração do Zabbix e dados coletados do monitoramento ficam armazenados.

2.4 Zabbix Proxy

Uma das features mais utilizadas do Zabbix, visto que é capaz de prover o monitoramento remoto de clientes. O Zabbix Proxy é utilizado para o monitoramento distribuído, coletor de dados locais e remotos. O Zabbix Proxy coleta os dados e envia para o Zabbix Server.

2.5 Interface do Zabbix

A interface é a estrutura que permite que o administrador tenha acesso para interagir e administrar o sistema. A fim de permitir um fácil acesso ao monitoramento dos dados e configurações através do ZABBIX, a interface do Zabbix foi projetada para ser acessada via web, permitindo que o administrador ou usuário acessem através do próprio browser instalado em seu sistema operacional. Para alguns navegadores em específico, o Zabbix disponibiliza até mesmo alguns plugins para facilitar o acesso ao servidor.

3. Por que utilizar o Zabbix?

A escolha de uma ferramenta de monitoramento está diretamente ligada aos problemas que são apresentados no âmbito a qual está direcionado a empresa, lembrando que independente do setor onde a empresa atue, existe a necessidade de traçar um plano de estratégia de negócio. Para um monitoramento eficaz e preciso é necessário traçar laços em conjunto ao plano de estratégia, onde podemos definir as políticas de segurança da empresa. As políticas de segurança serão responsáveis por estabelecer o nível de segurança que deverá ser adotado pela organização.

3.1 Funcionalidades do Zabbix

  • Gerenciamento centralizado;
  • Acesso centralizado as informações;
  • Número ilimitado de proxies;
  • Monitoramento em tempo real;
  • Monitoramento de alertas para disponibilidade, integridade, entre outros;
  • Alertas via email, SMS, mensagem instantânea e via script configurado;
  • Log de auditoria;
  • Visualização via abas web e mapas;
  • Execução de comandos remotos;
  • Suporte a serviços de TI hierárquico;
  • Relatórios em tempo real de SLA’s;
  • Facilidade de integração com sistemas de terceiros;
  • Modelos pré­configurados de hosts;
  • Facilidade de compartilhamento de modelos;
  • Sistema de auto busca de dispositivos a serem monitorados;
  • Monitoramento de páginas web.

3.2 Monitoramento do Service Desk

Com o Zabbix é possível monitorar o helpdesk e aumentar as possibilidades de desempenho de negócio. Você pode, por exemplo, criar disparos de SMS automáticos, caso determinado tipo de chamado fique sem nenhuma interação durante X horas, ou disparar um e-mail automático para os gestores, caso o sistema fique indisponível.

Com base no armazenamento desses dados, abre-se a possibilidade de análise e criação de estratégias que agilizem seus processos, diminuir ou aumentar a equipe de acordo com a demanda de chamados recebidos.

4. Vantagens / Pontos Fortes

A principal vantagem do Zabbix é a facilidade de manipulação dos objetos, o que agiliza muito o trabalho do dia-a-dia, por exemplo, digamos que se tem 50 switches iguais, e pretende-se monitorar o tráfego de rede de cada porta.

Pode-se criar os itens de cada porta uma única vez e salva-los como template, depois basta usar este template para os 50 switches. Criar os gráficos apenas do primeiro switch e depois copia-lo para os outros 49.

Além da poderoso monitoramento sem agente, agente Zabbix oferece alto desempenho para monitorar o sistema operacional e métricas específicas de aplicação.

Os protocolos de comunicação em rede em uso com Zabbix são extremamente eficientes com a utilização de recursos e largura de banda da rede de computação, mesmo em implementações em grande escala, contemplando os benefícios técnicos e comerciais abaixo:

4.1 Benefícios Técnicos

  • Instalação rápida e fácil;
  • Monitoramento em tempo real;
  • Adequado para ambientes de qualquer tamanho;
  • Flexível;
  • Mecanismo de notificação instantânea;
  • Detecção de anomalias;
  • Apoio da comunidade.

4.2 Benefícios Comerciais

  • Baixo custo total da propriedade (TCO);
  • Sem dependência de fornecedor;
  • Performance e escalabilidade satisfatória;
  • Visibilidade da rede;
  • Acesso a suporte profissional de serviços;
  • Melhoria na experiência do cliente;
  • Suporte comercial confiável.

O acesso ao frontend Zabbix pode ser feito através de uma ligação protegida por SSL, garantindo a segurança entre os usuários e servidores. Além disso, a interface tem uma auto proteção contra ataques de força bruta.

Todos os componentes de Zabbix pode ser executado como utilizadores sem  privilégios, o que é especialmente importante para os agentes nativas. Ainda mais, correndo daemons Zabbix em uma conta privilegiada requer passos adicionais. Os componentes comunicam uns com os outros e só aceitar conexões de endereços IP autorizados, outras conexões são automaticamente rejeitadas.