A versão do zabbix utilizada neste artigo é antiga e o método de instalação pode diferir em novas versões.
- Ambiente de instalação
- Zabbix 2.4.7
- PHP 7.0.0
- Mariadb 10.1.9
- Apache 2.4.17
- Slackware 14.1 64 Current
A instalação é feita no equipamento a ser monitorado com objetivo de coletar informações sobre aplicações e recursos locais, como memória, disco rígido, estatísticas do processador etc.
O agente Zabbix é extremamente eficiente porque utiliza chamadas de sistemas nativas para capturar estatísticas dos serviços. As informações são enviadas para serem processados no servidor Zabbix. Em caso de falhas como defeito no disco rígido ou interrupção de um serviço, o servidor Zabbix pode informar o administrador responsável.
Download e instalação
Antes de executar o script zabbix_agentd.SlackBuild, crie o usuário e grupo zabbix assim como o usuário zabbixagent. O script não irá funcionar antes que os usuários e o grupo forem criados.
# Shell
groupadd -g 228 zabbix useradd -u 228 -g zabbix -d /dev/null -s /bin/false zabbix useradd -u 266 -g zabbix -d /dev/null -s /bin/false zabbixagent
Faça o download do zabbix_agentd no site do Slackbuilds, se quiser utilizar a última versão disponível é possível fazer o download do source diretamente no Site do Zabbix na sessão Zabbix Sources. Caso utilize uma versão do source diferente da disponível no site Slackbuilds, será necessário alterá-la no arquivo zabbix_server.SlackBuild antes de executar o script.
# Shell
tar -zxf zabbix_agentd.tar.gz
mv zabbix-2.4.7.tar.gz zabbix_agentd/
cd zabbix_agentd/
vi zabbix_agentd.SlackBuild # Altere a versão nesta linha VERSION=${VERSION:-2.4.7}
./zabbix_agentd.SlackBuild
installpkg /tmp/zabbix_agentd-2.4.7-x86_64-1_SBo.tgz
Caso altere a versão o script pode falhar, irá depender das atualizações da nova versão.
Configurando
Copie o arquivo rc.zabbix_agentd que esta dentro da pasta zabbix_agentd recém descompactada do slackbuild para /etc/rc.d e de permissão de execução.
# Shell
cp rc.zabbix_agentd /etc/rc.d/ chmod +x /etc/rc.d/rc.zabbix_agentd
Altere o arquivo /etc/rc.d/rc.zabbix_agentd substituindo @ZABBIXAGENTUSER@ por zabbixagent:
/etc/rc.d/rc.zabbix_agentd
Troque a linha: su -s /bin/sh -c "${PRGDIR}${PRGNAM} >> ${LOGDIR}${PRGNAM}.log 2>&1" @ZABBIXAGENTUSER@ Por: su -s /bin/sh -c "${PRGDIR}${PRGNAM} >> ${LOGDIR}${PRGNAM}.log 2>&1" zabbixagent
Para colocar o serviço agente do zabbix na inicialização do sistema, edite o arquivo /etc/rc.d/rc.local adicionando as linhas:
/etc/rc.d/rc.local
# Start the Zabbix Agent:
if [ -x /etc/rc.d/rc.zabbix_agentd ]; then
. /etc/rc.d/rc.zabbix_agentd start
fi
Para que o serviço seja encerrado corretamente no desligamento do sistema, edite o arquivo /etc/rc.d/rc.local_shutdown adicionando as seguintes linhas:
# Shell
# Stop zabbix_agentd
if [ -x /etc/rc.d/rc.zabbix_agentd ]; then
echo "Stopping zabbix agent daemon..."
/etc/rc.d/rc.zabbix_agentd stop
fi
Edite o arquivo de configuração /etc/zabbix/zabbix_agentd.conf, este deve conter as configurações básicas abaixo para que seja possível iniciar o agente Zabbix:
zabbix_agentd.conf
### GENERAL PARAMETERS ### PidFile=/var/run/zabbix/zabbix_agentd.pid LogFile=/var/log/zabbix/zabbix_agentd.log # Lista de ips ou hostname dos servidores separados por virgula. Somente serão aceitas conexões a partir de servidores listados aqui Server=x.x.x.x # Lista de ips ou hostname dos servidores separados por virgula para checagens ativas. Somente serão aceitas conexões a partir de servidores listados aqui ServerActive=x.x.x.x # Nome do servidor zabbix, obrigatório para checagens ativas, único e sensitivo a maiúsculas. Deve ser igual ao nome do host configurado na interface web Hostname=Zabbix server
Para iniciar o serviço do agente Zabbix use o comando:
# Shell
/etc/rc.d/rc.zabbix_agentd start
Caso ocorra algum erro você pode checar o arquivo de log /var/log/zabbix/zabbig_agentd.log. Se o serviço não iniciar e o arquivo não mostrar nenhuma informação, pode ser que o usuário zabbixagent esteja sem permissão de leitura e gravação(rw) na pasta ou no arquivo.
# Shell
chown zabbix.zabbix /var/log/zabbix/ chown zabbixagent.zabbix /var/log/zabbix/zabbix_agentd.log chmod 644 /var/log/zabbix/zabbix_agentd.log
O Zabbix utiliza as portas 10050 e 10051 para se comunicar, portanto cheque se estas portas não estão bloqueadas em sua rede.