VMware ESX
VMware ESX
VMware ESX伺服器是在通用環境下分區和整合系統的虛擬主機軟體。它是具有高級資源管理功能高效,靈活的虛擬主機平台。
VMware ESX Server 為適用於任何系統環境的企業級的虛擬計算機軟體。大型機級別的架構提供了空前的性能和操作控制。它能提供完全動態的資源可測量控制,適合各種要求嚴格的應用程序的需要,同時可以實現伺服器部署整合,為企業未來成長所需擴展空間。
亦提供儲存虛擬化的能力。除可因兼并伺服器減少設備購買及維護成本外,亦可因效能的尖峰離峰需求,以VMotion技術在各伺服器或刀片伺服器之刀板間彈性動態遷移系統平台,讓IT人員做更有效的資源調度,並獲得更好且安全周密的防護,當系統發生災難時,可以在最短時間(毋需重新安裝操作系統),迅速復原系統的運作。
完美匹配企業數據中心,通過提高資源使用率,擴展計算機性能和優化伺服器,VMware ESX伺服器幫助企業降低計算機基礎構架的成本。VMware ESX伺服器能實現:
·伺服器整合
VMware ESX伺服器能在更少的高伸縮和高可靠企業級伺服器上,包括刀片式伺服器,整合運行在不同操作系統上的應用程序和基本服務
·提供高性能並擔保服務品質
ESX伺服器支持出於開發和測試為目的,在同一系統內的虛擬主機集群;同樣也高性能的支持系統間的虛擬主機集群。VMware ESX伺服器擔保伺服器的CPU,內存,網路帶寬和磁碟I/O處於最優化的狀態,改進對內和對外的服務
·流水式測試和部署
VMware ESX伺服器壓縮虛擬主機鏡像以便它們在環境間能被非常容易地遷移,確保軟體測試者和質量檢驗工程師在相對少的時間和硬體狀態下做更多有效的測試
·可伸縮的軟硬體構架
VMware ESX伺服器包含支持VMware Virtual SMP,確保企業在靈活,安全和輕便的虛擬主機上運行所有重要的應用程序。
VMware ESX伺服器傳輸物理系統到邏輯資源池,系統和應用程序被分離在包含多個虛擬機的單一硬體片上。系統資源按需動態分配到任何操作系統上,提供大型機的性能和伺服器資源控制。VMware ESX伺服器通過在安全便捷的虛擬機上執行分區和分割伺服器資源來簡化伺服器的基礎構架。VMware ESX伺服器確保伺服器資源能被遠程管理,自動預製和標準化。高級資源管理控制通過企業擔保服務質量。
直接運行在系統硬體上的VMware ESX伺服器為部署,管理和遠程控制多虛擬機提供了一個安全,唯一的平台。有了VMware ESX伺服器:
·特定系統的應用程序能被遷移到在更可靠和可伸縮的不同虛擬機上去。
·伺服器能從任何地方被遠程管理,簡化伺服器維護。
·通過高級資源管理控制,服務質量能得到保證。
·普通的監控和管理任務是自動腳本式的。
·無須添加新的物理系統,性能得到明顯提升。
Windows伺服器的管理員早已熟悉了可怕的藍屏死機(BSOD),這就意味著伺服器完全地終止。VMware ESX也有類似的狀況,叫做紫屏死機(PSOD),典型的是由於硬體問題和VMware代碼中的bug造成的。
當一個PSOD出現時,你需要做的第一件事情就是記錄下屏幕上顯示的信息,我建議用數碼相機或者手機拍一個快照。PSOD信息包括ESX的版本和構建、異常類型、寄存器轉儲、在崩潰時每一個CPU在運行什麼、跟蹤信息、伺服器正常運行時間、錯誤信息和內存核心轉儲信息。這些信息對你沒用,但是VMware技術支持人員可以解碼上述信息,幫助測定崩潰的原因。
不幸的是,當遭遇到PSOD,除了記錄屏幕上的信息,你唯一的選擇是關閉伺服器重啟。一旦伺服器重啟起來,你將在伺服器的/root目枷路⑾謒kernel-zdump-*文件,這個文件對定位問題很有價值。你可以用vmkdump工具從該文件中提取vmkernel日誌文件(vmkdump–l),然後定位引起PSOD的原因。VMware支持一般也需要這個文件。出現PSOD常見的原因是伺服器內存不足,那個轉儲文件將有助於識別導致問題的內存模塊並替換這個模塊。
如果你懷疑你系統的RAM可能有問題,可以用一個內置的工具在後台檢查你的RAM而不影響你正在運行的虛擬機。該RAM檢查工具運行在VMkernel里,通過登錄到伺服器控制台,輸入Service Ramcheck Start開啟。
當正在運行RAM檢測時,它把所有的活動和任何錯誤信息記錄到/var/log/vmware目錄下的文件ramcheck.log和ramcheck-err.log中。然而,它的一個缺陷是如果你有虛擬機正在運行,用這個工具不能檢測所有的RAM,只能檢測在ESX系統中未用的RAM。一個比較徹底的檢測你的伺服器中RAM的方法是關閉ESX,從CD引導,然後運行Memtest86+程序。
如果你聯繫VMware技術支持人員,他們一般會要求你運行vm-support工具,它將把所有的ESX server的日誌和配置文件打包成一個文件。通過root許可權登錄到服務控制台,然後不需要設置任何選項,輸入“vm-support”就可以運行這個工具。這個工具將創建一個Tar文件,以"esx---..tgz"格式命名。你可以通過FTP把它發送給VMware技術支持人員。確保把該Tar文件從ESX伺服器上刪除,這樣做可以節省磁碟空間,或者,你可以通過VI client生成同樣的文件。選擇Administration,然後選擇Export Diagnostic Data,選擇你的主機(VirtualCenter數據選項)和一個本地PC目錄來存儲將要創建的文件。
日誌文件一般是排除各種類型問題的最好工具。ESX有許多的日誌文件,你需要檢查哪個日誌文件取決於你所遇到的問題。以下是ESX日誌文件的列表,你通常可以用來定位ESX伺服器的問題。VMkernel和主機日誌文件一般都是你需要首先檢查的。
VMkernel-/var/log/vmkernel——與虛擬機和ESX伺服器相關的活動的記錄。帶擴展名以數字循環,當前的日誌沒有擴展,最近的日誌帶有“.1”擴展。
VMkernel Warnings-/var/log/vmkwarning——記錄虛擬機的活動,VMkernel日誌的子集,用同樣的循環模式。
VMkernel Summary-/var/log/vmksummary——用於確定ESX伺服器正常運行的時間和可用性統計,可讀性的總結在/var/log/vmksummary.txt中。
ESX Server host agent log-/var/log/vmware/hostd.log——包含管理和配置ESX伺服器主機和它的虛擬機代理信息。(查找文件的date/time戳來找到最近輸出的日誌文件,或者打開hostd.log,該文件連接到當前的日誌文件)。
ESX Firewall log-/var/log/vmware/esxcfg-firewall.log——記錄所有的防火牆規則事件。
ESX Update log-/var/log/vmware/esxupdate.log——記錄所有的通過esxupdate統計所在的更新。
Service Console-/var/log/messages——包括所有的用於排除虛擬機和ESX伺服器故障的一般日誌信息。
Web Access-/var/log/vmware/webAccess——記錄通過基於web訪問ESX伺服器的信息。
Authentication log-/var/log/secure——包含所有的需要認證的連接信息,例如VMware守護進程和由xinetd守護進程發起的動作。
Vpxa log-/var/log/vmware/vpx——記錄和VirtualCenter通訊的代理的信息,通過查找文件的date/time戳來找到最近輸出的文件或者打開hostd.log,該文件連接到當前的日誌文件。
作為解決故障過程的一部分,你經常需要找出各種ESX組件的版本和使用的補丁,下面是一些命令,你可以從服務台運行來完成:
輸入vmware-v來檢查ESX伺服器的版本,例如VMware ESX Server 3.0.1 build-32039
輸入esxupdate–l query來查看安裝的補丁
輸入vpxa–v來檢查ESX伺服器的管理版本,例如VMware VirtualCenter Agent Daemon 2.0.1 build-40644
輸入rpm–qa | grep VMware-esx-tools來檢查ESX伺服器VMware Tools安裝的版本,例如VMware-esx-tools-3.0.1-32039
如果所有可能失敗,重啟Vmwate主機代理服務
許多的ESX問題可以通過重啟VMware主機代理服務(vmware-hostd)解決,該服務負責管理大部分ESX主機的操作,通過登陸服務控制台,輸入service mgmt-vmware restart來實現。
注意:ESX 3.0.1有一個bug,如果你的ESX伺服器為你的VM配置了auto-startups選項,它將重啟你所有的VM。這個bug在3.0.1和3.0.2中用一個補丁修復,但是在ESX 3.5中用另一個發布的補丁修復。在運行此命令時最好臨時禁止auto-startups選項。
在某些情況下,當你重啟主機代理服務,重啟vmware-vpxa服務可以定位發生在ESX和VI Client之間以及ESX和VirtualCenter之間的問題。該服務是管理代理,處理ESX和它的客戶端的所有通訊。通過登陸ESX主機,輸入service vmware-vpxa restart就可以完成。需要注意的是重啟哪種服務都不會影響你的虛擬機操作(除了上述提到的bug)。
VMware ESX伺服器常見問題之修復凍結的服務控制台
另一個會發生的問題是你的服務控制台掛起,不允許你本地登入。硬體鎖定或者一個死鎖狀態都會導致這樣。當發生這種狀況時,你的VM可以繼續正常運行,但是重啟ESX是通常恢復的唯一的方法。在你重啟之前,試著關閉你的客戶VM,或者用VMotion把它們遷移到另一個ESX主機上。通過SSH遠程連接的VI Client或者alternate/emergency控制台的其中之一來完成,可以先按Alt-F6,然後按Alt-F2鍵。你也可以按Alt-F12在控制台的屏幕上顯示內核信息。如果你可以關閉或者遷移你的VM,你就可以通過VI Client或者alternate控制台發出重新引導的命令來試圖重啟伺服器。如果不行,冷啟動伺服器就是你唯一的選擇了。
可能出現的問題是你也許丟失了部分或所有的網路配置。如果發生這種情況,由於你不能通過VI Client連接,你必須用ESX本地服務控制台來重新構建網路。VMware已經發布了相關知識的文章:如何使用esxcfg-*服務控制台命令來重建你的網路和如何驗證你的網路配置。
VMware ESX Server為優化配置和虛擬網路架構提供了靈活性,滿足了多種不同的需求。但是,配置的靈活性可能會是一把雙刃劍,因為VMware的基本網路架構提供了如此之多的選擇,可能反倒容易令人困惑。所以,為了優化ESX網路,網路管理員應該先熟悉VMware在刀片和機架伺服器上的基本網路選擇。
塔式和機架伺服器需要至少五個網路適配器。因為刀片伺服器和底盤(chassis)從底盤到分散式/核心交換機的uplink埠數量有限,網路管理員應該從高階捷豹式交換器(Chassis Switch)配置uplink埠的鏈路聚集(Trunking),並且實施802.1q VLAN標記,網路至少為每秒1GB。
系統管理員可以使用多個乙太網埠配置ESX。活躍(Active)或備用(Standby)的配置都應該採用,以防主要的埠發生故障。同時,網路管理員應該採用多個負載平衡配置組合埠配置,這將基於源埠IT、源MAC地址的散列值以及來源和目標地基於IP的散列值。
觀察網路故障,監控適配器的連接狀態,以及利用信標(Beaconing)查找網路上游的問題。同樣,可以對埠進行配置,來通知網路中的交換機某個埠已經重新配置,因此ARP表格進行更新,這樣可以最小化其他的錯誤。
VLAN(虛擬LAN)並不是什麼新概念,多數網路架構師和管理員都了解在傳統基礎設施中配置VLAN的方方面面。但是,使用VMware VI3配置VLAN卻不盡相同。沒有虛擬化的工作過程和有虛擬化的工作過程是不一樣的。所以,在設置VLAN之前,網路管理員需要了解一下事項:
需要多少個物理NIC
一個台新的虛擬伺服器把哪一個VLAN叫做home
VLAN如何工作
多數VMware專家談到在VMware Infrastructure(VI3)中使用虛擬LAN(VLAN)時,他們通常是指VLAN Trunk的使用。不過,VI3使用的VLAN配置還有其他三種類型:Virtual Switch Tagging(虛擬交換機標記,縮寫VST)、External Switch Tagging(外部交換機標記,縮寫EST)和Virtual Guest Tagging(虛擬guest標記,簡稱VGT)。VLAN標記允許把一個VLAN直接連接到一個子虛擬機。管理員應該對什麼是VST、EST和VGT以及如何使用進行了解。
對於子虛擬機而言,VST通常是最佳的選擇,但要取決於具體的業務需求。VST使用VLAN Trunk。物理交換機把ESX Server的交換機當作一台物理交換機看待,在跨Trunk傳遞通信到伺服器NIC的過程中,對通信進行相應的標記。然後ESX Server利用標記引導通信到其埠。
如果組織內的伺服器是插入到分散式層的交換機,交換機連接到一個核心交換機,那麼EST或VGT可能更加適合。在這種情況下使用VST標記就幾乎不可能。你可能需要使用EST標記。
此外,如果某一個具體的虛擬機需要同時在多個VLAN上的話,VGT就更加合理。你將需要子操作系統支持VLAN驅動,這種情況在Unix和Unix相似的操作系統很常見,如Solaris、OpenBSD和某些Linux分佈系統。
至少要兩個介面分配到ESX服務控制埠。如果你只分配了一個介面,VirtualCenter 2.5會警告你。但VirtualCenter之前的版本不會。
VirtualCenter2.5的錯誤信息將會造成集群顯示器錯誤標誌出現,可能從找不到的連接ESX 3.01和3.02主機的介面發出,更有可能是3.5主機。這一點很重要,因為如果你的虛擬伺服器碰到一個新的或額外的錯誤,你可能不會立刻注意到。為了解決這個問題,在不需要冗餘性的虛擬機網路使用一個集合的vSwitch,將它在網路和VirtualCenter中重新進行配置,與服務控制埠位於同一個網路。
如果你使用ESX進行物理到虛擬的遷移,要知道你可以配置虛擬伺服器,讓網路適配器在啟機時就斷開。你將能夠從子操作系統看到硬體的清單,但是它顯示好像網路斷開了。使用一台不連網的虛擬機,雖然你無法測試IP地址,但你可以配置你的IP定址和DNS信息。
這個選項很有用,因為在某些情況下,在網路上具有一個後備的虛擬機,並運行預設的任務可能會產生各種錯誤,例如,IP地址重複,虛擬機應用程序與另一台運行的系統同時獲取數據,業務系統更新的版本傳送到其他系統產生的格式問題等等。
ESX的網路提供了很大的靈活性,但是靈活性也為錯誤留有空間。通過本文以及文章中的對其他文章鏈接,你應該可以很好地理解如何以及為什麼為你的虛擬伺服器進行網路配置,對冗餘性、速度及可用性進行優化,以滿足你計算環境的具體需求。