Instalando Zabbix Agent no CentOS/RHEL 6 e 7

Olá amigos.

O agente Zabbix concentra as informações locais sobre o dispositivo monitorado para posterior envio ao servidor ou proxy Zabbix (dependendo da configuração). Em caso de falhas (como um disco cheio ou a interrupção de um processo) o servidor Zabbix pode alertar .

Existe inúmeros agentes como (FreeBSD, OpenBSD, Windows, Centos, Debian, openSUSE, Ubuntu, Ipmi, Jmx e SNMP).

Abaixo vamos realizar a simples instalação do Zabbix Agente .

Adicionar repositórios
Vamos executar os comandos abaixo conforme o seu SO para adicionar o Zabbix agente ao repositório

CentOS 6 execute o comando abaixo:

rpm -Uvh http://repo.zabbix.com/zabbix/4.0/rhel/6/x86_64/zabbix-release-4.0-1.el6.noarch.rpm

CentOS 7 execute o comando abaixo:

rpm -Uvh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm

Instalando o Zabbix Agente

yum install zabbix-agent

Definindo o arquivo de configuração
Minha sugestão é deletar o arquivo original de configuração e criar um arquivo novo somente com as informações necessárias :

rm /etc/zabbix/zabbix_agentd.conf

Agora vamos criar o novo arquivo e informar as configurações necessarias:

vim /etc/zabbix/zabbix_agentd.conf

Adicione as linhas abaixo, lembrando de substituir o endereço do servidor zabbix e o nome do servidor monitorado:

PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
DebugLevel=3
Server=IP DO SERVIDOR ZABBIX
StartAgents=5
ServerActive=IP DO SERVIDOR ZABBIX
Hostname=HOSTNAME DA MAQUINA MONITORADA
Timeout=3
Include=/etc/zabbix/zabbix_agentd.d/*.conf

Iniciando o serviço do Zabbix Agent

CentOS 6 execute o comando abaixo para habilitar a inicialização e subir o serviço:

# service zabbix-agent start
# chkconfig zabbix-agent on

CentOS 7 execute o comando abaixo para habilitar a inicialização e subir o serviço:

# systemctl start zabbix-agent
# systemctl enable zabbix-agent

Liberando as portas no iptables

Caso o firewall do servidor esteja habilitado é necessário executar o comando abaixo para liberação da porta de comunicação:

iptables -A INPUT -p tcp -s 192.168.1.100 --dport 10050 -m state --state NEW,ESTABLISHED -j ACCEPT

Lembrando que é necessario subistituir o ip do comando pelo o ip do seu server Zabbix.

Validando a Execução do Agente

Execute o comando abaixo para validar a execução do Zabbix Agent :

systemctl status zabbix-agent

Conforme a imagem abaixo você pode ver que o serviço do Zabbix está rodando.

Bom pessoal o procedimento é simples e qualquer duvida estou a disposição.

Abraços

Continue Reading

Script para automatizar a instalação do Zabbix Agente

Olá Amigos.
Recentemente venho trabalhando bastante com o Zabbix que me surpreendeu pela eficiência e facilidade que a ferramenta tem de se moldar ao seu ambiente.

O agente Zabbix é instalado no dispositivo a ser monitorado, também monitora ativamente os recursos e aplicações locais (discos e partições, memória, estatísticas do processador, etc).
O que mais me chama atenção é que o agente Zabbix são muito eficientes pois utilizam chamadas nativas do sistema operacional para obter as informações estatísticas.

O agente Zabbix é suportado por:
• Linux
• IBM AIX
• FreeBSD
• NetBSD
• OpenBSD
• HP-UX
• Mac OS X
• Solaris: 9, 10, 11
• Windows: 2000, Server 2003, XP, Vista, Server 2008, 2012, 2016 , 7 , 8 10

O problema:

Há alguns dias tive o problema de ter que publicar para todos os servidores da empresa o Zabbix, e a ideia que tive foi fazer um script para copiar os executáveis do monitoramento e criar o arquivo de configuração pegando o nome do servidor e passando para o arquivo de configuração.
Depois do script criado a minha ideia foi utilizar um GPO para aplicar esse script para OU que contem os servidores. Basicamente uma solução rápida.

Segue abaixo o script:

@echo off
REM #
REM #versao mark-v0.2#
REM #
REM #NOME#
REM #instala_zabbix.exe#
REM #
REM #DESCRICAO#
REM #Instalao Zabbix via rede nos servidores Windows#
REM #
REM #
REM #GERALDO LUCAS POLI (27/07/2018)#
REM # Verifica existencia diretório Zabbix #

REM #MODULO 1#
IF EXIST "c:\Zabbix\zabbix_agentd.exe" (exit) ELSE (echo "Iniciando a instalacao do Zabbix Agent")
REM #
REM # Exibe mensagem na tela#
echo Copiando Arquivos

REM #MODULO 2 - Criar o diretório na máquina#
mkdir c:\zabbix
echo Pasta zabbix criada no C:

REM #MODULO 3 - Realiza a cópia dos binários para o sistema#
xcopy \\192.168.2.12\zabbix\zabbix_agents_3.4.6.win\bin\win64\zabbix_agentd.exe c:\zabbix\
xcopy \\192.168.2.12\zabbix\zabbix_agents_3.4.6.win\bin\win64\zabbix_get.exe c:\zabbix\
xcopy \\192.168.2.12\zabbix\zabbix_agents_3.4.6.win\bin\win64\zabbix_sender.exe c:\zabbix\

REM #MODULO 4 *PUNK* - Cria arquivo de configuração e define nome do servidor #
echo Criando Arquivos de configuracao
echo Server=192.168.1.26 > c:\zabbix\zabbix_agentd.conf
echo Hostname=%COMPUTERNAME% >> c:\zabbix\zabbix_agentd.conf
echo StartAgents=5 >> c:\zabbix\zabbix_agentd.conf
echo DebugLevel=3 >> c:\zabbix\zabbix_agentd.conf
echo LogFile=c:\zabbix\zabbix_agentd.log >> c:\zabbix\zabbix_agentd.conf
echo Timeout=5 >> c:\zabbix\zabbix_agentd.conf
echo EnableRemoteCommands=1 >> C:\zabbix\zabbix_agentd.conf

REM #MODULO 4 - Ajustes Finais #
echo Instalando o Serviço
C:\zabbix\zabbix_agentd.exe -i -c C:\zabbix\zabbix_agentd.conf
C:\zabbix\zabbix_agentd.exe -s -c C:\zabbix\zabbix_agentd.conf
echo As configuracoes para o servidor %COMPUTERNAME% foram criadas em %date% as %time%
echo As configuracoes para o servidor %COMPUTERNAME% foram criadas em %date% as %time% > c:\Zabbix\inst_agent.log
pause

 

Link do código sempre atualizado no GIT:

GitHub

Considerações:

Podemos ver que o script é bem simples.
Dividi ele em  4 módulos para ficar mais fácil o entendimento, qualquer duvida estou a disposição.

Até a próxima.

Continue Reading