解決方案
當前位置 >首頁 > 解決方案 > 基礎框架結構
虛拟化基礎架構

數據中心虛拟化基礎架構

免費試用
  • 産品介紹
  • 産品優勢
  • 解決方案

目前三個最主要的(de)架構類别包括:

  • I型:虛拟機直接運行在系統硬件上,創建硬件全仿真實例,被稱為(wèi)“裸機”。

  • II型:虛拟機運行在傳統操作系統上,同樣創建的(de)是硬件全仿真實例,被稱為(wèi)“托管”hypervisor。

  • 容器:虛拟機運行在傳統操作系統上,創建一(yī)個獨立的(de)虛拟化實例,指向底層托管操作系統,被稱為(wèi)“操作系統虛拟化”。

  圖 1 三種主要的(de)虛拟化架構類型

  上圖顯示了每種架構使用的(de)高(gāo)層軟件“堆棧”,應當指出,在每種模型中,虛拟層是在不同層實現的(de),因此成本和(hé)效益都會不一(yī)樣。

  除了上面的(de)架構類别外,知道(dào)hypervisor的(de)基本元素也同樣重要,它包括:

  • 虛拟機監視(shì)器(Virtual Machine Monitor,VMM):它創建、管理(lǐ)和(hé)删除虛拟化硬件。

  • 半虛拟化(Paravirtualization):修改軟件,讓它知道(dào)它運行在虛拟環境中,對于一(yī)個給定的(de)hypervisor,這可(kě)能包括下面的(de)一(yī)種或兩種:

  - 內(nèi)核半虛拟化:修改操作系統內(nèi)核,要求客戶機操作系統/hypervisor兼容性。

  - 驅動半虛拟化:修改客戶機操作系統I/O驅動(網絡、存儲等),如(rú)Vmware Tools,MS Integration Components。

  操作系統虛拟化:容器

  在容器模型中,虛拟層是通過創建虛拟操作系統實例實現的(de),它再指向根操作系統的(de)關鍵系統文件,如(rú)下圖所示,這些指針駐留在操作系統容器受保護的(de)內(nèi)存中,提供低(dī)內(nèi)存開銷,因此虛拟化實例的(de)密度很大,密度是容器架構相對于I型和(hé)II型架構的(de)關鍵優勢之一(yī),每個虛拟機都要求一(yī)個完整的(de)客戶機操作系統實例。

  圖 2 容器型虛拟化架構

  通過共享系統文件的(de)優點,所有容器可(kě)能隻基于根操作系統提供客戶機,舉一(yī)個簡單的(de)例子(zǐ),一(yī)個基本的(de)Windows Server 2003操作系統也可(kě)用于創建Windows Server 2003容器,同樣,任何适用于根操作系統系統文件的(de)補丁和(hé)更新,其子(zǐ)容器也會繼承,提供了一(yī)個方便的(de)維護方法。

  但這也可(kě)能會造成損害,根操作系統收到破壞,客戶機也會跟着被破壞。

  在容器內(nèi),用戶可(kě)以使用特定應用程序,熱修複(但不是服務包)和(hé)操作系統服務組件自(zì)定義客戶機實例,對那些在多數客戶機容器中會使用到的(de)服務或應用程序,它們所需要的(de)功能應該安裝到根操作系統中,在客戶機實例中使用類似于模闆的(de)方法自(zì)動獲得這些功能。

  在大多數情況下,容器的(de)數量僅受宿主操作系統可(kě)用資源的(de)限制,每個客戶機可(kě)能被配置為(wèi)根操作系統限制的(de)最大硬件資源,這些可(kě)擴展的(de)特性與客戶機管理(lǐ)的(de)易用性,使容器方法成為(wèi)需要高(gāo)虛拟機密度的(de)應用程序很有實力的(de)候選者,如(rú)虛拟桌面。

  Parallels Virtuozzo容器是當今業界領先的(de)操作系統虛拟化産品,除了上述功能外,Virtuozzo提供了高(gāo)可(kě)用和(hé)跨物理(lǐ)主機遷移客戶機的(de)功能(假設根操作系統和(hé)補丁級别相同),架構上,Virtuozzo實現了一(yī)個專有的(de)內(nèi)核服務抽象層(Kernal Service Abstract Layer,KSAL),保護宿主操作系統文件,在可(kě)寫入文件系統上保存一(yī)份安全的(de)副本,使單獨修改客戶機成為(wèi)可(kě)能。與混合hypervisor(本文後面會有介紹)中的(de)父分區類似,第一(yī)個虛拟實例是一(yī)個簡單的(de)管理(lǐ)容器,它提供虛拟機監視(shì)功能。

  在Parallels Virtuozzo容器的(de)最新版本4.5中,包括在Hyper-V中嵌入Virtuozzo的(de)支持,兩者都在父分區中。

  圖 3 Hyper-V中嵌入Virtuozzo容器

  這種實現方式雖然複雜,但它展示了Virtuozzo架構的(de)靈活性,提供高(gāo)虛拟機密度。

