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: 36.900 ]

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

WordPress com Docker

Introdução ao Shell Script

Instalação de um Servidor Web

Instalação do CentOS Atomic para Gerenciamento de Containers Docker

Instalação do Docker no CentOS 7

Leitura recomendada

Utilizando o script vpnautomatica

Openswan - Configurando uma conexão VPN Site-to-Site e simulando com GNS3

Monitorando Rede com Zabbix no Debian 7

Testando velocidade entre equipamentos Ubiquiti

Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota

  
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