新興虛擬化平臺,本文分析運行VMware ESX的下一版本vSphere的硬體需求。
VMware ESX的下一版本只能運行在64位CPU上。因此你可能疑惑你目前的硬體是否是64位元CPU,以便你能升級到vSphere。
首先我們來看看什麼是64位CPU。在CPU中,術語bit指的是處理器記憶體能存放的資料數量。因此在64位CPU上的每個處理器記憶體能存放 64bit,而32位CPU的存放32bit。bit是測量資訊存儲的最小單位。一byte通常包括八bit。多數x86伺服器都是32位或者64位的。 如今,幾乎所有的企業伺服器都有64位CPU,不過許多較舊的伺服器擁有32位CPU。
擁有64位CPU的能運行32位和64位操作系 統和應用。許多作業系統都有64位元和32位元版本,基於伺服器硬體使用情況安裝。不像有32位和64位CPU的不同版本的作業系統和應用,VMware ESX 3.x默認下都支持,就沒有必要安裝某個版本。不過VSphere只能運行在64位CPU上。如果你將VSphere安裝在只有32位CPU的伺服器上, 就會出現下面這樣的錯誤資訊:
為了解釋這個圖像,32位元版本指的是ESX 3.5.x,因為它只支持32位CPU,vSphere只支持64位CPU。你可能也懷疑“long mode”是64位CPU,能在兩個模式裏運行:egacy和long mode。當操作處於legacy模式,CPU僅僅運行32位代碼,64位沒用使用到。當操作處於long模式,CPU能運行本身是64位的應用,也以一 種相容的模式運行32位元應用。
ESX 3.x以legacy模式還是long模式運行取決於伺服器所使用的CPU類型。VSphere只能支援long模式,因此需要64位元CPU。VMware這樣做的原因在於增加可測量性和性能。
但是不是所有的64位CPU都相同。僅僅因為你擁有64位伺服器並不意味著能在上面運行64位子作業系統。 x86 64位架構旨在使用改良的記憶體模式,這種架構由64位位址空間組成,用在32位元架構中的分段記憶體模式被移除。因此,這導致在虛擬主機伺服器上的子作業系統 出現問題。它們沒有有效的機制來隔離來自64位子作業系統的虛擬機監控器。Intel和AMD都已經在他們的CPU中添加了功能,以便以Long模式運行 時支援記憶體分段,不過早期64位元CPU模式沒有這種功能。
Intel和AMD伺服器
當以Long模式運行時,早期的AMD64 CPU(C版及更早版)丟失了記憶體分段支援,因此D版和後面發佈的CPU要求運行vSphere。如果運行在AMD皓龍處理器上,你需要AMD皓龍家族的 CPU Rev E或者更後面的版本。此外,許多AMD伺服器有個叫做AMD-V(AMD虛擬化擴展)的BIOS功能,這些伺服器是必須支援64位子作業系統的。 Intel CPU需要EM64T和VT支持,以及伺服器的BIOS。EM64T是Intel的64位技術, VT是他們的虛擬化技術。Intel EM64T CPU在Long模式下也沒有記憶體分段支援,但是VT功能能允許ESX運行。
Intel-VT和AMD-V功能默認情況下 在伺服器的BIOS裏都是禁用的,因此檢查BIOS查看是否禁用。這個設置的BIOS設置位置依賴伺服器製造商的需求,但是一般位於高級或安全選項下面。 如果在伺服器BIOS設置沒有看見這些選項啟用虛擬化功能,這可能是由於伺服器不支援,這種情況常見於較舊的伺服器。或者你的BIOS版本應該升級了。與 伺服器製造商核對是否有較新的BIOS版本,以便升級後能啟用這些高級功能。
需要64位元處理器?
你如何查找你是否需要64位元處理器?有幾個可用的工具查看伺服器,並看它們是否擁有64位CPU和運行64位子作業系統。第一個工具是CPU識別工具。 這個工具是VMware提供的一個小型ISO檔,用以識別支援你主機的CPU,並讓你知道是否支援64位元long模式和64位子作業系統。你可以將 ISO檔刻錄到CD,或者使用遠端管理面板啟用,因此可以從ISO檔關閉和啟動你的主機。
這個工具意味著直接運行在主機上,這就需要關閉它,不過我也載入ISO檔到子作業系統的虛擬CD-ROM,從這啟動得到相同的效果。我相信由於當多數子作業系統的硬體是一般虛擬硬體,CPU通常作為牌子和在主機伺服器裏的任何模式顯示。一旦運行此工具,如下圖所示:
在上面的HP DL360 G4例子中,你能看見它支援64位元long模式,但是不支援64位元VMware子作業系統。這意味著你能在伺服器上安裝vSphere,但是只能在主機上運行32位子作業系統。下圖是使用AMD皓龍CPU的HP DL385 G1伺服器例子。
這台伺服器支援64位元long模式64位元VMware子作業系統,因此你能在其上安裝vSphere,並且運行32位元和64位子作業系統。
檢查主機伺服器CPU的另一種方法是使用工具VMware CPU Host Info。這個工具能運行在任何工作站,連接vCenter Server(儘管不過單獨的ESX主機)和彙報每個主機的CPU性能。不過,這個工具只能說明主機是否有VT功能,或者是否能運行64位子作業系統。它 不能告訴你主機是否支援64位元long模式。
VMware CPU Host Info通過使用VMware Infrastructure SDK從每台主機查詢系統資訊工作。然後以試算表形式顯示。這個工具的額外好處是能顯示主機是否能與vSphere的新Fault Tolerant(FT)功能工作,因此這個功能只與最新的CPU類型工作。一旦你下載並在工作站運行這個工具,可以指定想要連接的vCenter Server,並且顯示了由vCenter Server及其CPU資訊所管理的所有主機伺服器。
下圖顯示的在與先前相同的DL360G4伺服器上使用這個工具的情形。它顯示伺服器沒有VT功能,但沒有告訴你伺服器支援64位元long模式,其實支援long模式。另一個圓柱顯示是否支援FT,是否啟動FT,以及存在各種各樣的CPU功能。
下圖顯示的是使用該工具在另一台伺服器上運行的樣子。
注意,所有工具都報告了所有主機都有VT功能。我認為工具所寫入的方式只顯示主機是否支援VT或啟用VT,但是不能都顯示。如果工具報告主機有VT功能,你可能需要修改它的BIOS設置以啟用VT功能。
既然知道了如何查看主機以識別是否擁有64位CPU,就能決定是否從VMware Infrastructure 3升級到vSphere。瞭解你的伺服器硬體及其支援範圍將幫助你規劃你的升級,並允許你升級所需的伺服器硬體成本。
本文轉自www.vmsky.com
留言列表