Zabbix Server 2.0 no CentOS - Instalação e configuração

Vou mostrar neste artigo, como fazer a instalação de um servidor de monitoração Zabbix, em um GNU/Linux CentOS, começando pela instalação das
dependências e depois a instalação compilada.

[ Hits: 35.637 ]

Por: Renato Diniz Marigo em 03/06/2013 | Blog: http://www.renatomarigo.com.br


Instalação e configuração



Instalando o Zabbix Server

Depois das dependências resolvidas, vamos baixar o source do Zabbix, em:
Crie um diretório "/srv/zabbix" e copie o source do Zabbix. Depois, extraia os arquivos:

tar -xvzf zabbix-[Versão].tar.gz

Crie o usuário "zabbix" em seu sistema:

# groupadd zabbix
# useradd -g zabbix zabbix


Preparando o banco de dados MySQL

Entre no MySQL e digite a senha:

# mysql -uroot -p

Crie a database:

mysql> create database zabbixdb;
mysql> quit;

Configure a permissão ao usuário "zabbix":

# mysql -uroot -p -e "grant all privileges on zabbixdb.* to zabbix@localhost identified by 'zabbix';"

Obs.: vá até o diretório descompactado do Zabbix, que possui os arquivos ".sql", no caso desta versão (/srv/zabbix/zabbix- 2.0.6/database/mysql) e, estando neste diretório, digite:

# mysql -u zabbix -p zabbixdb < schema.sql
# mysql -u zabbix -p zabbixdb < images.sql
# mysql -u zabbix -p zabbixdb < data.sql


Agora, o banco de dados está preparado para a instalação do Zabbix.

Configurando os pacotes (sources)

Dentro do diretório do Zabbix (/srv/zabbix/zabbix-2.0.6/), vamos compilá-lo com os seguintes parâmetros:

# ./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-snmp --with-libcurl3 --with-ssh2 # make install

Adicione, ao final do arquivo "/etc/services", as seguintes linhas:

zabbix-agent      10050/tcp  #Zabbix Agent
zabbix-agent      10050/udp  #Zabbix Agent
zabbix-trapper   10051/tcp  #Zabbix Trapper
zabbix-trapper   10051/udp  #Zabbix Trapper


Edite as seguintes linhas do arquivo "/usr/local/etc/zabbix_agentd.conf":

PidFile=/tmp/zabbix_agentd.pid
LogFile=/tmp/zabbix_agentd.log
LogFileSize=1
DebugLevel=3
EnableRemoteCommands=1
LogRemoteCommands=1
Server=127.0.0.1
ListenPort=10050
Hostname=[Nome_do_HOST]


Edite as seguintes linhas do arquivo "/usr/local/etc/zabbix_server.conf":

ListenPort=10051
LogFile=/tmp/zabbix_server.log
LogFileSize=2
PidFile=/tmp/zabbix_server.pid
DBHost=localhost
DBName=zabbixdb
DBUser=zabbix
DBPassword=senha do zabbix para acessar o banco de dados
StartIPMIPollers=1
StartDiscoverers=5
Timeout=3
FpingLocation=/usr/bin/fping


Configurando o front-end PHP

Precisamos ajustar algumas informações do PHP, para os pré-requisitos do Zabbix. Edite o arquivo "/etc/php.ini", com as seguintes opções:

post_max_size = 16M
max_execution_time = 300
max_input_time = 300
date.timezone = America/Sao_Paulo


Configure o Apache para iniciar com o sistema:

# chkconfig --add httpd
# chkconfig --level 35 httpd on


Após editar o arquivo, reinicie o Apache:

# service httpd start

Como estamos configurando um servidor CentOS, o diretório default do Apache é "/var/www/html/". É aconselhável criar um diretório "zabbix":

# mkdir /var/www/html/zabbix

Entre no diretório dos fontes "/srv/zabbix/zabbix-2.0.6/frontends/php" e copie todo o conteúdo para "/var/www/html/zabbix":

# cp -a * /var/www/html/zabbix/
# chown -R apache:apache /var/www/html/zabbix/


Configurando a inicialização do sistema

Entre no diretório "/srv/zabbix/zabbix-2.0.6/misc/init.d/fedora/core" e copie os arquivos para "/etc/init.d":

# cp zabbix-agent /etc/init.d
# cp zabbix-server /etc/init.d


Dê permissão de execução para estes arquivos:

# chmod +x /etc/init.d/zabbix_server /etc/init.d/zabbix_agentd

Inicie os serviços:

# /etc/init.d/zabbix_server start
# /etc/init.d/zabbix_agentd start


