最近關于虛擬化的論述很多,大部分探討的是服務器虛擬化。這是業(yè)界最令人興奮的趨勢之一,有可能在今后幾年內轉變 IT 系統(tǒng)的部署模式。服務器虛擬化不僅會改變 IT 管理員和架構師對服務器和系統(tǒng)利用率的考慮方式,對于那些必將成為動態(tài)環(huán)境的因素,它還會影響其管理過程和工具。 實際上虛擬化出現(xiàn)已有一段時間了,但此項技術仍在發(fā)展中。事實上,不同的人對這個單詞本身有不同的理解。但是廣義上說,虛擬化目的在于從下一個層抽象一個技術堆棧層,就像從服務器中抽象存儲或從應用程序抽象 OS 一樣。這樣就可以實現(xiàn)合并,并獲得更好的可管理性。 作為一個概念,虛擬化適用于存儲、網(wǎng)絡、服務器、應用程序和訪問。當您查看存儲和網(wǎng)絡時,虛擬化的目標是聚合一組不同的設備,這樣總資源池看起來以及操作起來就像單個實體。例如,您可以配置一個 40TB 存儲解決方案來代替一個包含 20 個 2TB 存儲設備的設備組。但對于其他組件,虛擬化的行為恰恰相反,它會幫助讓單個系統(tǒng)發(fā)揮多個系統(tǒng)的作用。此方面的一個最常見示例是服務器虛擬化,您在單個服務器上托管多個 OS 實例和環(huán)境。 Microsoft 已經(jīng)在多個不同的級別上實現(xiàn)了虛擬化,從桌面擴展到數(shù)據(jù)中心,其解決方案覆蓋服務器虛擬化、應用程序虛擬化、演示虛擬化和桌面虛擬化。Microsoft System Center 的管理部件是貫穿其中的連接器。在本文中,我將集中討論服務器虛擬化組件,特別是 Hyper-V(Windows Server 2008 的重要功能)如何適應動態(tài)數(shù)據(jù)中心。 服務器虛擬化市場 首先,我認為有必要了解當今的具體環(huán)境以及整個市場的發(fā)展趨勢。據(jù)研究顯示,一些分析人員估計目前售出的所有物理服務器中有 5–9% 被用作虛擬化主機。您可能認為這是很大的數(shù)量,因為市場上每年要發(fā)運九百多萬臺物理服務器。但有一件事情可以肯定:隨著更多的客戶對虛擬化非常熟悉而逐漸采用它,仍然存在著巨大的商機。 虛擬化的使用場合需要引起重視。大型企業(yè)客戶無疑肩負著測試的職責,它們是早期的采用者。但是,一些中小型企業(yè)也在部署虛擬化。虛擬化已經(jīng)在不同的工作負荷中得到普及,從業(yè)務應用程序和管理到 Web 和電子郵件皆是如此。 那么,為什么虛擬化現(xiàn)在如此時興呢?這其中有幾個因素,主要是時機。幾個重要的行業(yè)因素同時聚合在一起,虛擬化因此得以更加廣泛的采用。這些行業(yè)因素包括向 64 位計算的轉換、多核處理器以及提高系統(tǒng)利用率所需的可持續(xù)計算。 系統(tǒng)持續(xù)增長,它們需要利用像虛擬化這樣的技術來充分利用系統(tǒng)的功效。雖然核心技術(和摩爾定律)在提高系統(tǒng)處理能力方面已經(jīng)穩(wěn)步領先,但我們現(xiàn)在更為關心的是環(huán)境影響、功效要求和冷卻成本。 因為有這些因素,再加上虛擬化能帶來顯而易見的投資回報率 (ROI),使其迅速擴大了在大型和小型企業(yè)中的市場。作為 IT 專業(yè)人員,我們可以預計所有主要參與方在接下來的幾年中會繼續(xù)在這一技術領域進行投資,并改進特性和功能。 服務器虛擬化的工作原理 服務器虛擬化通??梢宰屇趩蝹€物理設備上安裝(并同時運行)兩個或多個身份、應用程序堆棧等各不相同的 OS 環(huán)境。Hyper-V 是下一代基于 64 位管理程序的虛擬化技術,它提供了可伸縮的可靠平臺功能。通過與 System Center 結合使用,它為物理和虛擬資源提供了一組集成的管理工具。 所有這些都可以減少成本、提高利用率、優(yōu)化基礎結構并使各企業(yè)能迅速置備新服務器。為了幫助您更好地了解 Hyper-V 的構建方式,我想先看看不同類型的虛擬化解決方案。
虛擬化解決方案的類型
從本質上講,有三個常見的體系結構可用于服務器虛擬化,如圖 1 所示。虛擬化層和物理硬件之間的關系處理決定著它們的根本差異。虛擬化層就是稱為虛擬機監(jiān)控器(VMM,不要與 Virtual Machine Manager 混淆)的軟件層。該層可以創(chuàng)建多個共享同一底層硬件資源的獨立實例。 圖 1 三個虛擬化體系結構 Type-2 VMM 體系結構的應用實例就是 Java 虛擬機。在該實例中,虛擬化的目標是創(chuàng)建一個運行時環(huán)境,進程可以在此環(huán)境中執(zhí)行一組指令,而無需依賴主機系統(tǒng)。此時,隔離的是不同的進程,它允許單個應用程序在不同的 OS 上運行,而無需擔心 OS 依賴關系。服務器虛擬化不屬于這一類別。 Type-1 VMM 和 Hybrid VMM 是現(xiàn)今廣泛使用的兩種方法。VMM 利用 Hybrid VMM 在主機 OS 上運行并幫助創(chuàng)建上層虛擬機。Hybrid VMM 的示例是 Microsoft Virtual Server、Microsoft Virtual PC、VMware Workstation 和 VMware Player。請注意,雖然這些類型的解決方案非常適用于客戶端方案(即,您只在部分時間運行虛擬機),但 VMM 會極大地增加開銷,因而不適合資源密集的工作負載。 在 Type-1 VMM 體系結構中,VMM 層直接在硬件上方運行。這通常稱為管理程序層。該體系結構最初由 IBM 于 20 世紀 60 年代針對大型機系統(tǒng)而設計,最近連同各種解決方案(包括 Windows Server 2008 Hyper-V)在 x86/x64 平臺上提供。 在可用的解決方案中,管理程序是作為固件的嵌入式部件提供的。但這只是一個打包選項,并不會實際改變基礎技術。 Type-1 VMM 實質上使用兩種主要方法構建管理程序解決方案: 微內核化和整體化。這兩種方法(如圖 2 所示)是真正的 Type-1 VMM,它們將管理程序直接安裝在物理硬件上。 圖 2 構建管理程序解決方案的兩種方法 整體化管理程序方法在單層內托管管理程序/VMM,這一層還包括大部分必需組件(例如內核、設備驅動程序和 I/O 堆棧)。這一方法為 VMware ESX 和傳統(tǒng)大型機系統(tǒng)之類的解決方案采用。 微內核化方法使用非常瘦的專用管理程序,它僅執(zhí)行核心任務以確保分區(qū)隔離和內存管理。該層不包括 I/O 堆?;蛟O備驅動程序。Hyper-V 采用此方法。在此體系結構中,虛擬化堆棧和特定于硬件的設備驅動程序位于稱為父分區(qū)的專用分區(qū)中。
Windows 管理程序
通過創(chuàng)建虛擬處理器、內存、定時器和中斷控制器確保明確分隔多個 OS。OS 使用這些虛擬資源就像它們使用其相應的物理資源一樣。 Windows 管理程序(Hyper-V 的部件)執(zhí)行下列任務: 創(chuàng)建邏輯分區(qū)。 由于 Windows 管理程序使用微內核化方法,因此它非常?。ú坏?1MB)。這種最低的空間占用率可以幫助提高系統(tǒng)的整體安全性。 對于正在運行的 Hyper-V,需安裝使用 Intel VT 或 AMD-V 技術的 x64 系統(tǒng)。通過 x64 技術可以訪問更大的地址空間并支持內存更大的系統(tǒng),從而可以在單個主機系統(tǒng)中安裝多個虛擬機。Intel VT 和 AMD-V 是有硬件輔助的虛擬化解決方案,在環(huán)形體系結構中提供超級權限層,以幫助將管理程序的執(zhí)行環(huán)境與系統(tǒng)其余部分隔離開來。它們還允許 Hyper-V 運行原裝來賓 OS,不會產(chǎn)生大量的仿真性能損失。 父分區(qū) Hyper-V 包括一個父分區(qū),它實質上是一個具有特殊或特權級訪問權限的虛擬機。這是唯一可以直接訪問硬件資源的虛擬機。所有其他虛擬機(稱為來賓分區(qū))均通過父分區(qū)訪問其設備。 父分區(qū)的存在是相當透明的。開始安裝 Hyper-V 時,首先必須在物理系統(tǒng)上安裝 Windows Server 2008 x64 Edition。然后需要轉到 Server Manager、啟用 Hyper-V 角色并重新啟動系統(tǒng)。系統(tǒng)重新啟動后,將首先加載 Windows 管理程序,然后將堆棧其余部分轉換成父分區(qū)。 父分區(qū)有鍵盤、鼠標、視頻顯示器以及其他與主機服務器連接的設備的所有權。它并不直接控制管理程序使用的定時器和中斷控制器。 父分區(qū)包含一個 Windows 管理規(guī)范 (WMI) 提供程序(便于管理虛擬化環(huán)境的方方面面),以及一個虛擬化堆棧(代表子分區(qū)執(zhí)行與硬件相關的任務)。另外,父分區(qū)中還包含主機系統(tǒng)硬件所需的所有獨立硬件供應商 (IHV) 驅動程序,針對 Windows Server 2008 x64 版本創(chuàng)建的所有驅動程序也將在父分區(qū)中運行。 設備共享體系結構 Hyper-V 中具有創(chuàng)新性的體系結構組件之一是新設備共享體系結構,它支持各個來賓 OS 中的模擬設備及合成設備。設備模擬對于支持帶有上一代硬件設備驅動程序的舊式 OS 非常有用。例如,Hyper-V 包括 Intel 21140 網(wǎng)絡適配器的模擬,在許多舊式 OS 剛剛面世時它稱為 DEC 21140 網(wǎng)絡適配器。 設備模擬速度通常很慢,不易擴展,也不能很好地調節(jié)。但模擬仍很重要,因為通過它您可以在 Hyper-V 上運行大多數(shù) x86 OS。由于虛擬化現(xiàn)在已從主要針對測試和開發(fā)的小型技術轉向生產(chǎn)環(huán)境所必需的技術,因此用戶需要更好的性能才能運行更大的工作負載。模擬設備不再能滿足這些日益增加的要求。 一個替代解決方案是使用 Hyper-V 合成設備。合成設備是可直接映射為物理設備的虛擬設備。與模擬設備不同,合成設備不會模擬原有硬件。通過 Hyper-V 硬件共享模型,受支持的來賓 OS 可直接與可能沒有物理設備的合成設備交互。這些 OS 使用虛擬服務客戶端 (VSC),它在來賓 OS 中充當設備驅動程序。 VSC 使用 VMBus(即內存中的高速總線)來訪問父分區(qū)中的虛擬服務提供程序 (VSP),而不是直接訪問物理硬件。然后父分區(qū) VSP 會管理對底層物理硬件的訪問,如圖 3 所示。合成設備的主要優(yōu)勢在于其在 VMBus 上的性能更接近于非虛擬化硬件設備的性能。 圖 3 VSC 使用 VMBus 訪問 VSP,VSP 隨后管理對底層物理硬件的訪問 集成組件 Hyper-V 的目標是為在同一計算機上運行的各種實例之間提供強邊界。為在來賓 OS 與主機 OS 之間產(chǎn)生交互并為受支持的來賓 OS 提供附加功能,Hyper-V 提供了集成組件。 Hyper-V 集成組件支持以下功能: 時間同步
卷影復制服務 (VSS) 檢測信號功能 來賓關閉 項值對交換(用于訪問來賓 OS 的注冊表) OS 識別 Hyper-V 功能集
毫無疑問,虛擬化平臺的行為與物理服務器越接近,各個組織部署并依賴虛擬工作負載就更為容易。在我看來,您可以從四個重要領域來審視虛擬化平臺的不同功能。 可伸縮性 使用微內核化管理程序體系結構,Hyper-V 中的 CPU 開銷非常低,為虛擬化工作負載留出了大量的空間。通過讓虛擬機利用強大的功能和硬件(例如,多核技術、改進的磁盤訪問和更大的內存),Hyper-V 提高了虛擬化平臺的可伸縮性和性能。 通過與 Windows Server 2008 的其余功能結合使用,Hyper-V 允許您在一個系統(tǒng)上合并大多數(shù)工作負載(包括 32 位和 64 位工作負載)。它還繼續(xù)支持已在整個環(huán)境中使用的 32 位工作負載,幫助您平衡所采用的 64 位技術。 由于 Hyper-V 需要帶有硬件輔助虛擬化的 64 位主機系統(tǒng),因此可幫助確保主機系統(tǒng)有權訪問大型內存資源池。Hyper-V 主機可以支持多達 1TB 的內存,其中每個虛擬機最多包含 64GB 內存。對于計劃虛擬化非常耗費內存的工作負載(如 Exchange Server 和 SQL Server)的人員來說,這是非常關鍵的。 通過 Hyper-V 合并服務器還能使這些服務器利用強大的聯(lián)網(wǎng)支持,包括 VLAN、網(wǎng)絡地址轉換 (NAT) 和網(wǎng)絡訪問保護 (NAP) 策略(隔離)。作為 Windows Server 2008 的一項功能,Hyper-V 可與其他 Windows Server 功能(如 BitLocker 和 Windows PowerShell)良好配合。 高可用性 高可用性是指 Hyper-V 和主機群集功能聯(lián)手幫助解決業(yè)務連續(xù)性和災難恢復需求。業(yè)務連續(xù)性能夠盡可能縮短計劃和非計劃停機時間。這包括在例程功能上耗費的時間,如維護與備份以及意外停電。 災難恢復是業(yè)務連續(xù)性的一個重要組成部分。自然災難、惡意攻擊甚至軟件沖突等簡單的配置問題都有可能導致服務和應用程序癱瘓,直到管理員解決問題并恢復數(shù)據(jù)后才能恢復正常??煽康臉I(yè)務和災難恢復策略必須將數(shù)據(jù)丟失降至最低并提供強大的遠程管理功能。 考察高可用性時,應考慮三個不同的類別,即計劃停機時間、非計劃停機時間和備份。通常需要對計劃停機時間加以保護,以幫助從主機系統(tǒng)移開虛擬機,這樣您就可以執(zhí)行硬件維護,或者對主機系統(tǒng)或虛擬化平臺(可能需要重新啟動)應用補丁程序。 大多數(shù)組織都對維護時間制訂了計劃,你真正需要的是最大程度減少或消除主機系統(tǒng)因維護關閉時虛擬機不可用的時間。通過快速遷移功能,您在數(shù)秒鐘時間內便可迅速將正在運行的虛擬機從一個物理節(jié)點移到另一個物理節(jié)點。因而,當您對原始主機執(zhí)行維護時仍能在生產(chǎn)中使用虛擬機。完成維護后,您便可以使用快速遷移將虛擬機重新送回原始主機系統(tǒng)。 非計劃停機時間是指無法預見的停機時間。它本質上可能是災難性的,可能就像某人意外拔出電源線而使服務器關閉一樣。雖然這聽起來不大可能,但這些年來我在 Tech•Ed、Vmworld 和其他會議上遇到了幾個管理員,他們都向我講述了一些服務器如何被某個同事意外關閉的情況。 通過 Hyper-V,您可以針對不同的主機系統(tǒng)設置主機群集并將所有虛擬機配置為群集資源,然后可以在其中某個主機發(fā)生故障的情況下故障轉移到其他系統(tǒng)同時,Windows Server 2008 的多站點群集功能將使您能夠設置一個分散于各地的群集,這樣,如果您的主數(shù)據(jù)中心發(fā)生了故障,您可以將各個虛擬機恢復到遠程數(shù)據(jù)中心。 這還為保護所有分支機構提供的便利。Hyper-V 中非計劃停機時間支持的一大優(yōu)勢對來賓 OS 無限制,這意味著您可以將其高可用性優(yōu)勢擴展到 Linux 虛擬機以及舊版本的 Windows Server,從而以類似的方式保護并恢復這些系統(tǒng)。 考慮非計劃停機時間時,請切記恢復相當于關閉系統(tǒng)并重新啟動,這意味著您將丟失所有狀態(tài)信息。這可能(也可能不)是問題,具體視您在虛擬機中運行的工作負載而定。這就是在高可用性上下文中要考慮備份的重要原因。 Hyper-V 允許您對每個虛擬機進行備份,或使用 VSS 對所有仍在運行且 VSS 可識別的虛擬機生成一致的備份。通過 VSS,您可以將備份設置為在設定的間隔進行,而不會影響生產(chǎn)工作負載的可用性,同時確保有連續(xù)的備份計劃,以便幫助您在出現(xiàn)非計劃停機時能輕松恢復狀態(tài)。有關 Hyper-V 提供的高可用性解決方案的詳細信息,請參閱本期 TechNet 雜志中由 Steven Ekren 撰寫的文章“實現(xiàn) Hyper-V 的高可用性”(technet.microsoft.com/magazine/cc837977)。 微內核化管理程序體系結構旨在最大程度地減少攻擊面并增強安全性,尤其是在 Hyper-V 作為 Server Core 角色實施時更是如此。Server Core 是 Windows Server 2008 的一個安裝選項。管理程序不包含任何設備驅動程序或第三方代碼,為運行虛擬機提供了更加穩(wěn)定、簡潔且安全的基礎。Hyper-V 還通過與 Active Directory 集成提供了基于角色的強大安全性。Hyper-V 可使虛擬機從硬件級別的安全功能(如執(zhí)行禁用 (NX) 位)中受益,從而進一步幫助提高虛擬機的安全性。 可管理性 微小的服務器散亂分布問題很容易轉變?yōu)閲乐氐奶摂M機散漫分布問題。這種風險要歸因于部署虛擬機的低難度。隨著虛擬機移動性的增加,您還需要承擔了解不同虛擬機運行的準確位置、跟蹤其安全上下文等等職責。 幸運的是,有了 Hyper-V,您就不必再為虛擬環(huán)境創(chuàng)建單獨的管理基礎結構。它與 Microsoft 管理工具、System Center Virtual Machine Manager 和 Microsoft System Center Operations Manager 以及第三方管理工具相集成。它讓您可以從一個控制臺管理您的所有物理和虛擬資源。有關 System Center Virtual Machine Manager 2008 的詳細信息,請參閱本期 TechNet 雜志中由 Edwin Yuen 撰寫的文章“使用 VMM 2008 管理您的虛擬環(huán)境”(technet.microsoft.com/magazine/cc836456)。同時,對 Windows PowerShell 的支持還使任務自動化變得更加容易。 Hyper-V 還讓虛擬機能使用可用硬件,這是史無前例的。由于所有 Windows 硬件質量實驗室 (WHQL) 認證的驅動程序都能夠在父分區(qū)中運行,因此 Hyper-V 為驅動程序和設備帶來了廣泛的兼容性,從而使管理在您的環(huán)境中運行的各種驅動程序變得更加容易。 結束語 如我之前所述,管理將成為開發(fā)和區(qū)分的重要內容。在未來幾年內您必將會看到這一領域內活動倍出??偟膩碚f,當虛擬化擔當更加主流的角色時,這確實是一個令人興奮的時刻。如果您還沒有試用過 Hyper-V 或者您只是想了解更多的詳細信息,請轉到 microsoft.com/Hyper-V。 Rajiv Arunkundram 是 Microsoft 的高級產(chǎn)品經(jīng)理,主要負責 Windows Server 營銷部門的服務器虛擬化。從技術和業(yè)務角度來看,Rajiv 的主要職責是與客戶和合作伙伴合作,幫助他們了解 Microsoft 的虛擬化策略和解決方案。 |
|