ESXi7.0接入Zabbix6.0
使用Zabbix6.0监控ESXi7.0
Zabbix官方文档:
https://www.zabbix.com/documentation/current/zh/manual/vm_monitoring
https://www.zabbix.com/integrations/vmware
参考
https://developer.aliyun.com/article/918021
https://www.on0926.com/zabbix-%E7%9B%91%E6%8E%A7-esxi-%E4%B8%BB%E6%9C%BA/
之前做了Zabbix监控PVE,实现起来比较简单所以没有记录,这次对ESXi进行监控。
配置ESXi
在ESXi添加一个zabbix用户
添加用户
进入esxi,导航器中 管理-安全和用户-用户
添加一个用户zabbixuser添加用户权限
回到 导航器中 主机-操作-权限
选择添加用户,选择zabbixuser,权限为只读
选择完毕后点击右下角添加用户
获取ESXi的UUID
方法1
进入esxi,导航器中 管理-系统-高级设置
找到Config.HostAgent.plugins.solo.enableMob
编辑选项将False
改为True
修改底下会显示 调试用 Managed Object Browser 已启用
从web访问 https://esxi_ip/mob/?moid=ha-host&doPath=hardware.systemInfo ,查看UUID的值
保存UUID值后关闭Config.HostAgent.plugins.solo.enableMob
方法2
开启esxi的ssh,并ssh远程连接上
执行命令获取UUID
1 | esxcfg-info -u |awk '{print tolower($0)}' |
配置Zabbix
创建主机
在侧栏选择 配置-主机
创建主机
顶栏选择
- 主机配置
主机名称 为上面查到的ESXi的UUID
模板 VMware Hypervisor
群组 ESXiServer(我自己添加的)
Interfaces 类型客户端 IP正确即可
这里vCenter使用模板VMware更全面,ESXi使用模板VMware Hypervisor即可
模板VMware会自动将vCenter或者ESXi下的所有虚拟机接入zabbix,VMware Hypervisor只会显示基本的ESXi服务器的参数
2. 宏配置
选择继承以及主机宏,这些配置是继承选择的模板
{$VMWARE.PASSWORD} zabbixuserpassword
{$VMWARE.URL} 地址:https://esxi_ip/sdk
{$VMWARE.USERNAME} zabbixuser
{$VMWARE.HV.UUID} ESXi的UUID
输入密码时可以将值一栏右边的文本改为Secret text来隐藏密码,保存后无法显示密码,只能重新配置密码。
如果出现Unknown hypervisor uuid
可以试试将模板 取消链接并清理,随后重新链接模板等待一段时间
开启Zabbix对ESXi的支持
默认是关闭的,在数据界面可以看到最新数据的信息栏会报错
网上对于非Docker部署的Zabbix开启VMware支持的文章很多,这里主要写Docker部署的Zabbix.
参考博客的使用Docker部署Zabbix
在拉取的zabbix-docker目录下编辑./env_vars/.env_srv
1 | MYSQL用户密码以及ROOT用户密码设置 .MYSQL_PASSWORD .MYSQL_ROOT_PASSWORD .MYSQL_ROOT_USER .MYSQL_USER |
完成后重新部署zabbix-server即可
再次在Zabbix中查看ESXi数据信息栏提示Couldn't connect to server
,即代表对VMware的支持已经生效
如果上面Zabbix主机配置没有问题,耐心等待一段时间,ESXi下的信息就会出现在Zabbix中
最终效果是本文章封面
后记
https://www.bboy.app/2018/11/15/%E4%BD%BF%E7%94%A8zabbix%E7%9B%91%E6%8E%A7esxi/
这个博客底下有评论到
zabbix6。0不需要改‘Config.HostAgent.plugins.solo.enableMob‘,也不需要把uuid写在主机名称了。现在需要把uuid写在{$VMWARE.HV.UUID}里就好了。
也可以试试
添加完成后会发现有两个字段utilization和usage,我不太能分清这两者的区别,于是找了一下资料,发现定义各不相同
根据VMware官方的定义 https://kb.vmware.com/s/article/2055995
1 | cpu.utilization - Provides statistics for physical CPUs. |