A partir de agora, iniciaremos a configuração para compilar e instalar o
Zabbix no sistema, bem como torná-lo operacional.
Configuração básica do sistema
Neste passo faremos uma pré-configuração para instalação e compilação do Zabbix.
Crie o usuário Zabbix:
# adduser --no-create-home --disabled-password --disabled-login --shell=/bin/false zabbix
Como já estão instalados os pacotes apache2 e mysql-server, reinicie os mesmos para verificar o correto funcionamento.
# /etc/init.d/apache2 restart
# /etc/init.d/mysql restart
Compilando o Zabbix e a base de dados
Descompacte o Zabbix que está localizado na pasta /usr/src/ e compile o Zabbix.
Execute os comandos seguintes:
# cd /usr/src/
# tar -xzvf zabbix-1.8.8.tar.gz
# cd zabbix-1.8.8
# ./configure --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-ldap --with-ssh2 --enable-proxy --with-jabber --prefix=/usr/local/zabbix PKG_CONFIG_PATH=/usr/lib/pkgconfig/ PKG_CONFIG=/usr/bin/pkg-config
NOTA: Observe que estamos habilitando na compilação, o servidor Zabbix e o agente, suporte a base de dados MySQL, protocolo SNMP, biblioteca Libcurl, SSH, autenticação LDAP, suporte a proxy e protocolo Jabber. Se desejar, utilize o comando ./configure --help para conhecer outros parâmeros que podem ser utilizados na compilação.
NOTA: Nesta parte estamos passando por parâmetro os caminhos (paths) do pkg-config, que é necessário para a compilação do Zabbix.
Neste momento o Zabbix já foi compilado e serão exibidas informações sobre o resultado da compilação e os recursos que foram habilitados. Seguiremos, portanto, com a preparação da base de dados MySQL e, em seguida, com a instalação propriamente dita.
No shell, crie a base de dados no MySQL:
# mysql -u root -p -e "create database zabbix;"
Crie um usuário chamado Zabbix:
# mysql -u root -p -e "GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost IDENTIFIED BY 'NOVA_SENHA';"
Execute os scripts sql para criar a base de dados Zabbix no MySQL:
# mysql -u zabbix -p zabbix < create/schema/mysql.sql
# mysql -u zabbix -p zabbix < create/data/data.sql
# mysql -u zabbix -p zabbix < create/data/images_mysql.sql
Instale o Zabbix:
# make install
Realizando ajustes finais no sistema
Edite o arquivo /etc/services:
# vi /etc/services
Adicione as linhas:
zabbix_agent 10050/tcp # Zabbix Agent
zabbix_trap 10051/tcp # Zabbix Server
Crie o diretório /etc/zabbix e copie os arquivos de configuração para dentro dele.
# mkdir /etc/zabbix
# cp misc/conf/zabbix_server.conf misc/conf/zabbix_agent* /etc/zabbix/
Crie os diretórios para armazenagem dos arquivos de logs e do pid.
# mkdir /var/log/zabbix
# mkdir /var/run/zabbix
Altere a propriedade do diretório /var/log/zabbix e var/run/zabbix para o usuário zabbix.
# chown zabbix: /var/log/zabbix /var/run/zabbix
NOTA: É importante realizar a configuração do logrotate para os dois arquivos de log do Zabbix. Isso impedirá que seu arquivo de log fique muito grande e ocupe muito espaço em disco desnecessariamente.
Durante o processo de boot todos os arquivos e diretórios do /var/run são apagados, portanto, utilize outro diretório para armazenar o pid como o /var/tmp ou /tmp. Lembre-se de mudar em todas as referencias de /var/run para o diretório escolhido.
Configurando o Zabbix Server
Edite o arquivo
/etc/zabbix/zabbix-server.conf:
# vi /etc/zabbix/zabbix_server.conf
Modifique ou descomente as seguintes linhas abaixo e configure de acordo com a necessidade do seu ambiente.
# Define um Node ID exclusivo
NodeID=0
# Fequencia de envio de alertas
SenderFrequency=30
# Nível do debug no Log File
DebugLevel=3
# Timeout de conexão com o agente
Timeout=5
# Caminho do arquivo pid do Zabbix Server
PidFile=/var/tmp/zabbix/zabbix_server.pid
# Caminho do arquivo de log do Zabbix Server
LogFile=/var/log/zabbix/zabbix_server.log
# Tamanho do arquivo de log
LogFileSize=2
# Caminho dos scripts customizados
AlertScriptsPath=/home/zabbix/bin/
# Servidor MySQL
DBHost=localhost
# Nome da base de dados no MySQL
DBName=zabbix
# Usuário da base de dados no MySQL
DBUser=zabbix
# Senha do usuário Zabbix no MySQL
DBPassword=<password>
O Zabbix está configurado no sistema. Agora configure o serviço zabbix-server para inicializar automaticamente no sistema.
# cp misc/init.d/debian/zabbix-server /etc/init.d/
# chmod a+x /etc/init.d/zabbix-server
Entre no rcconf e habilite o zabbix-server.
# rcconf
Edite o arquivo
/etc/init.d/zabbix-server:
# vi /etc/init.d/zabbix-server
Edite as linhas de acordo com o exemplo seguinte:
NAME=zabbix_server
DAEMON=/usr/local/zabbix/sbin/$NAME
DESC="Zabbix server daemon"
PID=/var/run/zabbix/$NAME.pid
PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/zabbix/sbin:/usr/local/zabbix/bin
Inicie o servidor Zabbix:
# /etc/init.d/zabbix-server start