要監控esxi,打算通過snmp方式進行監控,這樣操作比較簡單。但是要使用snmp方式進行監控,必須要開啟esxi的snmp服務。esxi由于版本号的不同,snmp開啟的方法也不盡相同。
我們先來介紹esxi5.0開啟方法。在開啟之前,我們先使用esxi提供的工具進行檢測。這個檢測工具是vmware vsphere cli,這個工具是需要單獨下載下傳并安裝的。
在此我已經下載下傳并安裝vmware vsphere cli工具,我們主要是使用該工具提供的一個vicfg-snmp.pl腳本。在系統指令行下,切換該工具的安裝目錄下。如下:
cd "c:\program files (x86)\vmware\vmware vsphere cli\bin"

然後使用,如下指令進行檢測。如下:
vicfg-snmp.pl –server 192.168.1.247 –username root –password lianzhou!@# –show
結果如下:
<b>注意圖中标記出來的黃色部分:enabled:0。說明esxi5.0目前沒有開啟snmp服務。</b>
注意vicfg-snmp.pl使用方法如下:
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
<b>注意esxi5.0執行該指令後,ssh、vsphere連接配接都會斷開。</b>
重新開機完畢後,我們再次使用vicfg-snmp.pl腳本進行檢測,如下:
<b>通過上圖,我們可以看到黃色标記出來的部分:enabled:1。說明esxi5.0已經開啟snmp服務。</b>
此時我們就可以通過其他監控軟體,來監控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服務的方法。