解析:應用IBM Tivoli實現虛擬化環境的監控
服務器虛擬化越來越多的為企業所采納,對虛擬化環境的服務器進行有效的集中監控,已經成為企業IT管理的一個重要難題。本文主要介紹使用IBM Tivoli Monitoring(以下簡稱ITM)VMware VI監視代理程序對基于VMware產品的企業級虛擬化環境進行集中監控。
文章主要包括如下幾個方面的內容:
• VMware 企業級虛擬化環境對集中監控管理的需求;
• ITM VMware VI Agent對虛擬化環境集中監控的部署架構;
• ITM VMware VI Agent的安裝和配置;
• 部署和配置中可能的問題解決和經驗總結。
1. VMware 企業級虛擬化環境對集中監控管理的需求
隨著企業的成長以及業務和應用的不斷增加,IT系統規模日益龐大,帶來高能耗、數據中心空間緊張、IT系統總體擁有成本高的問題;而現有服務器、存儲系統等設備又沒有充分被利用起來,資源極度浪費。這就使得企業將目光投向了虛擬化技術,大量基于VMware虛擬化技術的環境開始在IT部門部署。這同時帶來了另外的一個問題:如何對虛擬化環境的服務器進行有效的集中監控?
雖然VMware vCenter提供了對它所管理的ESX服務器的監控管理,但是對于一個大型的虛擬化環境,一般會有多達幾千個虛擬機運行在多個vCenter的管理環境中,對此虛擬環境的集中管理,已經成為企業IT管理的一個重要難題。
ITM是一套完整的集中監控解決方案,它提供了從一個或幾個指定工作站監視企業中所有系統的可用性和性能的方法,監視和管理各種操作系統中的系統和網絡應用程序,并提供報告以跟綜趨勢和對問題進行故障診斷。對于VMware虛擬化環境,ITM提供了VMware VI監視代理程序,負責收集服務器性能數據提供給ITM進行統一管理。
2. ITM VMware VI監視代理程序對虛擬化環境集中監控的部署架構
2.1 ITM VMware VI 監視代理程序基本體系結構
VMware VI Agent作為ITM部署環境的一個代理監視組件,負責收集有關VMware ESX服務器和虛擬機的內存、CPU、系統、磁盤和網絡使用情況的監視信息。同時還提供啟動和停止虛擬機,歷史數據記錄和事件監視的功能。其基本體系架構如圖1中所示:
圖1 ITM 軟件中代理程序的基本體系結構
#p#
2.2 Monitoring Agent for VMware VI環境部署
圖2中展示了ITM VMware VI Agent在虛擬化環境和監控環境中的部署。VMware VI Agent作為監視代理程序,通過SSH從VMware vCenter收集信息,并發送給Tivoli Enterprise Monitoring Server(TEMS),保存到Tivoli Data Warehouse里,Tivoli Enterprise Portal Server(TEPS)為用戶提供Portal訪問界面,展現虛擬化環境的監視情況。
圖2 ITM VMware VI Agent 部署架構
3. ITM VMware VI Agent安裝和配置
3.1 Monitoring Agent for VMware VI安裝步驟
本文以Windows 2008 R2環境為例介紹VMware VI Agent的安裝步驟。 VMware VI代理監視程序的安裝和普通的Windows下應用程序的安裝類似,執行setup.exe程序,然后按照界面說明依次進入“下一步”,其中兩個主要的步驟需要特別注意。
1) 如圖3所示的密鑰輸入界面,用戶需要輸入一個32位字符的密鑰,這個密鑰必須是和監視代理(VMware VI Agent)要連接到的監視服務器Tivoli Enterprise Monitoring Server(TEMS)安裝時同樣的密鑰??梢月撓礣EMS的安裝人員獲得密鑰。
圖3 Monitoring Agent for VMware VI密鑰輸入界面
2) 如圖4所示的組件選擇界面,用戶需要選擇“Tivoli Enterprise Monitoring Agent Framework”和“Monitoring Agent for VMware VI”兩個組件。如果用戶使用的是64位的環境,需要選擇帶有“86-x64 only”的組件。
圖4 Monitoring Agent for VMware VI組件選擇界面
#p#
3.2 配置VMware VI監視代理程序
1. 在VMware Virtual Infrastructure中創建用戶標識。
VMware VI Agent使用此用戶標識與VMware vCenter進行通訊。監視代理程序需要對受監視的數據源隊形有System.View和System.Read的特權的用戶標識。要在監視代理程序中啟用PowerOnVM和PowerOffVM的命令,該用戶還應該擁有Virtual Machine-Interaction-Power On和Virtual Machine-Interaction-Power Off的特權。
2. 將該數據源的SSL證書添加到代理程序的證書信任密鑰庫中。
1) 將SSH證書文件復制到代理程序計算機上。(缺省的VMware vCenter的SSH證書文件名為rui.crt,缺省情況下存放在C:\Documents and Settings\All Users\Application Data\VMware\VMware VirtualCenter\SSL)
2) 將SSH證書文件放到您選擇的目錄中。不要覆蓋證書文件,為每個證書使用唯一的文件名并使用唯一的標簽。
3) 使用keytool命令將數據源證書添加到代理程序的證書信任密鑰庫:
keytool -import -noprompt -trustcacerts -alias CertificateAlias -file CertificateFile -keystore Truststore -storepass TruststorePassword
其中:
CertificateAlias
添加到代理程序證書信任密鑰庫中的每個證書的唯一引用。例如,來自datasources.example.com的證書的相應別名為datasource。
CertificateFile
要添加到信任密鑰庫的VMware數據源證書的完整路徑和文件名。
Truststore
VMware VI Agent證書數據庫的完整路徑和文件名。請使用以下路徑和文件名:
• Windows(32 位): install_dir\tmaitm6\kvm.truststore
• Windows(64位): install_dir\tmaitm6_x64\kvm.truststore
• Linux(32位): install_dir/li6263/vm/etc/kvm.truststore
• Linux(64位): install_dir/lx8266/vm/etc/kvm.truststore
TruststorePassword
ITMVMWAREVI是VMware VI Agent信任密鑰庫的缺省密碼。
命令實例:
keytool -import -noprompt -trustcacerts -alias VSPHEREVC01 -file vc01.company.com.crt -keystore kvm.truststore -storepass ITMVMWAREVI
注意:要使用keytool命令,Java運行時bin目錄必須位于路徑中,可使用下列命令設置:
Windows(32位):set PATH=%PATH%;install_dir\CNPSJ\java\bin
Windows(64位):set PATH=%PATH%;install_dir\CNPSJ\java\bin
Linux(32位):PATH=”$PATH”;install_dir/JRE/li6263/bin
Linux(64位):PATH=”$PATH”;install_dir/JRE/lx8266/bin
#p#
3. 使用監視服務管理界面配置VMware VI 監視代理 。
1) 啟動“Manage Tivoli Enterprise Monitoring Services”。
Start ? All Programs ? IBM Tivoli Monitoring ? Manage Tivoli Monitoring Services
“Monitoring Agent for VMware VI”服務將顯示在主界面中,只是上面所安裝的監視代理的模板。
2)點選“Monitoring Agent for VMware VI”,右鍵菜單中選擇“Advanced”? “Configure Advanced ...”彈出如圖5所示的Vmware VI監視代理配置界面,保持使用IP.PIPE作為默認協議,輸入TEMS server的主機名或IP地址,使用默認端口1918,然后點擊確定。
圖5 VMware VI監視代理配置界面
3)輸入一個唯一的名稱作為新建監視代理的實例名稱,然后確定。如圖6中所示
圖6 VMware VI監視代理實例名稱輸入界面
4)如圖7所示的數據提供程序選項卡界面,用戶可以設置如下的內容:
監視代理實例名稱、是否在使用SSL進行網絡通信時需要代理程序驗證SSL證書、數據提供程序日志文件***數量、每個數據提供程序日志的***大小(以KB為單位)、數據提供程序日志中詳細信息的級別。
圖7 VMware VI監視代理數據提供程序選項卡
5)進入數據源選項卡界面,點擊新建按鈕,新的配置清單顯示在主界面,如圖8中所示。用戶可以為每個Vmware VI Agent實例定義多個數據源,并可以在遠程監視主機系統上配置監視代理程序的多個實力。一個實例可以監視所有Vmware Virtual Infrastructure,也可以定義不同的實例來監視特定組。用戶可以設置如下的內容:
數據源標識:此數據源的唯一標識。
數據源主機名:代理程序從中收集監視數據的數據源。可以是vCenter或ESX主機。
使用到數據源的SSL連接:限制為“是”或“否”,這里要選擇“是”。
數據源用戶標識:在***步中創建的VMware Virtual Infrastructure用戶標識。
數據源密碼:上面用戶標識指定的密碼。
圖8 VMware VI監視代理數據源選項卡
6)點擊確定后,新創建的代理程序實例出現在服務管理界面列表中。用戶可以重復上面的步驟來創建多個監視代理實例。選擇代理實例,點擊工具欄的啟動按鈕或者從右鍵菜單選擇來啟動。啟動的多個監視代理實例如圖9所示。
圖9 多個VMware VI監視代理實例的服務管理界面
7)VMware VI監視代理程序配置完成,用戶可以登陸到ITM門戶界面(TEPS)查找到受監視系統的性能信息。一般是在http://hostname:1920///cnp/kdh/lib/cnp.htm。效果如下圖10中所示。
圖10 VMware VI代理監視結果界面
#p#
4. 部署和配置中可能的問題解決
4.1問題驗證途經
1. VMware VI Agent中主要的故障診斷功能部件是日志記錄,幾個主要日志文件如下:
• VMware VI Agent日志:
文件:hostname_vm_instance_HEXtimestamp-nn.log
• VMware VI數據提供程序日志:
文件:hostname_vm_kvmviclient_HEXtimestamp-nn.log
• 文件:hostname_vm_kvmagent_HEXtimestamp-nn.log
路徑:install_dir\tmaitm6\logs
2. 對于某個監視代理實例的連接問題,可以直接從管理代理服務的界面,選擇相應的實例,在右鍵菜單中選擇“Advanced”> “View Trace Log …”,然后選擇相應的日期的日志,先是如圖11所示的信息。
圖11 VMware VI代理實例日志瀏覽界面
4.2常見問題
1. Monitoring Agent for VMware VI agent無法連接,或無法再連接到ESX Server數據源。
解決方法:
ESX Server hostd進程可能已停止,在ESX的Service Console界面,使用service vmware-mgmt restart命令重新啟動hostd進程。
2. 在ITM門戶界面導航樹中只顯示***節點,不顯示任何ESX Server子節點。
解決方法:
1) 如果日志中沒有顯示系統發生SSL錯誤,驗證KFW_TOPOLOGY_MUST_USE_FULL_NAME_AFFINITIES環境變量是否已經添加到TEPS環境配置文件中,確定TEPS已重新啟動。
2) 如果日志中有一行顯示系統發生SSL錯誤,驗證數據源證書是否已經添加到代理程序的證書信任密鑰庫中,可以使用keytool –list命令查看已添加到代理程序的證書信任密鑰庫中的證書。
keytool -list -v -keystore %CANDLE_HOME%\tmaitm6\kvm.truststore -storepass ITMVMWAREVI
5. 總結
虛擬化環境中服務器的集中監控,可以使用ITM的監視代理程序來實現。監視代理程序負責從虛擬環境中的不同服務器取得相應的性能數據,并將這些數據發送給TEMS,并保存在ITM的數據倉庫里。有了這些性能數據,用戶可以使用Cognos對性能進行數據挖掘處理,根據具體的需求生成所需的商務智能(Business Intelligence)報表,從而幫助用戶更好地利用數據,提高決策質量。
IBM Tivoli Monitoring for Virtual Servers不僅包括對VMware虛擬化環境進行監視的代理程序,同時還提供了對Citrix虛擬化環境和NetApp Storage的監視代理程序,完整的IBM Tivoli Monitoring for Virtual Servers產品包括如下的監視代理程序軟件:
• IBM Tivoli Monitoring for Virtual Servers: Citrix Agent
• IBM Tivoli Monitoring for Virtual Servers Agent for NetApp Storage
對于監視代理程序,在規模比較小的部署環境中,只要系統的容量足夠,VMware VI Agent可以與vCenter安裝在同一個系統上;對于有多個vCenter的大規模環境,需要將多個監視代理程序部署多個獨立的服務器上,并且連接不同的TEMS服務器,同時盡量選擇與vCenter系統極為接近的服務器,以確保數據收集具有更高的可用性。
作者簡介:
史會卿,x86平臺虛擬化專家
任職于某大型外資IT企業,從事x86服務器的虛擬化工作。熟悉主流的虛擬化技術、IBM System x系列服務器、IBM DS4000/5000系列存儲器和IBM Tivoli相關軟件產品。曾部署基于VMware View的桌面虛擬化環境,同時為企業內部提供服務器虛擬化的方案設計、部署、優化及技術支持。同時參與部署了多個基于Tivoli產品的管理項目。
實踐經驗豐富,熟悉虛擬化環境的設計、部署和優化等。對于IBM Tivoli系列產品技術具有深入研究。
【編輯推薦】
- 用VMControl V2.2優化Power Systems
- Systems Director VMControl是什么?
- 誰家虛擬化更***?IBM對比VMware
- 實戰:IBM Systems Director VMControl安裝攻略