esxcli system snmp set --communities public
esxcli system snmp set --enable true
esxcli network firewall ruleset set --ruleset-id snmp --allowed-all true ####允许所有主机访问snmp服务
esxcli network firewall ruleset set --ruleset-id snmp --enabled true
/etc/init.d/snmpd restart
####如果要只允许特定的IP地址访问snmp服务
esxcli network firewall ruleset set --ruleset-id snmp --allowed-all false
esxcli network firewall ruleset allowedip add --ruleset-id snmp --ip-address 10.0.101.0/24
esxcli network firewall ruleset set --ruleset-id snmp --enabled true
/etc/init.d/snmpd restart
从其他机器检测snmp是否开启
yum install net-snmp
yum install net-snmp-utils
yum install net-snmp-devel
可以通过SSH登录到服务器上,通过SNMP自带的命令行工具来测试是否可以本地获取SNMP数据。在示例中我们假设SNMP安装路径为 /usr/local/snmp,均采用默认的161 UDP端口
如果您在SNMP中采用的是v2c验证方式,并且community字符串假设为“public”,那么测试方法为:
$ /usr/local/snmp/bin/snmpwalk -v 2c -c public 127.0.0.1:161 sysDescr
如果您的SNMP中采用的v3验证方式,用户名为“user”,密码为“pass”,加密方式为“MD5”,那么测试方法为:
$ /usr/local/snmp/bin/snmpwalk -v 3 -l authNoPriv -a MD5 -u user -A pass 127.0.0.1:161 sysDescr
在命令行输入这些语句后,如果服务器SNMP正常开启的话,您应该可以获得以下类似的反馈:
$ SNMPv2-MIB::sysDescr.0 = STRING: Linux host1 2.6.27.19-5-default #1 SMP 2009-02-28 04:40:21 +0100 x86_64
在监控VMware之前,要确保Zabbix server支持libxml2(用来解析调用SOAP接口返回的XML)和libcurl(用来调用vCenter的SOAP接口)。如果不支持,Zabbix server启动时会报错:cannotstart vmware collector because Zabbix server is built without VMware support。因此,你如果使用源码安装Zabbix时需要加上 –with-libxml2 和–with-libcurl 这两个参数。
另外,我们需要修改Zabbix server的配置文件 /etc/zabbix/zabbix_server.conf中有关VMware监控的参数,主要有以下几个:
-
StartVMwareCollectors:VMware collector 实例的数量,默认为0,取值范围:0-250。此值取决于你需要监控的VMware 服务的数量。一般情况下servicenum < StartVMwareCollectors < (servicenum * 2),其中servicenum时VMware服务的数量。
-
VMwareFrequency:连接到VMware服务收集一个新数据的频率,默认为60秒,取值范围:10-86400。
-
VMwarePerfFrequency:连接到VMware服务收集性能数据的频率,默认为60秒,取值范围10-86400。
-
VMwareCacheSize:用于存储VMware 数据的缓存容量,默认为8M,取值范围:256K-2G。
-
VMwareTimeout:VMware collector 等待VMware 服务响应的时间,默认为10秒,取值范围:1-300。
完成相关参数的配置后,记住一定要重启Zabbix server。
你可能注意到VMwareFrequency和VMwarePerfFrequency这两个参数虽然都是定义收集数据的频率,但两者是有一些区别的。Zabbix从2.4.4版本开始,从VMware收集的数据分为两类:VMwareconfiguration data(配置数据)和VMwareperformance counter data(性能计数器统计数据),它们都是通过VMware collector收集,因此建议VMwarecollector的数量大于VMware 服务的数量,否则会因为VMware configuration data不能及时更新而导致VMware performance counter data的延迟收集。
ZABBIX3.0监控ESXI的模版
https://files.cnblogs.com/files/itfat/zbx_export_templates_esxi30.xml
参考文章:
https://share.zabbix.com/operating-systems/vmware/esxi-snmp-only-for-zabbix3-0
如果你不想监控esxi里的虚拟机,那么可以把模版里的3个发现协议,关闭发现虚拟机的。