本文首發於爛泥行天下。ios
要監控ESXI,打算經過snmp方式進行監控,這樣操做比較簡單。可是要使用SNMP方式進行監控,必需要開啓ESXI的SNMP服務。ESXI因爲版本號的不一樣,SNMP開啓的方法也不盡相同。ide
咱們先來介紹ESXI5.0開啓方法。在開啓以前,咱們先使用ESXI提供的工具進行檢測。這個檢測工具是VMware vSphere CLI,這個工具是須要單獨下載並安裝的。工具
在此我已經下載並安裝VMware vSphere CLI工具,咱們主要是使用該工具提供的一個vicfg-snmp.pl腳本。在系統命令行下,切換該工具的安裝目錄下。以下:spa
cd "C:\Program Files (x86)\VMware\VMware vSphere CLI\bin"命令行
而後使用,以下命令進行檢測。以下:3d
vicfg-snmp.pl --server 192.168.1.247 --username root --password lianzhou!@# --showrest
結果以下:server
注意圖中標記出來的***部分:Enabled:0。說明ESXI5.0目前沒有開啓SNMP服務。xml
注意vicfg-snmp.pl使用方法以下:blog
vicfg-snmp.pl --server [ESXi主機IP] --username [root帳號] --password [root帳號密碼] --show
下面是開啓SNMP的方法,經過SSH方式登陸到ESXI5.0上,編輯/etc/vmware/snmp.xml文件。以下:
vi /etc/vmware/snmp.xml
<config><snmpSettings><enable>true</enable><communities>public</communities><targets>192.168.1.247@161 public</targets></snmpSettings></config>
注意圖中***部分標記出來的部分。true表示開啓SNMP服務,public表示的是snmp的團體名,192.168.1.247@161 public表示該snmp使用161端口,其中表示的192.168.1.247esxi的管理IP地址。
以上修改完畢後,SNMP服務不會當即生效,須要系統重啓服務才能生效。重啓服務,須要使用如下命令,以下:
/sbin/services.sh restart
注意ESXI5.0執行該命令後,SSH、vsphere鏈接都會斷開。
重啓完畢後,咱們再次使用vicfg-snmp.pl腳本進行檢測,以下:
經過上圖,咱們能夠看到***標記出來的部分:Enabled:1。說明ESXI5.0已經開啓SNMP服務。
此時咱們就能夠經過其餘監控軟件,來監控ESXI5.0了。在這我使用的nagios進行監控,以下:
也許你會說,爲何不能直接經過vsphere來開啓SNMP服務呢?
這點就是ESXI5.0與ESXI5.1及其之後版本不一樣的地方。咱們先來看看ESXI5.0,登陸Vsphere,配置—軟件,以下:
經過上圖,咱們能夠看到在「服務」選項中沒有SNMP服務,因此就沒有辦法開啓了。
可是在ESXI5.1及其之後的版本中,咱們登陸vsphere查看,以下:
經過上圖,咱們能夠看到ESXI5.1已經集成snmp服務。可是我在vsphere中開啓SNMP也是會報錯的,後來仍是按照ESXI5.0開啓SNMP的方法,直接修改/etc/vmware/ snmp.xml文件。重啓服務後,才能在vsphere中開啓,以下:
經過上圖,咱們能夠看到ESXI5.1的SNMP服務已經正常啓動了。
注意ESXI5.1在使用/sbin/services.sh restart命令進行重啓服務時,ESXI5.1是不會斷開SSH鏈接,可是vsphere的鏈接會斷開。這點也是與ESXI5.0的不一樣之處。
如今咱們再經過nagios監控ESXI5.1,以下:
以上就是有關ESXI開啓SNMP服務的方法。