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