Instalando o Plugin EveryZ (Vulgo Zabbix Extras) no Zabbix

O plugin EveryZ/Zabbix Extras tem muitas funções interessantes que nativamente o Zabbix não traz como mapas por geolocalização, relatórios diferenciados e esse tutorial visa somente na instalação do mesmo.

Este plugin inclui:

Zabbix-Cat => Relatório de Análise de capacidade.

Zabbix-SC => Relatório de custo de armazenamento do histórico dos itens, visão por host e por item.

Zabbix-NS => Relatório de itens não suportados.

Zabbix-EM => Correlacionador de eventos.

ZabGeo => Plugin que permite a integração da API do Google Maps com o Zabbix implementando a geolocalização dos hosts monitorados em um mapa do Zabbix. Isso reduz o tempo de criação de uma mapa, pois não é necessário colocar uma imagem de fundo e adicionar/configurar todos os hosts. A imagem é gerada dinamicamente, permitindo zoom e demais recursos do Google Maps. É possível selecionar o host no combobox e fazer zoom do local em que está o host. Foi desenvolvido por Aristóteles Araújo e Leandro Alves Machado.

ZabTree => Exibição dos serviços de T.I em árvore. Desenvolvido por Rodrigo Dias.

SNMP-Builder => um projeto de software livre que permite importar MIBs proprietárias para monitoramento SNMP. Não foi desenvolvido por membros da comunidade, mas foi incorporado por ser muito útil para os administradores de rede.

Informação retirada da página do Zabbix Brasil, neste link

Instalação

A instalação do EveryZ é muito simples. Bastando para isso o download de um script bash e sua execução, parametrizada ou por assistente, para que o frontend do Zabbix seja alterado e as novas funcionalidades sejam adicionadas.
  Citar

Por questão de boas práticas e de segurança, deve ser feito um backup completo do frontend do Zabbix antes de se iniciar a instalação do EveryZ. A restauração, caso seja necessária, deverá ser feita usando este backup. O EveryZ faz, adicionalmente, um backup de arquivos originais do Zabbix que foram alterados os salvando em um pacote de arquivos seguindo este padrão de localização: /tmp/zeBackup<HORARIO_BKP>.tgz, é importante ressaltar que, em caso de upgrade ou reinstalação, o arquvio mais recente não terá a versão original feita pela Zabbix INC e sim a versão anterior ao upgrade.

O EveryZ é Opensource sob a licença GPL, tendo em sua composição outras bibliotecas javascript com seu licenciamento específico (tal qual o d3.js e o leaflet). Seu código fonte está disponível em repositório do github que pode ser consultado aqui.

Uma vez que tenhamos contextualizado tudo e você já tenha feito o seu backup… vamos à instalação.

Para que este instalador seja executado com sucesso deverão estar presentes os pacotes: wget e unzip. Caso opte pela instalação assistida, deverá estar presente também o pacote dialog.

Exemplos de instalação destes pré-requisitos com apt-get e com yum:

apt-get install wget dialog unzip
yum install wget dialog unzip

O primeiro passo é fazer o download do script de instalação para o servidor que hospedar o frontend do Zabbix (na maioria das instalações é somente um servidor para o Zabbix, entretanto, deixamos aqui claro que deve ser instalado no servidor que hospedar a interface web do seu Zabbix).

O comando a seguir faz o download de uma cópia do script de instalação, o salvando em em /tmp/installEveryz.sh

wget -O /tmp/installEveryz.sh https://goo.gl/AX3uUH

Quando este tutorial foi feito existiam duas versões alvo para este plugin: o Zabbix 3.0 e o 3.2 (mais precisamente 3.0.9 e 3.2.5), verifique aqui no site se existe alguma nota ou post adicional caso você esteja instalando o EveryZ em versão superior a estas. Para verificar se a versão do EveryZ que você está baixando é compatível com seu ambiente, execute o comando a seguir:

cat /tmp/installEveryz.sh | grep ZABBIX_VERSIONS -m1

