首页 > 代码库 > windows上一键自动安装zabbix-agent

windows上一键自动安装zabbix-agent

一、简介

       zabbix是开源界流行的监控程序,C/S架构,运行多种系统平台安装,个人认为windows平台的 zabbix-agent安装最为烦琐,unix及linux平台通过自动化运维工具可一键远程安装,而windows目前没有好的方法,所以就参考网上写了一个脚本(包含zabbix-agent 2.4.5客户端),一键安装并配置好防火墙。


二、安装脚本(配置文件)

请先修改脚本中zabbbix_server 为自己的zabbix服务器ip

@Echo off
setlocal enabledelayedexpansion
:: 需要修改IP(填写自己zabbix服务器IP地址)
set zabbix_server=10.168.118.91
:: 替换配置文件中的server ip
set conf_file=%~dp0\zabbix_agents_2.4.4.win\conf\zabbix_agentd.win.conf
for /f "delims=" %%a in (‘type "%conf_file%"‘) do (
  set str=%%a
  set "str=!str:127.0.0.1=%zabbix_server%!"
  echo !str!>>"%conf_file%"_tmp.txt
)
move "%conf_file%" "%conf_file%"_bak.txt
move "%conf_file%"_tmp.txt "%conf_file%"
:: 32 bit or 64 bit process detection
IF "%PROCESSOR_ARCHITECTURE%%PROCESSOR_ARCHITEW6432%"=="x86" (
  set _processor_architecture=32bit
  goto x86
) ELSE (
  set _processor_architecture=64bit
  goto x64
)
:x86
xcopy "%~dp0\zabbix_agents_2.4.4.win\bin\win32" c:\zabbix_x86 /e /i /y
copy "%conf_file%" c:\zabbix_x86\zabbix_agentd.conf /y
sc stop  "Zabbix Agent" >nul 2>nul
sc delete  "Zabbix Agent" >nul 2>nul
c:\zabbix_x86\zabbix_agentd.exe -c c:\zabbix_x86\zabbix_agentd.conf -i
c:\zabbix_x86\zabbix_agentd.exe -c c:\zabbix_x86\zabbix_agentd.conf -s
goto firewall
:x64
xcopy "%~dp0\zabbix_agents_2.4.4.win\bin\win64" c:\zabbix_x64 /e /i /y
copy "%conf_file%" c:\zabbix_x64\zabbix_agentd.conf /y
sc stop  "Zabbix Agent" >nul 2>nul
sc delete  "Zabbix Agent" >nul 2>nul
c:\zabbix_x64\zabbix_agentd.exe -c c:\zabbix_x64\zabbix_agentd.conf -i
c:\zabbix_x64\zabbix_agentd.exe -c c:\zabbix_x64\zabbix_agentd.conf -s
goto firewall
:firewall
:: Get windows Version numbers
For /f "tokens=2 delims=[]" %%G in (‘ver‘) Do (set _version=%%G) 
For /f "tokens=2,3,4 delims=. " %%G in (‘echo %_version%‘) Do (set _major=%%G& set _minor=%%H& set _build=%%I) 
Echo Major version: %_major%  Minor Version: %_minor%.%_build%
:: OS detection
IF "%_major%"=="5" (
  IF "%_minor%"=="0" Echo OS details: Windows 2000 [%_processor_architecture%]
  IF "%_minor%"=="1" Echo OS details: Windows XP [%_processor_architecture%]
  IF "%_minor%"=="2" IF "%_processor_architecture%"=="32bit" Echo OS details: Windows 2003 [%_processor_architecture%]
  IF "%_minor%"=="2" IF "%_processor_architecture%"=="64bit" Echo OS details: Windows 2003 or XP 64 bit [%_processor_architecture%]
  :: 开启防火墙10050端口
  netsh firewall delete portopening protocol=tcp port=10050
  netsh firewall add portopening protocol=tcp port=10050 name=zabbix_10050 mode=enable scope=custom addresses=%zabbix_server%
) ELSE IF "%_major%"=="6" (
  IF "%_minor%"=="0" Echo OS details: Windows Vista or Windows 2008 [%_processor_architecture%]
  IF "%_minor%"=="1" Echo OS details: Windows 7 or Windows 2008 R2 [%_processor_architecture%]
  IF "%_minor%"=="2" Echo OS details: Windows 8 or Windows Server 2012 [%_processor_architecture%]
  IF "%_minor%"=="3" Echo OS details: Windows 8.1 or Windows Server 2012 R2 [%_processor_architecture%]
  IF "%_minor%"=="4" Echo OS details: Windows 10 Technical Preview [%_processor_architecture%]
  :: 开启防火墙10050端口
  netsh advfirewall firewall delete rule name="zabbix_10050"
  netsh advfirewall firewall add rule name="zabbix_10050" protocol=TCP dir=in localport=10050 action=allow remoteip=%zabbix_server%
)
pause
rd /s /q "%~dp0\zabbix_agents_2.4.4.win"
del %0

三、安装包及安装说明

安装包名zabbix_agents_auto_installer.win.zip 见附件

安装包中包含32和64位zabbix-agent和一份配置文件,以及自动安装脚本。

解压出来后找到AutoInstall.bat 脚本工具,双击就可以!会自动把zabbix-agent注册为系统服务并运行,添加10050被动端口。

本文出自 “學地止境” 博客,请务必保留此出处http://dyc2005.blog.51cto.com/270872/1942149

windows上一键自动安装zabbix-agent