开启VMware ESXi 5.5的SNMP服务

因为需要监控ESXi vSphere 5.5 hosts 的数据,准备使用SNMP的方式获取需要的数据。但是发现ESXi5.5的SNMP默认是没有开启的(false),因此需要设置密码和开启ESXi的SNMP服务,为了安全起见只允许特定的IP地址或者IP段能够获取ESXi的SNMP的数据。

默认ESXi snmp的服务是关闭状态的

~ # cat /etc/vmware/snmp.xml
snmp_xml

esxcli system snmp set --communities public #设置SNMP的密码,建议不要使用通用的snmp密码public
esxcli system snmp set --enable true #设置启用snmp

esxcli network firewall ruleset set --ruleset-id snmp --allowed-all true #设置运行ESXi的防火墙通过snmp
esxcli network firewall ruleset set --ruleset-id snmp --enabled true

/etc/init.d/snmpd restart #重新启动snmp

You can change the firewall rule to only allow a specific subnet or host if you would like to.
为了安全起见只允许特定的IP地址或者IP段能够获取ESXi的SNMP的数据

esxcli network firewall ruleset set --ruleset-id snmp --allowed-all false
esxcli network firewall ruleset allowedip add --ruleset-id snmp --ip-address 192.168.12.0/24
esxcli network firewall ruleset set --ruleset-id snmp --enabled true
/etc/init.d/snmpd restart

# snmpwalk -v 2c -c public 192.168.12.237 .1 | grep Huawei
SNMPv2-SMI::mib-2.47.1.1.1.1.2.1 = STRING: "Huawei Technologies Co., Ltd. RH1288 V3"
SNMPv2-SMI::mib-2.47.1.1.1.1.12.1 = STRING: "Huawei Technologies Co., Ltd."

snmpwalk -v 2c -c public 192.168.12.237 sysDescr.0

snmpwalk -v 2c -c public 192.168.12.237 hrDeviceDescr.1

snmpwalk -v 2c -c public 192.168.12.237 mib-2.47.1.1.1.1.2.1

snmpwalk -v 2c -c public 192.168.12.237 enterprises.6876.3.5.2.1.5.1

使用 SNMPv2-MIB监控VMWARE ESXi的设备
esxi_open_snmp_service

esxi_snmp_mib