com as quais este script foi testado. Se sua versão for superior a estas (por exemplo, 3.0.10 ou 3.2.6) é altamente provável que funcione, entretanto, é prudente que você faça teste em ambiente de laboratório ou consulte os participantes de nosso grupo no telegram (). Certifique-se da compatibilidade com o seu cenário antes de prosseguir.

Tudo “Dentro dos conformes?” vamos partir para a instalação então, aqui vou apresentar em sua forma assistida:

bash /tmp/installEveryz.sh

Utilizamos aqui o bash, entretanto, é possível que funcione com outros interpretadores como o sh.

O assistente de instalação irá solicitar algumas informações:

  • Idioma da instalação (pt-BR ou en-US).

A seleção do idioma aqui é somente para o processo de instalação, o EveryZ sempre será instalado com todas as traduções que ele possui.

  • Localização dos arquivos do frontend: (diretório onde a interface web está instalada).

Alguns dos caminhos comuns, dentre os diversos métodos de instalação e distribuições:

/var/www

/var/www/html

/usr/share/zabbix

  • Download da última versão dos arquivos (Sim ou Não).

Por padrão você deve escolher a opção Sim para que o instalador faça automaticamente o download do pacote de instalação

Com a opção Não você deverá fazer manualmente o download do pacote de instalação e disponibiliza-lo no caminho: /tmp/EveryZ.zip

  • Configuração do Apache

Se você selecionar a opção Sim o apache será reconfigurado (será adicionado o arquivo everyz.conf no diretório de configurações do apache).

Com a opção Não você deverá fazer manualmente a configuração e o reload ( ou restart ) do apache.

Informações extras

  • Alteração no apache

O arquivo everyz.conf adiciona no apache as seguintes configurações, substituindo a marca <FRONTEND_DIR> pelo caminho para o seu frontend:

&lt;Directory "&lt;FRONTEND_DIR&gt;/local/app/everyz/js"&gt; 
 Options FollowSymLinks 
 AllowOverride All 
 &lt;IfModule mod_authz_core.c&gt; 
  Require all granted 
 &lt;/IfModule&gt;
 Order allow,deny
 Allow from all
&lt;/Directory&gt;
&lt;Directory "/var/www/html/local/app/everyz/images"&gt; 
 Options FollowSymLinks 
 AllowOverride All 
 &lt;IfModule mod_authz_core.c&gt; 
  Require all granted 
 &lt;/IfModule&gt;
 Order allow,deny
 Allow from all
&lt;/Directory&gt;
&lt;Directory "/var/www/html/local/app/everyz/css"&gt; 
 Options FollowSymLinks 
 AllowOverride All 
 &lt;IfModule mod_authz_core.c&gt; 
  Require all granted 
 &lt;/IfModule&gt;
 Order allow,deny
 Allow from all
&lt;/Directory&gt;

Após este rápido processo de instalação (e este longo tutorial, afinal ser didático e tentar atender ao maior número possível de usuários tem lá seu custo…) você deve ter o EveryZ e o Zabbix Extras com todos os seus módulos clássicos e novos devidamente instalados e configurados. Você conseguirá constatar isso ao acessar o frontend do Zabbix, na imagem a seguir destaco algumas diferenças visuais facilmente perceptíveis:

Conforme destacado na imagem acima, o logotipo do Zabbix mudou… tem parte da bandeira do Brasil e o ZÉ, nosso mascote (me desculpem os que não curtem gatos pretos… mas… ele é lindo e marrentinho…). Outra mudança facilmente percebida é a adição do menu Extras logo ao final da lista de menus nativas do Zabbix.

Agora é se divertir, ops, trabalhar usando as novas funcionalidades providas pelo Zabbix e pelo EveryZ.

Acompanhe este site e se cadastre aqui, temos muito conteúdo que estamos adicionando a medida que podemos e, muito em breve, vamos lançar um curso explicando como você pode desenvolver os seus próprios módulos para o Zabbix usando o framework do EveryZ, com incríveis ganhos de performance e de possibilidades.

Tutorial de total autoria de Adail Horst, postado em 27 de Abril de 2017 no site EveryZ, link da publicação original aqui

Testado e validado por mim, em 22/04/2019.

Deixe uma resposta