因为需要监控ESXi vSphere 5.5 hosts 的数据,准备使用SNMP的方式获取需要的数据。但是发现ESXi5.5的SNMP默认是没有开启的(
默认ESXi snmp的服务是关闭状态的
~ # cat /etc/vmware/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