O Zabbix é uma ferramenta de monitoramento open source muito completa, simples de configurar e que possibilita o monitoramento de diversos pontos da área de TI como redes, servidores, banco de dados e aplicações, realizando desde monitoramentos simples como up/down até monitoramentos mais complexos como receber valores de scripts ou receber informações de banco de dados, por ser uma ferramenta open source existem diversas formas para coletar as informações usando plug-ins, agentes, SMNP, entre outros e permite a configuração de avisos via SMS, email, whatsapp, entre outros meios para realizar uma monitoração passiva, mas se no seu ambiente você conhece alguns procedimentos que precisam ser realizados após algum evento ocorrer no seu ambiente, como reiniciar algum tipo de serviço ou até reiniciar servidores, é possível fazer essa configuração quando alguma trigger do Zabbix é disparada (exemplo: quando alguma partição de um servidor alertar 20% de espaço disponível o Zabbix pode executar um script de limpeza).

Nesse artigo vamos instalar o Zabbix em um servidor Linux CentOS 7.

O Zabbix necessita de 3 pré requisitos:

Web Server, no caso o Apache. (para instalar acesse o artigo:

http://nextcube.com.br/wordpress/2016/06/09/instalando-apache/).

http://nextcube.com.br/wordpress/2016/06/09/instalando-apache/). Um banco de dados, vamos utilizar o MySql. (para instalar e configurar acesse o artigo:

http://nextcube.com.br/wordpress/2016/06/22/instalando-mysql-no-linux/).

http://nextcube.com.br/wordpress/2016/06/22/instalando-mysql-no-linux/). PHP (para configurar acesse o artigo:

http://nextcube.com.br/wordpress/2016/07/28/instalando-e-configurando-php-no-linux/).

Instalando Zabbix

Finalmente vamos ao que interessa que é instalar o Zabbix.

Primeiro vamos instalar alguns pacotes que o Zabbix irá precisar.

yum -y install php-mysql php-gd php-xml php-bcmath

Agora vamos instalar o Zabbix do repositório e os pacotes que e agente do Zabbix.

yum -y install http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm yum -y install zabbix-get zabbix-server-mysql zabbix-web-mysql zabbix-agent

Vamos configurar o usuário Zabbix na Database.

mysql -u root -p create database zabbix; grant all privileges on zabbix.* to zabbix@'localhost' identified by '[password]'; grant all privileges on zabbix.* to zabbix@'%' identified by '[password]'; flush privileges; exit

Troque a variável [password] pela senha do usuário Zabbix do banco.

Após o MySql pronto é necessário criar os objetos (tabelas, views, etc…) no banco de dados, vamos executar o script de criação.

cd /usr/share/doc/zabbix-server-mysql-*/ gunzip create.sql.gz mysql -u root -p zabbix < create.sql

Como ultimas configurações precisamos editar os arquivos de configuração.

No arquivo zabbix_server.conf precisamos colocar o host do banco de dados (O zabbix pode ter a máquina de banco e máquina de aplicação em ambientes diferentes), edite o valor da variável DBHost.

vi /etc/zabbix/zabbix_server.conf # line 82: edit DBHost=localhost

Como o Zabbix é um sistema de monitoramento, faz todo sentido ele próprio coletar estatísticas dele, com isso vamos configurar o agente de monitoramento, no arquivo zabbix_agentd.conf.

vi /etc/zabbix/zabbix_agentd.conf # line 95: especificar o Zabbix server Server=[IP]

# line 136: especificar o Zabbix server ServerActive=[IP]

# line 147: change to the own hostname Hostname=[hostname zabbix]

Após as configurações vamos iniciar o serviço do agente e já habilita-lo para iniciar ao startup.

systemctl start zabbix-agent systemctl enable zabbix-agent

Para finalizar a configuração vamos editar o arquivo de configuração do front do Zabbix, zabbix.conf.

vi /etc/httpd/conf.d/zabbix.conf

Se por um acaso você queria permitir que somente uma rede especifica acesse o front acrescente essa linha com o ip da rede.

# line 10: adicionando permissões de acesso para o front do Zabbix Require ip 127.0.0.1 10.0.0.0/24

Caso queria deixar para que qualquer rede enxergue deixe a opção “All”.

Require all granted

Descomente e acrescente o valor da timezone.

php_value date.timezone America/Sao_Paulo

Restarte o Apache, para o mesmo iniciar com as novas configurações.

systemctl restart httpd systemctl restart zabbix-server systemctl enable zabbix-server

Agora acesse via browser o endereço http://[ip_ou_hostname]/zabbix/setup.php, no meu caso será:

http://zabbix01/zabbix/setup.php

Após acessar você verá a seguinte tela, para início da configuração final.

Checagem de pré requisitos.

Configurando a conexão de banco de dados.

Vamos colocar alguns detalhes do Zabbix.

Clique em next step.

Após a tela acima pronto finalizamos a configuração do Zabbix.

Acesse o Zabbix no endereço http://[ip_ou_hostname]/zabbix/ , para o primeiro acesso utilize o username: admin e a senha: zabbix.

Você entrará na tela inicial como esta:

Pronto, seu servidor Zabbix está instalado e pronto para adicionar os hosts e monitoramentos que você desejar.