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.