Motivação 

O Zabbix em si já é uma solução de monitoramento bem popular e sua instalação também se tornou muito comum na rotina de administradores de TIC (Tecnologia da Informação e Comunicação). Já é possível encontrar diversas versões de tutoriais disponíveis em diversos sites e comunidades e até mesmo na documentação oficial do desenvolvedor, a Zabbix SIA.  

Soluções em containers já são realidade também, há bastante tempo. O Zabbix vem “pronto para uso”. 

Mas a facilidade traz um risco: o processo de não conhecer o produto como deveríamos, pelo simples fato de “subir ao clique do mouse”, ou algo assim como um deploy facilitado. 

Este artigo visa sugerir algumas das topologias e tecnologias que podem ser aplicadas em uma solução Zabbix, principalmente visando performance, segurança e escalabilidade em ambientes corporativos.  

 

Instalação All in One – Todos os componentes do Zabbix em um só lugar 

Este modelo de instalação é o mais praticado, o mais conhecido. É a instalação onde todos os principais componentes do Zabbix estão juntos, em um único servidor ou instância de máquina virtual (ou física). 

próprio fornecedor, a Zabbix SIA, disponibiliza uma versão de Appliance para estudo da ferramenta, nesta modalidade: 

https://www.zabbix.com/download_appliance 

Obs.: estas versões são para avaliação do produto, não para ambientes produtivos. 

 

Zabbix Cloud Images – Imagens prontas para deploy em ambientes de nuvem 

Assim como os Appliances, a Zabbix SIA também disponibiliza imagens prontas para os principais tipos de nuvem utilizados no mundo, como AWS, Google Cloud e outros. Veja o link https://www.zabbix.com/cloud_images 

Obs.: é importante observar o modelo de utilização destas imagens em nuvem, visto que alguns modelos sugerem diferentes precificações. 

A documentação é vasta e vale uma visita ao site. 

Zabbix Docker Component Repositories 

 O Zabbix Docker hub também traz algumas opções de deploy do Zabbix em containers Docker. Há várias combinações, para todos os gostos, com base nas tecnologias mais utilizadas. Veja abaixo algumas delas: 

Aqui, começamos a lidar com um tipo de modularização do Zabbix, tema deste post. 

Instalação Modular do Zabbix 

Diferente da instalação All in One, neste modelo de instalação, seja por Cloud Images, seja por Docker containers, é possível distribuir a carga da solução Zabbix separando em instâncias seus diferentes componentes. Por exemplo, o caso mais comum de instalação modular é separar os 3 principais componentes: Zabbix Server, Zabbix database, Zabbix frontend. 

Some à isso ao menos 1 Zabbix Proxy que por sua vez, será capaz de coletar dados SNMP, SSH, JMX, de diversos outros hosts de seu ambiente ou de seu cliente, desonerando o Zabbix Server para que ele faça o papel mais importante de tudo isso: lidar com os recursos que administram toda a solução, gerando estatísticas, previsões futuras para planejamento de capacidade, controle de poolers, etc. 

Existem muitas combinações possíveis. Vamos falar de algumas: 

Cenário modular 1 – Zabbix Server + Zabbix Frontend + Zabbix DatabaseOs 3 principais serviços do Zabbix em ao menos 3 servidores dedicados

Cenário modular 2  Cenário modular 1 + Zabbix Proxies: Acrescentar Zabbix Proxies ao ambiente permite escalar potencialmente as coletas.

Cenário modular 3 – Cenário modular 2 + Zabbix Java Gateway: Cada Zabbix Proxy é capaz de suportar 1 Zabbix JavaGateway, que por sua vez, é um hub de conexões com aplicações java pelo protocolo JMX.

Cenário modular 4 – Utilizando outras tecnologias para ganho de performance e segurança da solução Zabbix: Réplica de banco de dados.

Alguns (todos, na verdade) SGBDs (Sistemas de Gerenciamento de Banco de Dados) possuem técnicas para Alta Disponibilidade de seus bancos de dados, conferindo assim mais confiabilidade da solução. Pode haver ganho ou perda de performance, como tradeoff, mas normalmente há compensação. 

Cenário modular 5 – Cenário modular 4 e Load Balance com Failover para frontend: Apache e Nginx são os mais utilizados, com soluções nativas para distribuição de carga e tolerância a falhas durante os acessos.

Conclusão: 

Cenários e tecnologias diversas podem ser implementados.  

Escalabilidade sempre é possível quando se trata do Zabbix como solução de monitoramento, mesmo que o projeto inicial não tenha previsto o crescimento de seu ambiente. 

Conhecer a solução, no entanto, é crucial para que se possa desenvolver tais cenários e da mesma forma, descartar outros que não lhe atenda em plenitude. 

Estude Zabbix! Conheça a tecnologia! Implemente inteligência! Gere métricas que ajudem na tomada de decisões de seu negócio! 

E… jamais se deixe levar pela facilidade do “deploy”, mas o utilize com ciência a seu favor! 

Quer receber materiais técnicos de implementações de cenários? Escreva-nos: treinamentos@unirede.netmarketing@unirede.net

Paulo R. Deolindo Jr.

Paulo R. Deolindo Jr.

Zabbix Trainer

Graduado em Tecnologia da Informação, Pós-graduado em Produção e Sistemas IFF – Instituto Federal de Educação, Ciência e Tecnologia Fluminense e pós-graduado pela Unisul (PR) no curso de Gestão de Projetos de Tecnologia da Informação. Atua confeccionando e ministrando treinamentos com foco em tecnologias Open Source, como Zabbix, Zimbra, Bacula, Gestão e Segurança em Servidores Linux, dentre outras.

 

  • [2017] – Linux Professional Institude Certified
  • [2014] – Zabbix Certified Professional
  • [2014] – Zabbix Certified Specialist
  • [2013] – Zimbra Collaboration Suite