ZABBIX监控ESXI主机
一、环境
Zabbix5.2
Centos8.2
ESXI6.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。
4.重启zabbix服务
systemctl restart zabbix-server.service
5.查看启动日志,可以确认配置
日志路径:/var/log/zabbix/zabbix_server.log
VMware monitoring状态为YES,说明zabbix server启动vmware监控,
如下图:
三、配置ESXI
1.开启ESXI主机调试(MOB)功能
登录ESXi主机,在【管理】-【高级】-【高级设置】找到键:Config.HostAgent.plugins.solo.enableMob,然后将其启用
2.在ESXI主机上添加zabbix只读用户
步骤如下图:
创建用户
添加权限(選擇 主機-操作-權限)
添加用户
3.获取UUID值
访问以下地址:
https://esxi_ip/mob/?moid=ha-host&doPath=hardware.systemInfo
登录:
四、添加主机监控
1.添加主机
登录zabbix的web界面,在【配置】-【主机】-【创建主机】
主机名称:只能填写获取的UUID号
可见的名称:是显示的名称,可以不填
Interfaces:选择客户端,填写ESXI的IP,端口可以是80或443
2.链接模板
接着上一步,在【模板】页Link new templates选择
VMware和VMware Hypervisor这两个模板就行
3.设置宏
在【宏】标签下,配置身份验证:
其中:
{$URL} :VMware 服务 (vCenter or ESXi hypervisor) SDK URL (https://esxi_ip/sdk).
{$USERNAME} :VMware 服务用户名
{$PASSWORD} :VMware 服务{$ USERNAME}用户密码
这几项全部配置完成后,等待设置的检测时间就能看到监控信息了
以上操作在zabbix3.X中没什么问题,zabbix4.X的不知道,我是直接升级到zabbix5.X的,
在zabbix5.X中,添加主机配置【宏】的参数有所改变,
需要更改添加主机宏的三个参数为以下四个:
{$VMWARE.URL}
{$VMWARE.USERNAME}
{$VMWARE.PASSWORD}
{$VMWARE.HV.UUID}
原由解析:
先看zabbix3.4监控esxi链接模板的监控项:
用到的参数是:{$URL},{$USERNAME},{$PASSWORD},{HOST.HOST}
其中{HOST.HOST}参数是添加主机时的主机名称的值(UUID)(在第四步第一点中提到的主机名必须填写UUID的原因)
再看zabbix5.2监控esxi链接模板的监控项:
用到的参数是:{$VMWARE.URL},{$VMWARE.USERNAME},{$VMWARE.PASSWORD},{$VMWARE.HV.UUID}
看到变化了嘛,相对zabbix3.4参数中都加了VMWARE,{HOST.HOST}更换为{$VMWARE.HV.UUID}
所有在zabbix5.2中监控esxi主机时设置的宏为:
{$VMWARE.URL} --------值为:https://esxi_ip/sdk
{$VMWARE.USERNAME} --------值为:在esxi主机中添加的监控用户名,如 zabbix
{$VMWARE.PASSWORD} --------值为:在esxi主机中添加的监控用户名的密码
{$VMWARE.HV.UUID} --------值为:esxi主机的UUID号