bat 安装zabbix agent

  • Post author:
  • Post category:其他


公司数百的服务器需要安装zabbix agent,却因公司规章无法使用批量部署软件的情况,你只能静下心来一台台安装。当然也可以使用简便方法安装:

此处的’zabbix agent 2‘ 为我需要安装的新版本zabbix agent。

首先查看本机是否安装,若未安装,执行:notexist 从可访问文件夹或者公共盘拷贝需要的文件夹,并调用 change.bat 将源conf配置文件的hostname改为本机hostname:

rem 查找‘zabbix agent 2’service是否存在,存在errorlevel返回 0。

sc query "Zabbix Agent 2"

rem  ‘ NOT ’指定只有条件为 false 的情况下,Windows 才应该执行该命令。
rem  ‘ERRORLEVEL number' 如果最后运行的程序返回一个'等于或大于'指定'数字(number)'的退出代码,指定条件为 true。

if not errorlevel 1 (goto exist) else goto notexist

:exist
pause
goto end

:notexist
rem 在cmd中返回最高层执行命令
cd c:\
rem 从共享文件中copy出需要的安装包,我们这里安装到program files文件夹中,因为该文件夹中不能修改文档,所以先copy到其他文件夹中修改conf配置文件
xcopy "\\FLS\Public\MIS\SOP\Zabbix Agent2" "c:\Zabbix Agent2" /E/H/C/I/Y
rem 调用‘change.bat’更新本机的hostname到conf文件中。
call "c:\Zabbix Agent2\conf\change.bat"
rem 将更改后的包copy到c:\program files文件夹中
xcopy "c:\Zabbix Agent2" "C:\program Files\Zabbix Agent2" /E/H/C/I/Y
rmdir  "c:\Zabbix Agent2" /s/q

rem 卸载原来的zabbix agent(若有则卸载)
cd "C:\Program Files\Zabbix Agent"
zabbix_agentd.exe --uninstall
rem 到安装路径上,安装你的zabbix agent (卸载:zabbix_agent2.exe --uninstall -c "C:\Program Files\Zabbix Agent2\conf\zabbix_agent2.conf")
cd C:\Program Files\Zabbix Agent2\bin
zabbix_agent2.exe --install -c "C:\Program Files\Zabbix Agent2\conf\zabbix_agent2.conf"
rem 卸载后,需要停止服务,并启用新服务
net stop "Zabbix Agent"
net start "Zabbix Agent 2"
rem 删除旧版本的agent安装包
rmdir  "C:\Program Files\Zabbix Agent" /s/q
pause

goto end

change.bat代码如下:

@echo off&setlocal EnableDelayedExpansion
for /f "delims=" %%b in ('type "c:\Zabbix Agent2\conf\zabbix_agent_old.conf"') do (
set "str=%%b"&set "str=!str:ECND3646=%COMPUTERNAME%!"
echo !str! >>"c:\Zabbix Agent2\conf\zabbix_agent2.conf"
)



版权声明:本文为lambto原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。