Verifique se os processos estão rodando:

# ps -ef|grep zabbix
 zabbix 15833     1  0 10:19 ?  00:00:00 /usr/local/sbin/zabbix_server
 zabbix 15835 15833  0 10:19 ?  00:00:00 /usr/local/sbin/zabbix_server
 zabbix 15836 15833  0 10:19 ?  00:00:00 /usr/local/sbin/zabbix_server
 zabbix 15838 15833  0 10:19 ?  00:00:00 /usr/local/sbin/zabbix_server

Atualize os arquivos de inicialização do sistema. Adicione os serviços:

# chkconfig --add zabbix_agentd
# chkconfig --add zabbix_server
# chkconfig --level 35 zabbix_agentd on
# chkconfig --level 35 zabbix_server on


Verificando:

# chkconfig --list|grep zabbix
 zabbix_agentd 0:off 1:off 2:off 3:on  4:off 5:on  6:off
 zabbix_server 0:off 1:off 2:off 3:on  4:off 5:on  6:off

Configurando o firewall

Nós precisamos configurar uma regra de firewall permitindo o acesso do servidor na porta 80, para que a publicação do site seja visível a todos os hosts.

Adicione a seguinte linha no arquivo "/etc/sysconfig/iptables":

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT


Adicione, também, estas duas linhas que são as portas que o Zabbix trabalha:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 10050 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 10051 -j ACCEPT


Obs.: estas linhas devem ser adicionadas antes das regras de REJECT, deste arquivo.

Agora, atualize as regras:

# iptables-restore /etc/sysconfig/iptables

Temos também que desabilitar o SELinux para o site funcionar.

Edite o arquivo /etc/sysconfig/selinux:

SELINUX=permissive


Reinicie o servidor para que as configurações tenham efeito.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução e preparação
   2. Instalação e configuração
   3. Finalizando a instalação pela interface gráfica
Outros artigos deste autor

Introdução ao Shell Script

Instalação do Docker no CentOS 7

Comando: journalctl - Monitoramento de LOGs

VLAN Tagging nos sistemas GNU/Linux derivados do Red Hat

Instalação do WordPress no CentOS 7

Leitura recomendada

My Traceroute (MTR) , uma ferramenta de diagnóstico de rede

Docker e Flannel

Análise de Desempenho: Web API

Observium - Monitoramento de Rede

Interface de Rede Virtual no Debian

  
Comentários
[1] Comentário enviado por ederpaulopereira em 03/06/2013 - 11:06h

Vou usar este tutorial como base para instalação em meu servidor. Entrei em contato com você semana passada por email. Desde já obrigado.

[2] Comentário enviado por renizgo em 07/06/2013 - 13:14h

Ok, se precisar de ajuda pode pedir.


[1] Comentário enviado por ederpaulopereira em 03/06/2013 - 11:06h:

Vou usar este tutorial como base para instalação em meu servidor. Entrei em contato com você semana passada por email. Desde já obrigado.



[3] Comentário enviado por andrejhonny em 10/06/2013 - 19:39h

Olá.
Pergunta: Zabbix ou Nagios? Por que?
Obrigado.

[4] Comentário enviado por LuizNOHUP em 12/06/2013 - 14:30h


renizgo,

você possui algum tutorial bom que explique como deve ser as configurações das templates?


[5] Comentário enviado por renizgo em 20/06/2013 - 16:45h


[3] Comentário enviado por andrejhonny em 10/06/2013 - 19:39h:

Olá.
Pergunta: Zabbix ou Nagios? Por que?
Obrigado.


Difícil esta pergunta, o Zabbix é mais simples para aprender e trabalhar, o Nagios eu acho mais complexo porém mais poderoso e mais usado no mei corporativo.

[6] Comentário enviado por renizgo em 20/06/2013 - 16:48h

Não tenho, mas na instalação o Zabbix já vem com muitos templates que podem ser usados e você pode criar os seus, se tem algum item ou trigger que deve ser verificado em muitos servidores é aconselhável o uso dos templates e associá-los ao servidores.


[4] Comentário enviado por LuizNOHUP em 12/06/2013 - 14:30h:


renizgo,

você possui algum tutorial bom que explique como deve ser as configurações das templates?




[7] Comentário enviado por adilson_santos em 20/07/2013 - 21:19h

Olá Renato,
Fiz o seu passo a passo porem quando entro com IP do servidor ele não traz a tela principal do zabbix e sim os arquivos, fiz um teste digitando somente o endereço e a tela do apache, veem normal,
Será que precisa alterar alguma configuração no apache

Abraços
Adilson

