一、简介
zabbix是开源界流行的监控程序,C/S架构,运行多种系统平台安装,个人认为windows平台的 zabbix-agent安装最为烦琐,unix及linux平台通过自动化运维工具可一键远程安装,而windows目前没有好的方法,所以就参考网上写了一个脚本(包含zabbix-agent 2.4.5客户端),一键安装并配置好防火墙。
二、安装脚本(配置文件)
请先修改脚本中zabbbix_server 为自己的zabbix服务器ip
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
@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被动端口。
本文转自 dyc2005 51CTO博客,原文链接:http://blog.51cto.com/dyc2005/1942149,如需转载请自行联系原作者