Zabbix4.4.7 监控Esxi 6.5

一、环境

①、Centos 7.4
②、Zabbix 4.4.7
③、Esxi 6.5

二、配置Zabbix服务端

1.编译安装Zabbix-server的应加上 –with-libxml2 和 –with-libcurl 编译选项
2.yum安装zabbix的是默认安装的
3.修改zabbix配置文件:
vim /etc/zabbix/zabbix_server.conf

# 找到以下参数取消注释并配置相应数值
StartVMwareCollectors=6
VMwareCacheSize=50M
VMwareFrequency=10
VMwarePerfFrequency=60
VMwareTimeout=30

参数解释:
StartVMwareCollectors:收集器实例的数量。此值取决于要监控的 VMware 服务的数量,原则是:servicenum < StartVMwareCollectors < (servicenum * 2),其中 servicenum 是 VMware 服务的数量
VMwareCacheSize:用于存储VMware 数据的缓存容量,默认为8M,取值范围:256K-2G。
VMwareFrequency: 连接到VMware服务收集一个新数据的频率,默认为60秒,取值范围:10-86400。
VMwarePerfFrequency:连接到VMware服务收集性能数据的频率,默认为60秒,取值范围10-86400。
VMwareTimeout:等待VMware 服务响应的时间,默认为10秒,取值范围:1-300。

重启zabbix-server

systemctl restart zabbix-server

查看启动日志,可以确认配置
日志路径:/var/log/zabbix/zabbix_server.log
VMware monitoring状态为YES,说明zabbix server启动vmware监控,

10178:20220321:223438.815 ****** Enabled features ******
 10178:20220321:223438.815 SNMP monitoring:           YES
 10178:20220321:223438.815 IPMI monitoring:           YES
 10178:20220321:223438.815 Web monitoring:            YES
 10178:20220321:223438.815 VMware monitoring:         YES
 10178:20220321:223438.815 SMTP authentication:       YES
 10178:20220321:223438.815 Jabber notifications:      YES
 10178:20220321:223438.815 Ez Texting notifications:  YES
 10178:20220321:223438.816 ODBC:                      YES
 10178:20220321:223438.816 SSH support:               YES
 10178:20220321:223438.816 IPv6 support:              YES
 10178:20220321:223438.816 TLS support:               YES
 10178:20220321:223438.816 ******************************

三、配置Esxi

①、开启ESXI主机调试(MOB)功能

登录ESXi主机,在【管理】-【高级】-【高级设置】找到键:Config.HostAgent.plugins.solo.enableMob,然后将其启用

esxi查看内存条参数命令 esxi查看内存频率_zabbix监控esxi

②、添加只读用户

步骤如下图:

创建用户

esxi查看内存条参数命令 esxi查看内存频率_取值范围_02


添加权限

主机-操作-权限-添加用户

esxi查看内存条参数命令 esxi查看内存频率_VMware_03


添加后

esxi查看内存条参数命令 esxi查看内存频率_zabbix监控esxi_04

③、获取Esxi主机UUID值

访问以下地址:

https://esxi_ip/mob/?moid=ha-host&doPath=hardware.systemInfo 登录:

esxi查看内存条参数命令 esxi查看内存频率_VMware_05

四、zabbix添加主机监控

①、添加主机

登录zabbix的web界面,在【配置】-【主机】-【创建主机】

主机名称:只能填写获取的UUID号

可见的名称:是显示的名称,可以不填

Interfaces:选择客户端,填写ESXI的IP,端口可以是80或443

esxi查看内存条参数命令 esxi查看内存频率_zabbix监控esxi_06


②、链接监控模板

接着上一步,在【模板】页Link new templates选择

VMware Hypervisor这个模板就行

esxi查看内存条参数命令 esxi查看内存频率_esxi_07


③、设置宏

在【宏】标签下,配置身份验证:
其中:

