windows中安装zabbix客户端
Zabbix-agent搭建(Windows)
1.下载zabbix-agent包
https://www.zabbix.com/downloads/3.4.0/zabbix_agents_3.4.0.win.zip
2.解压到D盘,并重命名目录为zabbix
查看目录结构
conf目录存放的是agent的配置文件
bin目录存放的Windows下32位和64位安装程序
3.配置zabbix-agent(zabbix_agent.win.conf)
创建logs目录存放zabbix_agent日志
# 需要创建logs目录存放zabbix_agent的日志 LogFile=d:\zabbix\logs\zabbix_agentd.log # 指定zabbix-server的ip, Server=192.168.1.65 # 指定server端的ip:interface ServerActive=192.168.1.65 # 指定主机名 Hostname=Windows-host-test
其中Server和ServerActive都指定zabbix Server的IP地址,不同的是,前者是被动后者是主动。也就是说Server这个配置是用来允许192.168.1.65这个ip来我这取数据。而ServerActive的192.168.1.65的意思是,客户端主动提交数据给他。
4.安装agent
> D:\zabbix\bin\win64\zabbix_agentd.exe -i -c d:\zabbix\conf\zabbix_agentd.win.conf
zabbix_agentd.exe [8288]: service [Zabbix Agent] installed successfully
zabbix_agentd.exe [8288]: event
source
[Zabbix Agent] installed successfull
5.启动zabbix-agent
D:\zabbix\bin\win64> zabbix_agentd.exe -c d:\zabbix\conf\zabbix_agentd.win.conf -s
6.关闭zabbix
D:\zabbix\bin\win64> zabbix_agentd.exe -c d:\zabbix\conf\zabbix_agentd.win.conf -x
7.卸载zabbix
D:\zabbix\bin\win64> zabbix_agentd.exe -c d:\zabbix\conf\zabbix_agentd.win.conf -d
8.Windows系统防火墙开放10050端口
控制面板--à选择windows 防火墙--à高级设置--à设置入站规则--à新建规则
设置开机启动
运行services.msc
zabbix_agentd.exe命令说明
-c 制定配置文件所在位置
-i 安装客户端
-s 启动客户端
-x 停止客户端
-d 卸载客户端
Zabbix自带模板监控Windows上的MySQL数据库
要想在Windows上取得MySQL的状态数据,可以用vbs脚本运行mysql命令,
第一步,脚本下载:http://pan.baidu.com/s/1eSDaiS6下载好后,放到一个文件夹中,比如d:\Zabbix\Scripts
第二步,修改windows上的zabbix_agentd.comf文件,设置key值。在UserParameter下面加两句;
UserParameter=mysql.status[*], cscript /nologo d:\Zabbix\Scripts\MySQL_Ext-Status_Script.vbs $1
UserParameter=mysql.ping, cscript /nologo d:\Zabbix\Scripts\MySql_Ping.vbs
第三步,重启zabbix_agentd。到zabbix_server上把mysql模板应用到主机上,查看items状态。
然后我就看到这样:
ZABBIX客户端操作
1、在zabbix.conf中添加以下字段信息
Include=D:\zabbix\conf\zabbix_agents.conf.d\*.conf
2、以下目录中新增一个目录和一个disk.conf文件
D:\zabbix\conf\zabbix_agents.conf.d\mysql.conf
3、mysql.conf
UserParameter=mysql.status[*], cscript /nologo D:\zabbix\bin\Scripts\MysqlMonitoring\MySQL_Ext-Status_Script.vbs $1 UserParameter=mysql.ping, cscript /nologo D:\\zabbix\bin\Scripts\MysqlMonitoring\MySql_Ping.vbs
4、将网盘中的Zabbix_Monitor文件夹至D盘的根目录,附MySQL_Ext-Status_Script.vbs、MySQL_Ping.vbs脚本信息
4.1、MySQL_Ext-Status_Script.vbs
Set objFS = CreateObject("Scripting.FileSystemObject") Set objArgs = WScript.Arguments str1 = getCommandOutput("D:\MYOA\mysql5\bin\mysqladmin.exe -uroot -pmyoa888 --port=3336 extended-status") Arg = objArgs(0) str2 = Split(str1,"|") For i = LBound(str2) to UBound(str2) If Trim(str2(i)) = Arg Then WScript.Echo TRIM(str2(i+1)) Exit For End If next Function getCommandOutput(theCommand) Dim objShell, objCmdExec Set objShell = CreateObject("WScript.Shell") Set objCmdExec = objshell.exec(thecommand) getCommandOutput = objCmdExec.StdOut.ReadAll end Function
注:str1 = getCommandOutput("D:\MYOA\mysql5\bin\mysqladmin.exe -uroot -pmyoa888 --port=3336 extended-status") 根据实际情况修改
4.2、MySQL_Ping.vbs
Set objFS = CreateObject("Scripting.FileSystemObject") Set objArgs = WScript.Arguments str1 = getCommandOutput("E:\MYOA\mysql5\bin\mysqladmin.exe -uroot -pmyoa888 --port=3336 ping") If Instr(str1,"alive") > 0 Then WScript.Echo 1 Else WScript.Echo 0 End If Function getCommandOutput(theCommand) Dim objShell, objCmdExec Set objShell = CreateObject("WScript.Shell") Set objCmdExec = objshell.exec(thecommand) getCommandOutput = objCmdExec.StdOut.ReadAll end Function
5、重启ZABBIX Agentd服务、服务端使用zabbix_get测试是是否能抓取到结果。
[root@localhost ~]# zabbix_get -s 192.168.0.77 -k mysql.ping 1