II型 hypervisor

  II型或托管型hypervisor通過一(yī)個軟件層在現有操作系統上實現硬件虛拟化,與容器架構不一(yī)樣,II型客戶機提供了一(yī)個完整的(de)、獨立的(de)、無依賴的(de)客戶機操作系統副本,通常利用半虛拟化驅動網絡和(hé)I/O提高(gāo)客戶機性能。但由于虛拟化功能必須通過宿主操作系統,客戶機的(de)性能大大低(dī)于裸機hypervisor。此外,還有一(yī)些高(gāo)可(kě)用和(hé)企業管理(lǐ)功能。由于這些原因,II型 hypervisor最常用于開發/測試或桌面類應用程序。

  流行的(de)II型 hypervisor包括Vmware Workstation,Sun VirtualBox和(hé)Microsoft Virtual Server R2,它們的(de)功能都差不多,因為(wèi)它們都不能勝任企業級工作量,因為(wèi)後面我也不打算繼續介紹它們。

 I型hypervisor

  I型或裸機hypervisor包括當今主流的(de)企業級虛拟化産品,該類hypervisor直接運行在系統硬件上,提供了更好的(de)客戶機性能。通過處理(lǐ)器虛拟化擴展增強,包括英特爾VT和(hé)AMD-V技術,I型hypervisor甚至可(kě)以超越裸機操作系統性能。使用這一(yī)類hypervisor,有幾個子(zǐ)類型有必要詳細介紹:

  • 獨立型:VMware vSphere

  • 混合型:Microsoft Hyper-V,Citrix XenServer和(hé)Sun xVM

  • KVM:Linux KVM

  I型獨立型:VMware vSphere

  在一(yī)個獨立型hypervisor中,所有硬件虛拟化和(hé)虛拟機監視(shì)器(VMM)功能由一(yī)個單一(yī)的(de),緊密集成的(de)代碼集提供,這種架構與Vmware vSphere和(hé)前幾代ESX hypervisor的(de)結構是相同的(de)。下圖是Vmware vSphere 4.0(也稱為(wèi)ESX 4)的(de)架構概述圖,與一(yī)般看法相反,Vmware不是基于Linux的(de)hypervisor,相反,ESX是由一(yī)個高(gāo)度複雜的(de)操作系統VMKernel組成的(de),并取得了專利權,提供所有虛拟機監控和(hé)硬件虛拟化功能。ESX完整版提供了一(yī)個基于Linux的(de)服務控制台,但ESXi不包含此服務控制台。

  圖 4 VmwarevSphere 4.0架構

  通常這種模式被稱為(wèi)“胖”或“瘦”hypervisor,但這種說法并不準确,雖然ESX架構經過長(cháng)期發展變得更加複雜了,但Vmware在hypervisor性能和(hé)功能方面一(yī)直保持領先的(de)行業地(dì)位,最近實現了處理(lǐ)器虛拟化擴展進一(yī)步鞏固了領導地(dì)位。

  Vmware在客戶機內(nèi)需要網絡和(hé)I/O驅動半虛拟化,這些驅動通常包含在Vmware Tools中。