{$VMWARE.URL} :VMware 服务 (vCenter or ESXi hypervisor) SDK URL (https://esxi_ip/sdk).
{$VMWARE.USERNAME} :VMware 服务用户名
{$VMWARE.PASSWORD} :VMware 服务{$ USERNAME}用户密码
{$VMWARE_PERF_INTERVAL}: 有个别监控项需要配置数据采集间隔
{$VMWARE.UUID}: esxi uuid

esxi查看内存条参数命令 esxi查看内存频率_esxi查看内存条参数命令_08

这几项全部配置完成后,等待设置的检测时间就能看到监控信息了

esxi查看内存条参数命令 esxi查看内存频率_VMware_09


如果获取不到数据具体看/var/log/zabbix/zabbix-server.log 日志报什么错!

五、那些报错

①、缺少宏的报错

10193:20220322:110401.046 item "4c4c4544-0052-4c10-8034-c2c04f443358:vmware.hv.datastore.read[{$VMWARE.URL},{HOST.HOST},data02,latency]" became not supported: Invalid update interval "{$VMWARE_PERF_INTERVAL}".
 10193:20220322:110401.046 item "4c4c4544-0052-4c10-8034-c2c04f443358:vmware.hv.datastore.write[{$VMWARE.URL},{HOST.HOST},datastore1,latency]" became not supported: Invalid update interval "{$VMWARE_PERF_INTERVAL}".
 10193:20220322:110401.046 item "4c4c4544-0052-4c10-8034-c2c04f443358:vmware.hv.datastore.write[{$VMWARE.URL},{HOST.HOST},data03,latency]" became not supported: Invalid update interval "{$VMWARE_PERF_INTERVAL}".
 10193:20220322:110401.046 item "4c4c4544-0052-4c10-8034-c2c04f443358:vmware.hv.datastore.write[{$VMWARE.URL},{HOST.HOST},data02,latency]" became not supported: Invalid update interval "{$VMWARE_PERF_INTERVAL}".
 10193:20220322:110401.046 item "4c4c4544-0052-4c10-8034-c2c04f443358:vmware.hv.datastore.read[{$VMWARE.URL},{HOST.HOST},datastore1,latency]" became not supported: Invalid update interval "{$VMWARE_PERF_INTERVAL}".
 10193:20220322:110401.047 item "4c4c4544-0052-4c10-8034-c2c04f443358:vmware.hv.datastore.read[{$VMWARE.URL},{HOST.HOST},data03,latency]" became not supported: Invalid update interval "{$VMWARE_PERF_INTERVAL}".

解决办法:
参考第四步第三小步 “设置宏”

②、became not supported: URL using bad/illegal format or missing URL

10194:20220322:094029.993 item "4c4c4544-0052-4c10-8034-c2c04f443358:vmware.hv.cpu.usage[{$VMWARE.URL},{HOST.HOST}]" became not supported: URL using bad/illegal format or missing URL
 10194:20220322:094041.000 item "4c4c4544-0052-4c10-8034-c2c04f443358:vmware.hv.memory.size.ballooned[{$VMWARE.URL},{HOST.HOST}]" became not supported: URL using bad/illegal format or missing URL
 10196:20220322:094042.002 item "4c4c4544-0052-4c10-8034-c2c04f443358:vmware.hv.memory.used[{$VMWARE.URL},{HOST.HOST}]" became not supported: URL using bad/illegal format or missing URL
 10195:20220322:094045.003 item "4c4c4544-0052-4c10-8034-c2c04f443358:vmware.hv.sensor.health.state[{$VMWARE.URL},{HOST.HOST}]" became not supported: URL using bad/illegal format or missing URL
 10193:20220322:094046.003 item "4c4c4544-0052-4c10-8034-c2c04f443358:vmware.hv.status[{$VMWARE.URL},{HOST.HOST}]" became not supported: URL using bad/illegal format or missing URL
 10196:20220322:094047.006 item "4c4c4544-0052-4c10-8034-c2c04f443358:vmware.hv.uptime[{$VMWARE.URL},{HOST.HOST}]" became not supported: URL using bad/illegal format or missing URL

解决办法:
参考的度娘文章,刚开始宏变量没加vmware导致。
没加前:{KaTeX parse error: Expected 'EOF', got '}' at position 4: URL}̲ 加VMWARE后:{VMWARE.URL}