Idioma
Categoria
Pesquisar

Instalando o agente do Zabbix no Slackware

Como compilar, instalar, configurar e habilitar Zabbix Agent no Slackware Linux

Em Open Source Por Rudi Drusian Lange
Publicado em
Última atualização

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.