Zabbix 监控 Windows 主机时,需要在被监控的服务器上安装 Zabbix Agent,代理程序负责采集 CPU 使用率、内存占用、磁盘空间、服务状态等本地指标,然后按照被动或主动模式与 Zabbix Server 通信。Windows 环境下的安装方式与 Linux 有明显差异,本文以 Windows Server 为例,完整演示从下载、安装、配置到验证的全过程,并总结几个容易踩坑的细节。

一、下载与安装前的准备
Zabbix 官方为 Windows 平台提供了两种发行形式:一种是 MSI 安装包,双击即可完成安装并向导式配置,适合不熟悉命令行的管理员;另一种是 ZIP 压缩包,解压即用,便于自定义目录和批量部署。两种包都可以在 Zabbix 官网的下载页面获取,注意下载与 Zabbix Server 大版本匹配的 Agent 版本,例如服务端是 6.0 LTS,就下载 6.0 系列的 Agent,避免因协议差异导致数据上报异常。
安装前建议先确认几件事:第一,用 hostname 命令或系统属性查清服务器的实际主机名,后面配置文件里的 Hostname 参数必须与 Zabbix 前端添加主机时填写的名称完全一致,这是接入失败的最高频原因;第二,确认服务器与 Zabbix Server 之间的网络连通性,默认 Agent 使用 10050 端口被动监听,可以用 telnet Zabbix服务器IP 10051 测试方向;第三,准备好管理员权限的账号,安装服务需要写注册表 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services 下的服务项。
二、使用 MSI 安装包部署
MSI 方式最简单,双击安装包后进入向导界面,依次接受协议、选择安装目录(默认为 C:\Program Files\Zabbix Agent)。到了配置页面,需要填写四个关键参数:Host name 填服务器真实主机名,Zabbix server IP/DNS 填监控服务端地址,Agent 监听端口保持默认 10050,Server or Server for active checks 按需填写。填完一路下一步即可完成安装。
如果习惯命令行,也可以用 msiexec 静默安装,便于配合脚本批量推送:
msiexec /i zabbix_agent-6.0.25-windows-amd64.msi ^ HOSTNAME="WIN-SRV-DB01" ^ SERVER="192.168.10.20" ^ SERVERACTIVE="192.168.10.20" ^ INSTALLFOLDER="C:\Program Files\Zabbix Agent" ^ /qn
安装完成后,MSI 会自动注册一个名为 Zabbix Agent 的 Windows 服务并启动。打开 services.msc 服务列表,或者用管理员权限的 PowerShell 执行 Get-Service "Zabbix Agent",看到状态为 Running 即表示服务已就绪。MSI 方式的配置文件默认位于安装目录下,文件名为 zabbix_agentd.conf,后续调整参数直接编辑这个文件并重启服务即可生效。
三、压缩包手动安装与配置
压缩包方式更灵活,适合需要统一目录规范或做自动化部署的场景。将下载的 ZIP 解压到规划好的目录,例如 C:\zabbix,目录下会包含 bin 和 conf 两个文件夹。把 conf\zabbix_agentd.conf 复制一份到 bin 目录,或者单独建立配置目录,然后编辑以下几个核心参数:
Server=192.168.10.20 ServerActive=192.168.10.20 Hostname=WIN-SRV-DB01 ListenPort=10050 LogFile=C:\zabbix\zabbix_agentd.log DebugLevel=3
其中 Server 定义允许哪些服务端地址来拉取数据(被动模式白名单),ServerActive 指定主动模式下数据发送的目标地址。如果只做被动监控,ServerActive 可以不填,但 Server 必须填写正确,否则 Agent 会拒绝服务端的连接请求。接下来用管理员身份打开命令提示符,执行服务安装命令:
cd C:\zabbix\bin zabbix_agentd.exe --config "C:\zabbix\zabbix_agentd.conf" --install zabbix_agentd.exe --start
常用管理命令还包括 --stop 停止服务、--uninstall 卸载服务、--config-test 校验配置文件语法。修改配置后记得先停止再重启服务,直接改文件不会热生效。卸载服务前也要先执行 --stop,否则服务项可能残留在注册表中。
四、防火墙放行与服务验证
Windows Server 默认开启防火墙,安装完成后需要放行 10050 端口,否则 Zabbix Server 的轮询请求会被拦截。可以用图形界面添加入站规则,也可以用 PowerShell 一条命令搞定:
New-NetFirewallRule -DisplayName "Zabbix Agent" ` -Direction Inbound -Protocol TCP -LocalPort 10050 ` -Action Allow
验证环节分两步走。先在本机确认服务运行正常,查看日志文件有无报错,Agent 正常启动时会输出 starting zabbix_agentd 的记录。然后在 Zabbix 前端添加主机,主机名与配置文件中 Hostname 保持一致,接口类型选客户端,IP 填 Windows 服务器地址。保存后观察可用性图标,ZBX 变绿说明被动模式通信成功;如果长时间显示灰色或红色,优先检查三处:主机名是否一致、10050 端口是否可达、Server 白名单是否包含服务端 IP。
还可以在服务端用 zabbix_get 工具直接测试取数,例如执行 zabbix_get -s 192.168.10.31 -k system.uname,能返回 Windows 版本信息就代表整条链路完全打通。接入成功后,给主机链接 Windows by Zabbix agent 模板,即可获得开箱即用的 CPU、内存、磁盘、服务监控项,后续再根据业务需要自定义监控项和触发器。
Zabbix AgentWindows Server监控系统修改时间:2026-09-05 07:00:39