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:
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.