1. 为什么你需要用Zabbix监控你的VMware ESXi主机?
如果你正在管理一个虚拟化环境,尤其是基于VMware vSphere的,那你肯定对ESXi主机不陌生。它是整个虚拟化平台的基石,承载着所有虚拟机(VM)的运行。想象一下,你正享受着虚拟化带来的资源整合和灵活调配的好处,突然,某个ESXi主机因为CPU或内存耗尽而卡死,或者存储链路中断导致上面的所有虚拟机集体“失联”。这种场景,光是想想就让人头皮发麻。
我经历过不止一次。早期我们只用vCenter自带的监控,感觉“够用”,直到一次半夜的存储性能抖动,vCenter的告警姗姗来迟,而业务已经受到了影响。那时候我才意识到,我们需要一个更集中、更灵活、告警更及时的监控体系。Zabbix,这个开源监控领域的“老炮儿”,就成了我们的选择。它不仅能监控服务器、网络设备,通过其强大的VMware监控功能,还能深入到vCenter和每一台ESXi主机内部,把CPU、内存、存储、网络乃至虚拟机的状态都看得一清二楚。
简单来说,用Zabbix监控ESXi,就像是给你的虚拟化平台装上了一套7x24小时无休的“全景雷达”和“健康手环”。它不仅能告诉你“现在”是否正常,还能通过历史数据告诉你“趋势”如何,比如磁盘空间是不是在稳步减少,内存使用率是不是在业务高峰时持续攀升。这对于容量规划和故障预警至关重要。而且,Zabbix的告警可以灵活地集成到钉钉、企业微信、邮件、短信,甚至可以通过脚本执行一些自动化的修复动作,这比单纯依赖vCenter要强大得多。
接下来的内容,就是我这几年摸爬滚打总结出来的实战配置指南。我会假设你已经有了一套Zabbix服务器(版本6.0 LTS或7.0 LTS均可),并且有一个vCenter在管理着若干台ESXi主机。我们的目标,就是一步步地把它们全部纳入Zabbix的监控视野,让你睡得更加安稳。整个过程,我会把容易踩坑的地方重点标出来,这些都是我用真金白银的“宕机时间”换来的经验。
2. 监控前的准备工作:权限、服务与连通性
万事开头难,监控ESXi的第一步往往不是直接去配置Zabbix,而是要在vSphere环境里做好铺垫。这一步没做对,后面全是白费功夫。核心就三件事:给Zabbix一个合适的“账号”,让ESXi主机“开口说话”,确保网络“道路通畅”。
2.1 在vCenter上创建一个“只读”的监控专用账号
直接用管理员账号丢给Zabbix?这很不安全,也不符合权限最小化原则。我们需要一个仅有只读权限的专用账号。
- 登录vCenter管理界面:用你的管理员账号登录vSphere Client。
- 创建用户:点击左上角“菜单” -> “管理”。在“访问控制”下找到“用户和组”。确保你选中的是
vsphere.local这个SSO域(这是默认的),然后点击“添加用户”。用户名我习惯用zabbix_monitor,描述可以写“For Zabbix monitoring”。设置一个强密码并记下来。 - 分配全局只读权限:这是最关键的一步,权限给错了地方,Zabbix就“看”不到东西。点击“全局权限”选项卡,然后点击“添加权限”按钮。
- 用户:选择我们刚创建的
zabbix_monitor@vsphere.local。 - 角色:选择
Read-only(只读)。这个角色拥有查看所有对象的权限,但无法进行任何修改。 - 传播:务必勾选“将所有权限传播到子对象”。这个复选框如果不勾,权限就只停留在vCenter根目录,无法下发给下面的数据中心、集群、主机和虚拟机,Zabbix会发现不了它们。
- 用户:选择我们刚创建的
- 验证权限:你可以尝试用这个新账号登录一下vSphere Client(或者直接登出再用新账号登入),确认你能浏览所有的数据中心、集群、主机和虚拟机,但无法进行任何创建、删除、修改的操作。这就对了。
注意:有些特别严格的环境,可能会要求更细粒度的权限。你可以通过创建自定义角色,只授予
System.View和Inventory.View等特定权限。但对于绝大多数监控场景,全局只读角色已经足够安全且省心。
2.2 在每台ESXi主机上启用“MOB”服务
这是很多新手会忽略,然后导致监控失败的关键一步。Zabbix需要通过vCenter提供的接口获取ESXi主机的详细数据,其中就包括一个重要的标识符——UUID。而获取UUID需要ESXi主机上的“Managed Object Browser (MOB)”服务处于启用状态。
- 登录ESXi主机:你可以通过vCenter,右键点击某台ESXi主机 -> “操作” -> “服务” -> “启用安全Shell(SSH)”来开启SSH,然后用Putty等工具登录。或者更简单,直接在vCenter的Web Client里,进入该主机的“配置”选项卡。
- 修改高级系统设置:在“配置”选项卡下,找到“系统”部分,点击“高级系统设置”。
- 找到并修改参数:在过滤框里输入
Config.HostAgent.plugins.solo.enableMob。你会看到它的值默认是false。双击它,将值改为true,然后点击“确定”。


1万+

被折叠的 条评论
为什么被折叠?