[8] Comentário enviado por rodolfo9292 em 23/09/2013 - 17:43h

O mysql pode ser substituido por postgresql? pois é plataforma do banco que eu ja utilizo.

[9] Comentário enviado por rslemer em 12/04/2014 - 21:22h

Muito, muito bom mesmo!!!

[10] Comentário enviado por lincoln.aniceto em 13/05/2014 - 18:24h

se aparecer arquivos em vez da pagina do zabbix:

edite o /etc/httpd/conf/httpd.conf

coloque na linha DirectoryIndex:
index.php

no final coloque AddType application/x-httpd-php .php

e na sequencia de LaodModule:
LoadModule php5_module modules/libphp5.so

tive esse prolema e resolvi dessa maneira.

òtimo Tutorial, Parabéns renizgo.

[11] Comentário enviado por frodopuc em 14/04/2015 - 09:07h


[10] Comentário enviado por lincoln.aniceto em 13/05/2014 - 18:24h

se aparecer arquivos em vez da pagina do zabbix:

edite o /etc/httpd/conf/httpd.conf

coloque na linha DirectoryIndex:
index.php

no final coloque AddType application/x-httpd-php .php

e na sequencia de LaodModule:
LoadModule php5_module modules/libphp5.so

tive esse prolema e resolvi dessa maneira.

òtimo Tutorial, Parabéns renizgo.


Apos adicionar o modulo... deu erro... tirei o modulo e subi o serviço httpd, funcionou normal, ao entrar no site da instalação ele faz download de um arquivo e nao acessa a página

service httpd restart
Stopping httpd: [ OK ]
Starting httpd: httpd: Syntax error on line 201 of /etc/httpd/conf/httpd.conf: Cannot load /etc/httpd/modules/libphp5.so into server: /etc/httpd/modules/libphp5.so: cannot open shared object file: No such file or directory
[FAILED]

[12] Comentário enviado por frodopuc em 14/04/2015 - 09:16h


[11] Comentário enviado por frodopuc em 14/04/2015 - 09:07h


[10] Comentário enviado por lincoln.aniceto em 13/05/2014 - 18:24h

se aparecer arquivos em vez da pagina do zabbix:

edite o /etc/httpd/conf/httpd.conf

coloque na linha DirectoryIndex:
index.php

no final coloque AddType application/x-httpd-php .php

e na sequencia de LaodModule:
LoadModule php5_module modules/libphp5.so

tive esse prolema e resolvi dessa maneira.

òtimo Tutorial, Parabéns renizgo.

Apos adicionar o modulo... deu erro... tirei o modulo e subi o serviço httpd, funcionou normal, ao entrar no site da instalação ele faz download de um arquivo e nao acessa a página

service httpd restart
Stopping httpd: [ OK ]
Starting httpd: httpd: Syntax error on line 201 of /etc/httpd/conf/httpd.conf: Cannot load /etc/httpd/modules/libphp5.so into server: /etc/httpd/modules/libphp5.so: cannot open shared object file: No such file or directory
[FAILED]


IGNORA... achei o erro, era só atualizar o caminho do modulo ahahaha
foi mal

[13] Comentário enviado por felipe10bsb em 08/03/2016 - 13:37h

Bom dia galera, estou tentando instalar um servidor zabbix aqui no meu centos 5, e após toda a instalação das dependencias, da criação do banco e extração dos arquivos eu configuro o zabbix, qndo dou um #make install ele me da um erro de que
make: **** Sem regra para processar o alvo 'install'. Pare.

Por favor peço a ajuda dos senhores quanto a esse erro Obrigado.

[14] Comentário enviado por renizgo em 08/03/2016 - 14:33h


[13] Comentário enviado por felipe10bsb em 08/03/2016 - 13:37h

Bom dia galera, estou tentando instalar um servidor zabbix aqui no meu centos 5, e após toda a instalação das dependencias, da criação do banco e extração dos arquivos eu configuro o zabbix, qndo dou um #make install ele me da um erro de que
make: **** Sem regra para processar o alvo 'install'. Pare.

Por favor peço a ajuda dos senhores quanto a esse erro Obrigado.


Tudo bem?

Você instalou o make e makedev?

# yum install make MAKEDEV

Acredito que a parte que está falando é que o comando é em duas linhas:

# ./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-snmp --with-libcurl3 --with-ssh2

Depois deste comando você digita:

# make install

Depois avise se funcionou?


[15] Comentário enviado por Ysla em 19/05/2017 - 10:52h

Bom dia, ótimo artigo!
Qual é a versão do CentOS que você está usando ?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts