ESXi 7.0 接入 Zabbix 7.0 完整配置指南(SNMP v2c)
详解 VMware ESXi 7.0.3 通过 SNMP v2c 协议接入 Zabbix 7.0.28 监控系统的完整配置流程,包含 ESXi 端 SNMP 服务设置、防火墙放行、Zabbix 主机添加及自动化方案。
ESXi 主机接入 Zabbix 后,可以持续观察主机可达性、运行时间、网络接口流量和基础系统状态,适合用于虚拟化平台的基础巡检。本文以 ESXi 7.0 和 Zabbix 7.0 为例,介绍通过 SNMP v2c 完成接入的步骤,并说明 SNMP 监控与 vCenter API 监控的适用边界。
一、先明确 SNMP v2c 能监控什么
SNMP v2c 的优点是配置简单、兼容性好,适合快速纳管网络设备和服务器基础指标。接入 ESXi 后,通常可以采集主机名称、运行时间、网络接口状态、收发流量以及部分系统级信息。
需要注意的是,SNMP v2c 使用 community 字符串进行访问控制,通信内容不是加密传输。因此,community 不要使用 public 或 private,并且只允许 Zabbix Server 或 Zabbix Proxy 的管理地址访问 UDP 161 端口。若需要采集虚拟机清单、数据存储容量、集群关系、资源池和虚拟机性能等 VMware 业务指标,建议进一步使用 vCenter API 监控,不能只依赖 SNMP。
二、接入前的准备工作
- ESXi 主机版本:7.0 或同系列补丁版本,管理地址固定。
- Zabbix Server 或 Proxy:7.0,能够访问 ESXi 管理网段。
- 网络策略:Zabbix 访问 ESXi 的 UDP 161 端口,返回流量不能被防火墙拦截。
- 监控凭据:准备一组长度足够、仅用于监控的 SNMP community。
- 时间同步:ESXi、Zabbix Server、Proxy 的时间保持一致,便于判断告警发生时间。
三、在 ESXi 7.0 上配置 SNMP v2c
1. 开启 ESXi Shell 或 SSH
可以在 ESXi Host Client 的“管理—服务”中临时启动 SSH,也可以通过 DCUI 开启 ESXi Shell。配置完成后,建议关闭 SSH 服务,减少管理面暴露时间。
2. 设置 community 和 Zabbix 目标地址
登录 ESXi 主机后执行以下命令。请把示例中的 YOUR_STRONG_COMMUNITY 替换成实际值,把 ZABBIX_SERVER_IP 替换成 Zabbix Server 或 Proxy 的管理地址:
esxcli system snmp set --communities YOUR_STRONG_COMMUNITY
esxcli system snmp set --targets ZABBIX_SERVER_IP@161/YOUR_STRONG_COMMUNITY
esxcli network firewall ruleset set --ruleset-id snmp --enabled true
esxcli system snmp set --enable true
如果环境中已经配置过其他 SNMP 目标,执行 --targets 时要注意保留原有目标,避免覆盖已有监控配置。配置后可以查看当前状态:
esxcli system snmp get
重点确认 community、目标地址、端口和启用状态是否正确。部分环境在修改配置后需要重启 SNMP 服务,可以先执行测试命令;若测试失败,再根据 ESXi 日志和服务状态进一步处理。
3. 从 Zabbix Server 或 Proxy 发起测试
在 Zabbix Server 或 Proxy 上使用 snmpwalk 验证连通性:
snmpwalk -v 2c -c YOUR_STRONG_COMMUNITY ESXI_IP 1.3.6.1.2.1.1
能够返回 sysName、sysUpTime 等对象,说明 SNMP 服务、网络路由、community 和防火墙策略基本正常。如果超时,不要先修改 Zabbix 模板,应优先检查 UDP 161 是否放行,以及请求是否从正确的 Proxy 地址发出。
四、在 Zabbix 7.0 中创建 ESXi 主机
1. 添加 SNMP 接口
进入“数据采集—主机—创建主机”,填写 ESXi 的管理 IP,在“接口”中新增 SNMP 接口,端口填写 161,版本选择 SNMPv2c。community 建议使用宏保存,例如:
{$SNMP_COMMUNITY}
把宏值放在主机或主机组级别,后续更换 community 时只需要修改宏,不需要逐个修改监控项。
2. 选择监控模板
如果只需要基础可用性和接口流量,可以使用适配 Zabbix 7.0 的通用 SNMP 模板,再按 ESXi 的实际网卡名称筛选监控项。如果需要虚拟机、数据存储、集群和资源池等 VMware 专属指标,应通过 vCenter API 配置 VMware 监控,不建议把 SNMP 当作完整的 VMware 监控方案。
3. 建议优先监控的指标
| 指标 | 常用 OID | 用途 |
|---|---|---|
| 主机名称 | .1.3.6.1.2.1.1.5.0 | 确认纳管对象身份 |
| 系统运行时间 | .1.3.6.1.2.1.1.3.0 | 发现主机重启或异常中断 |
| 接口入方向流量 | .1.3.6.1.2.1.2.2.1.10 | 观察网络吞吐和突发流量 |
| 接口出方向流量 | .1.3.6.1.2.1.2.2.1.16 | 观察出口带宽和异常上行 |
五、常见故障排查
问题 1:snmpwalk 超时
依次检查 ESXi 管理 IP 是否可达、ESXi 防火墙是否允许 SNMP、UDP 161 是否经过中间防火墙,以及 Zabbix Proxy 是否使用了与预期不同的出口地址。
问题 2:返回 authentication failure
通常是 community 不一致,或者 Zabbix 主机宏中存在空格和不可见字符。建议在 ESXi 和 Zabbix 两端重新手工输入一遍,并避免复制带引号的示例字符串。
问题 3:主机可达但监控项没有数据
先用 snmpwalk 验证对应 OID 是否真的能返回数据,再检查监控项类型、SNMP 接口、OID 和更新时间间隔。不要只看 Zabbix 前端的“无数据”提示判断网络故障。
问题 4:想监控虚拟机 CPU、内存和数据存储
这类指标通常更适合通过 vCenter API 采集。SNMP 可以作为主机基础可用性和网络指标的补充,VMware 专属指标则建议采用 API 方式统一纳管。
六、安全加固建议
- 只在管理网段启用 SNMP,禁止从公网访问 UDP 161。
- 使用随机、足够长的 community,并定期更换。
- 配置完成后关闭 SSH,仅在维护时临时开启。
- 为 ESXi、Zabbix Server 和 Proxy 做最小权限的防火墙访问控制。
- 对 SNMP 轮询、登录失败和主机不可达建立告警,避免监控系统静默失效。
总结
ESXi 7.0 接入 Zabbix 7.0 的关键步骤是:配置 SNMP community、指定 Zabbix 目标、放行 ESXi 防火墙、使用 snmpwalk 验证,再在 Zabbix 中创建 SNMP 接口和监控项。SNMP v2c 适合做基础巡检;如果企业需要完整的 VMware 资源和虚拟机性能视图,应结合 vCenter API 设计监控架构。
如果你的 ESXi 主机较多,建议先选一台主机完成验证,再通过统一配置和主机宏批量纳管,避免一次性修改全部主机造成监控中断。华南腾飞科技可以根据企业现有网络、虚拟化规模和安全要求,协助规划 Zabbix 监控及后续告警运营方案。







客服 13510444731 15815529276
二对一售前售后服务
7x24小时技术保障





立即咨询
电话咨询