Instalacao do Zabbix em Ambiente CentOS

Introdução:

Demonstrarei neste tutorial a instalação do Zabbix no Sistema Operacional GNU/Linux CentOS.

Pré-Requisitos:

Apache (httpd)
Php (php php-common)
Módulos Php:
MySQL (php-mysql)
GD (php-gd)
BC Math (php-bcmath)
Multibyte String (php-mbstring)
XML (php-xml)
MySQL (mysql mysql-server mysql-devel)
Net-Snmp (net-snmp net-snmp-devel net-snmp-utils net-snmp-libs)
GCC (gcc gcc-devel)
cURL (curl curl-devel)

Suprir as Dependências:

Antes de iniciarmos a instalação do Zabbix precisamos suprir as dependências.

# yum -y install httpd php php-common php-mysql php-gd php-bcmath php-mbstring php-xml mysql mysql-server mysql-devel net-snmp net-snmp-devel net-snmp-utils net-snmp-libs gcc gcc-devel gcc-devel curl curl-devel

Realizar o Download dos Fontes:

Por questões de organização eu sempre crio um diretório "/install" e dentro dele vou criando os sub-diretórios com o nome dos softwares que preciso instalar.
No caso do Agente observe a Versão do seu Kernel e a Arquitetura do seu Processador antes de baixar o pacote. No exemplo abaixo, baixei um pacote compatível com Kernel 2.6 e Arquitetura i386.

# mkdir /install
# cd /install/
# mkdir zabbix
# cd zabbix/
# wget http://prdownloads.sourceforge.net/zabbix/zabbix-*.tar.gz?download (external link)
# wget http://www.zabbix.com/downloads/*/zabbix_agents_*.linux2_6.i386.tar.gz (external link)

Observação:
Substitua o "*" pela versão do Zabbix.

Criar a Conta do Usuário Zabbix:

# adduser zabbix -s /bin/false

Descompactar os Fontes:

# tar xzvf zabbix-*.tar.gz

Criar a Base de Dados do Zabbix:

# service mysqld start
# mysql -u root

mysql> create database zabbix;
mysql> quit;

# cd zabbix-*/create/schema/
# cat mysql.sql | mysql -u root zabbix
# cd ../data
# cat data.sql | mysql -u root zabbix
# cat images_mysql.sql | mysql -u root zabbix

Configurar e Compilar os Códigos Fontes (Sources):

# cd ../..
# ./configure --enable-server --with-mysql --with-net-snmp --with-libcurl --enable-agent

Realizar a Instalação:

# make install

Configurar o "/etc/services":

Edite o arquivo e acrescente ao final do mesmo as informações abaixo
# vi /etc/services
zabbix-agent               10050/tcp                         #Zabbix Agent
zabbix-agent               10050/udp                        #Zabbix Agent
zabbix-trapper           10051/tcp                         #Zabbix Trapper
zabbix-trapper           10051/udp                        #Zabbix Trapper

Descompactar o Agente:

# mkdir /etc/zabbix
# cp /install/zabbix/zabbix_agents_*.linux2_6.i386.tar.gz /etc/zabbix/
# cd /etc/zabbix/
# tar xzvf zabbix_agents_*.linux2_6.i386.tar.gz
# mv bin/* .
# mv sbin/* .
# rm -rf zabbix_agents_*.linux2_6.i386.tar.gz
# rm -rf bin/
# rm -rf sbin/

Copiar os arquivos de configuração e acertar as permissões do diretório "/etc/zabbix":

# cp /install/zabbix/zabbix-*/misc/conf/zabbix_server.conf .
# cp /install/zabbix/zabbix-*/misc/conf/zabbix_agentd.conf .
# chown -R zabbix:zabbix /etc/zabbix/

Configurar o "/etc/zabbix/zabbix_server.conf":

# vi /etc/zabbix/zabbix_server.conf

Se a sua base de dados possuir senha altere o parâmetro:
DBPassword=zabbix

Observação:
Neste caso a senha da base de dados é "zabbix".

Configurar o "/etc/zabbix/zabbix_agentd.conf":

# vi zabbix_agentd.conf

Conteúdo Mínimo do Arquivo:
Server=IP do Servidor do Zabbix

Hostname=Nome da máquina Cliente

StartAgents=3

DebugLevel=3

PidFile=/var/tmp/zabbix_agentd.pid

LogFile=/tmp/zabbix_agentd.log

Timeout=3

Observação:
Os arquivos de configuração possuem outros parâmetros, todos com comentários sobre seu uso, este é o conteúdo mínimo dos arquivos, mas você deve verificar todas as opções disponíveis e decidir quais habilitar.

Iniciar o Zabbix:

# /usr/local/sbin/zabbix_server
# /usr/local/sbin/zabbix_agentd

Verificar a execução dos processos:

# ps -aux | grep zabbix

Instalar e Configurar a Interface Web:

# mkdir /var/www/html/zabbix
# cp -r /install/zabbix/zabbix-*/frontends/php/* /var/www/html/zabbix/

Alterar os Parâmetros do "/etc/php.ini":

# vi /etc/php.ini

max_execution_time = 600
max_input_time = 600
memory_limit = 256M
post_max_size = 32M
upload_max_filesize = 16M
date.timezone = "America/Sao_Paulo"
mbstring.func_overload = 2

Reiniciar o Servidor Web:

Após alterar os parâmetros do PHP é preciso reiniciar o Apache.__''

# service httpd restart

Finalizar as Configurações via Interface Gráfica:

Abra o browser e aponte para o endereço do servidor Zabbix.

http://IP/zabbix/ (external link)


Tela de Boas Vindas, clique em "Next >>"


Licença GPL V2 (external link), marque a opção "I agree" e clique em "Next >>"


Checagem de Pré-requisitos exibindo a informação de que todos os pré-requisitos estão "OK", clique em "Next >>"


Configurar conexão com o Banco de Dados, se sua base de dados possui senha, digite a mesma no campo "Password", caso contrário deixe em branco e clique em "Test connection".


Se tudo ocorreu bem você deve receber a mensagem informando que a conexeção com o banco de dados está "OK", clique em "Next >>"


Host e Porta do servidor Zabbix, clique em "Next >>"


Resumo da instalação, clique em "Next >>"


Instalação, neste momento recebemos a informação que o arquivo de configuração não foi encontrado, é preciso salvar manualmente o arquivo em "/var/www/html/zabbix/conf/" com o nome de "zabbix.conf.php", clique em "Save configuration file" e salve o arquivo no local indicado, clique em "Retry" para realizar a verificação novamente.


Instalação exibindo a informação de que o arquivo de configuração está "OK", clique em "Next >>"


Finalização, tela informando que a instalação ocorreu com sucesso, clique em "Finish".


Tela de login, bem vindo ao Zabbix!

Observação:
Usuário: admin
Senha: zabbix

Criado por: André Déo