I型混合型:Citrix XenServer,Microsoft Hyper-V和(hé)OracleVM

  混合I型架構包括一(yī)個軟件模型,一(yī)個“瘦”hypervisor聯合一(yī)個父分區提供硬件虛拟化,它提供了虛拟機監視(shì)功能,這類模型主要包括微軟的(de)Hyper-V和(hé)基于Xen的(de)hypervisor,如(rú)Citrix XenServer和(hé)OracleVM。

  圖 5 I型混合型hypervisor

  父分區也叫做(zuò)Dom0,它通常是一(yī)個運行在本地(dì)的(de)完整操作系統虛拟機,并具有根權限,例如(rú),開啓Xen在Novell SUSE Linux Enterprise Server(SLES)上執行的(de)Dom0将作為(wèi)一(yī)個完整的(de)SLES實例執行,提供虛拟機(VM)創建、修改、删除和(hé)其它類似配置任務的(de)管理(lǐ)層,系統啓動時,開啓Xen的(de)內(nèi)核載入父分區,以VMM權限運行,作為(wèi)VM管理(lǐ)的(de)接口,管理(lǐ)I/O堆棧。

  與Vmware類似,所有混合型産品都為(wèi)客戶機提供了半虛拟化驅動,從而提高(gāo)網絡和(hé)I/O性能,不實現半虛拟化驅動的(de)客戶機必須遍曆父分區的(de)I/O堆棧,因此客戶機的(de)性能會下降。操作系統半虛拟化技術正變得越來越流行,以達到最佳的(de)客戶機性能,并改進跨hypervisor的(de)互操作性。例如(rú),Microsoft Hyper-V/Windows Server 2008 R2為(wèi)Windows Server 2008和(hé)SUSE Enterprise Linux客戶機提供完整的(de)操作系統半虛拟化支持。

  雖然操作系統半虛拟化是操作系統發展的(de)一(yī)種趨勢,但應當指出的(de)是操作系統半虛拟化目前還不是混合模型的(de)一(yī)個要求,部分供應商,如(rú)VirtualIron(Sun/Oracle),的(de)目标是SMB級負載,使用全硬件虛拟化實現可(kě)接受的(de)客戶機性能。混合型架構起源于Xen項目,在性價比方面有很多供應商可(kě)供選擇,這都得益于開源社區(Xen)的(de)貢獻,它能夠很好地(dì)适應半虛拟化操作系統的(de)未來發展。


I型組合型:基于Linux的(de)內(nèi)核虛拟機(KVM)

  基于Linux的(de)內(nèi)核虛拟機(KVM)hypervisor模型提供了一(yī)個獨一(yī)無二的(de)I型架構,它不是在裸機上執行hypervisor,KVM利用開源Linux(包括RHEL,SUSE,Ubuntu等)作為(wèi)基礎操作系統,提供一(yī)個集成到內(nèi)核的(de)模塊(叫做(zuò)KVM)實現硬件虛拟化,KVM模塊在用戶模式下執行(與獨立型和(hé)混合型hypervisor不一(yī)樣,它們都運行在內(nèi)核/根模式下),但可(kě)以讓虛拟機在內(nèi)核級權限使用一(yī)個新的(de)指令執行上下文,叫做(zuò)客戶機模式。

  圖 6 I型組合型架構

  KVM使用一(yī)個經過修改的(de)開源QEMU硬件仿真包提供完整的(de)硬件虛拟化,這意味着客戶機操作系統不需要操作系統半虛拟化,與Vmware類似,Linux KVM充分利用VirtIO作為(wèi)實現IO半虛拟化的(de)框架,它利用內(nèi)置在內(nèi)核/QEMU中的(de)用戶模式VirtIO驅動增強性能。KVM現在已經成為(wèi)很多Linux發行版的(de)标準模塊,包括但不限于Red Hat Enterprise Linux和(hé)SUSE Linux Enterprise Server,以及桌面類Linux,如(rú)Ubuntu,KVM現在已經成為(wèi)一(yī)個流行的(de)hypervisor。