【VMware虛擬化解決方案】私有云的基石VMware vSphere 5.5

【VMware虛擬化解決方案】私有云的基石VMware vSphere 5.5

馬博峯

       我們知道可以通過虛擬化的技術來進行服務器的整合,節省物理資源浪費的情況,在瞭解虛擬化的同時,我們也要對虛擬化的架構有所瞭解,這樣能更深層次地去了解虛擬化。不過,虛擬化的架構有很多種類,所以在瞭解VMware的虛擬化之前,我們先了解一下虛擬化技術。虛擬化技術是一個術語,用來描述一個軟件的堆棧,或者是一個操作系統的功能,這項技術用於實現在同一個物理資源上建立虛擬機。基於不同的虛擬化類型,一些虛擬化層運行在操作系統之上,或者直接運行在硬件資源(比如處理器、內存和網卡)上。後面,我們將瞭解這些不同類型的虛擬機管理程序。談起它的歷史,要追溯到1965年,當時IBM首次升級360大型機系統代碼和計算平臺來支持內存的虛擬化,通過這項技術的不斷髮展,虛擬化得到了極大的增強。下面,我們就來討論虛擬化類型的種類。

(1)Type1類型:裸金屬架構虛擬化層

     Type1類型或者說裸金屬架構的虛擬化是運行在服務器硬件之上,如圖所示,這種虛擬化的類型能得到更好的硬件控制,從而實現了更穩定的性能和更高的安全性。虛擬機操作系統(VM)運行在裸金屬架構虛擬化層(Hypervisor)之上,而裸金屬架構虛擬化層(Hypervisor)運行在硬件層(Hardware)之上。目前在市場上使用這種虛擬化架構的產品有Microsoft的Hyper-V、VMware vSphere的ESXi和Citrix的XenServer。

clip_image001

(2)Type2類型:寄居架構虛擬化層

     Type2類型或者說寄居架構虛擬化層是作爲一種應用程序運行在操作系統之上的,這就是寄居架構虛擬化層通常被稱爲託管的虛擬機管理程序的原因。在Type2類型的虛擬化環境中,虛擬機操作系統(VM)都運行在虛擬化層之上,從圖1-5可以看出,Type1類型和Type2類型在架構方面上存在一些差異。Type1類型的裸金屬架構虛擬化層(Hypervisor)運行在硬件層(Hardware)之上,而Type2類型中,我們可以看到虛擬化層(Hypervisor)是安裝在操作系統層(Operating System)之上的。虛擬機操作系統(VM)不允許直接訪問硬件資源,這種沒有辦法直接訪問硬件資源的設計,會帶來沒有必要的資源開銷,所以在Type1類型中,虛擬機(VM)直接通過虛擬化層(Hypervisor)得到資源,而虛擬化層(Hypervisor)直接調用硬件層(Hardware)資源。在Type2類型中,虛擬機(VM)直接通過虛擬化層(Hypervisor)得到資源,而虛擬化層(Hypervisor)不能直接調用硬件層(Hardware)資源,而是通過安裝在硬件層的操作系統中得到資源,這樣一來,硬件層的一部分資源還要維持操作系統層(Operating System),造成一定的資源損失。Type 2類型還有一個缺點,就是如果系統程序安裝的是Windows NT系統,如果發生故障,則虛擬化平臺也將發生故障,並終止服務,這一點大家一定要注意。屬於Type 2類型的虛擬化產品主要有Microsoft的Virtual PC和VMware vSphere的 VMware Player、VMware Workstation。Type2類型的虛擬化層如圖所示。

clip_image003

(3)Monolithic hypervisors虛擬化層

     Monolithic hypervisors虛擬化層是Type1類型的一個子類型,這種類型的虛擬機管理程序的驅動程序來自虛擬操作系統,它要求Hypervisor感知設備驅動,並被託管和管理在“Hypervisor層”,如下圖所示。所以,如果使用Monolithichypervisors虛擬化層時會帶來一些好處,但是也有一些不足。好處是他們不再需要父操作系統來控制,可以直接控***務器硬件,提高更好的性能。而不足之處主要有兩點:

不是每一個硬件提供商都爲此類型的虛擬機管理程序提供驅動,這是因爲有一些不同的主板和其他設備都有不同的驅動程序,因此,找到一個兼容的硬件驅動供應商支持可能是一個潛在的艱鉅的任務。

Monolithic hypervisors虛擬化層他允許虛擬機監控程序接近內核kernel (Ring 1)和硬件資源,這可能會造成惡意後門的打開。一旦惡意後門被打開,惡意***者就可以控制運行在服務器上所有的虛擬機了。

VMware vSphereESXi Server就採用Monolithichypervisors虛擬化層。

clip_image004

(4)Microkernel hypervisors 虛擬化層

     Microkernel hypervisor虛擬化層不需要設備驅動,因爲它的設備驅動是獨立運行在“控制層”的。相應的,Microkernel hypervisor虛擬化層的設備驅動程序一般都運行在kernel mode (Ring 0)和可信的操作系統(OS)的用戶模式(Ring 3)中,只有當CPU和內存發生調度時,纔會運行在Ring 1中。Microkernel hypervisor虛擬化層的虛擬機監控程序的優點是,由於大多數硬件製造商都會提供操作系統,並提供的操作系統會兼容Microkernel hypervisors設備的驅動程序,所以找到兼容的硬件是很容易的。Microkernel hypervisor虛擬化層如圖所示。

clip_image006

     Microkernel hypervisors虛擬化層要求驅動程序必須安裝在物理機上運行的操作系統中,並且必須運行在虛擬化層的父分區中,這就意味着我們不需要將設備驅動程序安裝在每個虛擬機操作系統子分區(VM)上,因爲當這些虛擬機操作系統需要訪問主機上的物理硬件資源計算機時,不需要訪問硬件,而只需要和父分區進行通信即可。微軟Hyper-V的架構採用的就是Microkernel hypervisors虛擬化層。

     Microkernel hypervisors優點包括:

     設備驅動不需要爲將每個設備都納入Hypervisor層或者VMM Kernel。由於微軟沒有提供應用程序編程接口(API)來訪問“Hypervisor層”,受到***的可能減小,沒人可以插入將外部代碼到插入“Hypervisor層”。

     設備驅動不需要Hypervisor的感知,所以這種架構可以使用更多的設備。不需要關閉“Hypervisor層”,包括設備驅動程序。設備驅動程序可以安裝在操作系統運行的“控制層”,可以使用虛擬機訪問“硬件層”的硬件Microkernelized Hypervisor架構。除了服務器虛擬化之外,在“控制層”允許安裝任何其他的服務器。因爲Hypervisor代碼只有600KB,因此“Hypervisor層”不需要很多時間來初始化組件。

     Microkernel hypervisors缺點包括:

     在操作“Hypervisor層”之前,需要在“控制層”安裝操作系統,這是最大的一個缺點。

     如果“控制層”正在運行的操作系統崩潰,無論是任何原因導致的,所有的虛擬機也都會崩潰。這就會進一步導致需要花費更多的經費在“控制層”的操作系統與“Hypervisor層”的虛擬機上。

     VMware vSphere 利用虛擬化功能將數據中心轉換爲簡化的雲計算基礎架構,vSphere是VMware推出的基於雲的新一代數據中心虛擬化套件,提供了虛擬化基礎架構、高可用性、集中管理、監控等一整套解決方案。VMware 於2001 年正式推出了企業級虛擬化產品ESX,到了現在,歷經了六代演進。而整個架構功能經過不斷擴展,也越來越充足。作爲雲操作系統,VMware vSphere 可利用虛擬化功能將數據中心轉換爲簡化的雲計算基礎架構,使 IT 組織能夠提供靈活可靠的 IT 服務。

     vSphere 的兩個核心組件是 VMware ESXi 和 VMware vCenter Server。ESXi 是用於創建和運行虛擬機的虛擬化平臺。vCenter Server 是一種服務,充當連接到網絡的 ESXi 主機的中心管理員。vCenter Server 可用於將多個主機的資源加入池中並管理這些資源。vCenter Server 還提供了很多功能,用於監控和管理物理和虛擬基礎架構。還以插件形式提供了其他 vSphere 組件,用於擴展 vSphere 產品的功能。

     如果說Active Director是Microsoft windows網絡及其產品的基礎,那麼VMware ESXi Server則是VMware企業產品的基礎,無論是Vmware vSphere,合適VMware view,以及vCloud,這一切產品的基礎都是VMware ESXI Server,可以說,VMware雲計算及企業虛擬化的基礎就是ESXi Server。

     VMware vSphere 5.5 是 VMware 旗艦級虛擬化平臺的最新版本。 VMware vSphere,許多羣體稱之爲“ESXi”,是底層虛擬化管理程序體系結構的名稱。它是一種直接安裝在物理服務器之上並將物理服務器劃分成多個虛擬機的裸機虛擬化管理程序。 每個虛擬機與其他虛擬機共享相同的物理資源,並且它們可以同時運行。 與其他虛擬化管理程序不同,vSphere 的所有管理功能都可以通過遠程管理工具提供。 由於沒有底層操作系統,安裝空間佔用量可縮減至 150 MB 以下。ESXi 裸機虛擬化管理程序體系結構不再依靠服務控制檯來進行命令行管理。 通過將管理功能轉移到 VMkernel,VMware vSphere ESXi 虛擬化管理程序將其佔用的總空間從 2 GB 減少到 150 MB。 由於縮小了惡意軟件和網絡威脅的***面,因此vSphere 環境的安全性和可靠性得到了顯著提高。

     具有一定虛擬化經驗的工程師知道,在VMware vSphere 5.0版本之前,存在2個版本,即VMware ESXI Server和VMware ESX Server,在之後版本中,包括現在最新的版本的VMware vSphere 5.5.1,已經沒有了VMware ESX Server,但是我們依然要了解VMware ESXI Server和VMware ESX Server之間的區別。Mware ESX 和 VMware ESXi 都是直接安裝在服務器硬件上的裸機管理程序。二者均具有業界領先的性能和可擴展性,不同之處在於 VMware ESXi 採用了獨特的體系結構和操作管理方法。儘管二者都不依賴操作系統進行資源管理,但 VMware ESX 依靠 Linux 操作系統(稱作服務控制檯)來執行以下兩項管理功能:執行腳本,以及安裝用於硬件監控、備份或系統管理的第三方代理。ESXi 中已刪除了服務控制檯,從而大大減少了此管理程序的佔用空間,實現了將管理功能從本地命令行界面遷移到遠程管理工具的發展趨勢。更小的 ESXi 代碼庫意味着“受***面”更小,需要修補的代碼也更少,從而提高可靠性和安全性。服務控制檯的功能由符合系統管理標準的遠程命令行界面取代。

clip_image008

     VMware vSphere ESXi 採用無代理方法,通過一種基於 API 的合作伙伴集成模型來進行硬件監控和系統管理。 管理任務通過 vSphere Command Line Interface (vCLI) 和 PowerCLI 提供的遠程命令行執行。 PowerCLI 使用 Windows PowerShell cmdlet 和腳本實現了自動化管理。當使用 ESXi Shell 時,不再依賴共享的 root 帳戶。 獲分管理特權的本地用戶會自動獲得完全 Shell 訪問權限,無需以 root 用戶身份通過執行“su”來運行命令。 vSphere 5.5 將 Shell 和直接控制檯用戶界面中的所有用戶活動都記錄在相應用戶的帳戶之下。 這種日誌記錄方式可確保分清用戶責任,方便審覈用戶活動。

     瞭解了VMware vSphere ESXi,那麼什麼是 VMware vCenter Server?VMware vCenter Server 提供了一個集中式可擴展平臺來管理虛擬基礎架構。vCenter Server 可管理VMware vSphere 環境,vCenter Server充當連接到網絡的 VMware ESXi 主機的中心管理員的服務。vCenter Server 指導虛擬機和虛擬機主機(ESXi 主機)上的操作。vCenter Server 是一種 Windows 服務,安裝後自動運行。vCenter Server 在後臺持續運行。即使沒有連接任何 vSphere Web Client,也沒有用戶登錄到vCenter Server 所在的計算機,vCenter Server 也可執行監控和管理活動。它必須可通過網絡訪問其管理的所有主機,且運行 vSphere Web Client 的計算機必須能通過網絡訪問此服務器。

clip_image010

     vCenter Server 可從單個控制檯集中管理虛擬化主機和虛擬機。IT 管理員能夠從一個位置深入瞭解虛擬基礎架構所有關鍵組件的配置。有了 vCenter Server,虛擬環境變得更易於管理:一個管理員就能管理數百個工作負載,在管理物理基礎架構方面的工作效率提高一倍以上。爲了從始至終地遵循關鍵業務應用服務級別協議 (SLA),需要自動執行主動式管理,以便充分利用 vSphere 的功能。vCenter Server 支持的關鍵功能包括 VMware vSphere vMotion、vCenter Single Sign On 、VMware vSphere Distributed Resource Scheduler、VMware vSphere High Availability (HA) 和 VMware vSphere Fault Tolerance。利用VMware vCenter Orchestrator,管理員還能夠創建並輕鬆實施最佳實踐工作流。通過自動執行主動管理,vCenter Server 能夠動態調配新服務、平衡資源和自動實現高可用性,從而達到相應的服務級別要求。

     VMware vSphere有不同的版本,每個版本對應的功能也不同,並且VMware vSphere的授權方式是各個版本均按 CPU 數量許可。vSphere 的部署需要一個VMware vCenter Server 實例

clip_image012

clip_image014

     vSphere Essentials Kit 適用於小型企業,藉助 vCenter for Essentials 將最多三臺物理服務器的虛擬化與集中化管理結合在一起。 vSphere Essentials Plus 也可以通過 vSphere Storage Appliance 獲得。vSphere Essentials Kit for Retail and Branch Offices 和 vSphere Essentials Plus for Retail and Branch Offices 是爲在分支機構和遠程辦公室中部署而設計的特殊套件。 這些版本提供打包的解決方案來擴展整個組織的敏捷性、安全性和高效性,並支持從本地或中央位置遠程管理辦公室部署。

clip_image016

     VMware vSphere 5.5版本預計在2013年第三季度隨vCloud套件發佈。屆時vSphere 5.5將包含一長串新特徵和增強功能,如可利用flash在vSphere主機讀取緩存,某些監控應用程序獲得高可用性等新特徵,另外,備份、複製、單點登錄、網絡故障排除、Web客戶機和主機的硬件支持等方面的性能都有所增強。其中虛擬機磁盤大小不再侷限於2TB。vSphere 5.5中,VMDK文件最大值增加到62TB。你可能會問爲什麼是這個數字呢?比64TB小的原因是,VMware爲快照和任何其他所需的服務留出了空間。現有VMDK文件必須在離線狀態進行擴展。舊版本的VMware虛擬機存在一個限制,即支持很少數量的虛擬設備。vSphere 5.5版引入了虛擬硬件10,通過AHCI(先進的主機控制器接口)支持增加了基於SATA的虛擬設備節點。由於今後蘋果將取消IDE設備的支持,OS X客機需要支持AHCI。每個VM有可能連接多達120臺設備。虛擬硬件10添加了一些新的圖形功能支持。最重要的是同時支持AMD和Intel GPU。另外,新增了在不同的硬件平臺之間熱遷移虛擬機的功能,包括不同的GPU支持。在此之前,需要類似的硬件才能進行熱遷移。此次更新還包括支持OpenGL 2.1。OpenGL 2.1是流行的Linux發行版,包括Fedora 17和Ubuntu 12的默認圖形API。

     在真正的大型數據中心,爲一個特定的目的確定適當的存儲類別可以說是一項挑戰。圖中你可以看到打印服務器被分配給一個新的虛擬機存儲策略。由此創建的新政策可以應用到所有需要打印服務器存儲的虛擬機,從而簡化了存儲配置。LACP(鏈路匯聚控制協議)可以幫匯聚多個物理網卡的帶寬。vSphere 5.1在每個分佈式交換機上只支持一組LACP,嚴重限制了聚合數量,而vSphere 5.5支持多達64個。另外,現在可以將LACP配置作爲模板使用在其他主機上,有22種不同的散列算法可在鏈接上分發負載。有時候有必要通過捕獲網絡上的數據包來追蹤問題。最新版本的vSphere包含了一個增強版的開源包分析器tcpdump和大量的鏡像端口選項來捕獲不同地區的流量。你可以從虛擬NIC、虛擬交換機以及主機層面的上行路線上捕獲數據包。目前虛擬網絡中,主機A到主機B的流量移動類似於你看到的有複雜交換機的物理網絡。vSphere 5.5的分佈式交換機現在能夠利用IP包頭部中的區分服務代碼點(DSCP)形成和管理第三層網絡流量。又可以成爲DiffServ,就像在許多高端物理交換機上的訪問控制列表功能。可以在分佈式交換機上配置個人規則,來處理特定類型的流量,以便在必要的時候提供更高的服務質量。

     vSphere的Web客戶端也獲得了一些增強。很多反映了用戶的反饋,如圖中的“十大最新對象列表”。其他用戶體驗改進包括新的拖放支持,以及能夠爲大型設備過濾搜索結果。

     與此同時,vCenter Server Appliance提升了可擴展性。以前的版本支持有限數量的主機和虛擬機,但這次的數量已經增加到500臺主機和5000臺虛擬機。

     VMware也傾注了大量的精力使vCenter單點登錄的安裝更簡單,更容易擴展到多vCenter服務器實例。vSphere 5.5甚至將包含一套診斷工具。以前版本的vSphere複製一直只保留虛擬機的最新副本。5.5版本可以保持24個歷史快照。你可以每天24天或每天每小時保留一個副本。總是恢復最近的副本,但是你可以使用快照管理器恢復到任何其他的時間點。

     以下表格是vmware vSphere5.1和vSphere5.5在功能上和最大配置上的對比。  

Maximum

Type

Category

vSphere 5.1

vSphere 5.5

Virtual disk size

VM

Storage

2TB minus 512 bytes

62TB

Virtual SATA adapters per VM

VM

I/O Devices

NA

4

Virtual SATA devices per virtual SATA adapter

VM

I/O Devices

NA

30

xHCI USB controllers

VM

I/O Devices

1

NA

Logical CPUs per host

Host

Compute

160

320

NUMA Nodes per host

Host

Compute

8

16

Virtual CPUs per host

Host

Compute

2048

4096

Virtual CPUs per core

Host

Compute

25

32

RAM per host

Host

Compute

2TB

4TB

Swap file size

Host

Compute

1TB

NA

VMFS5 - Raw Device Mapping size (virtual compatibility)

Host

Storage

2TB minus 512 bytes

62TB

VMFS5 - File size

Host

Storage

2TB minus 512 bytes

62TB

e1000 1Gb Ethernet ports (Intel PCI‐x)

Host

Networking

32

NA

forcedeth 1Gb Ethernet ports (NVIDIA)

Host

Networking

2

NA

Combination of 10Gb and 1Gb Ethernet ports

Host

Networking

Six 10Gb and Four 1Gb ports

Eight 10Gb and Four 1Gb ports

mlx4_en 40GB Ethernet Ports (Mellanox)

Host

Networking

NA

4

SR-IOV Number of virtual functions

Host

VMDirectPath

32

64

SR-IOV Number of 10G pNICs

Host

VMDirectPath

4

8

Maximum active ports per host (VDS and VSS)

Host

Networking

1050

1016

Port groups per standard switch

Host

Networking

256

512

Static/Dynamic port groups per distributed switch

Host

Networking

NA

6500

Ports per distributed switch

Host

Networking

NA

60000

Ephemeral port groups per vCenter

Host

Networking

256

1016

Distributed switches per host

Host

Networking

NA

16

VSS portgroups per host

Host

Networking

NA

1000

LACP - LAGs per host

Host

Networking

NA

64

LACP - uplink ports per LAG (Team)

Host

Networking

4

32

Hosts per distributed switch

Host

Networking

500

1000

NIOC resource pools per vDS

Host

Networking

NA

64

Link aggregation groups per vDS

Host

Networking

1

64

Concurrent vSphere Web Clients connections to vCenter Server

vCenter

Scalability

NA

180

Hosts (with embedded vPostgres database)

vCenter Appliance

Scalability

5

100

Virtual machines (with embedded vPostgres database)

vCenter Appliance

Scalability

50

3000

Hosts (with Oracle database)

vCenter Appliance

Scalability

NA

1000

Virtual machines (with Oracle database)

vCenter Appliance

Scalability

NA

10000

Registered virtual machines

vCloud Director

Scalability

30000

50000

Powered-On virtual machines

vCloud Director

Scalability

10000

30000

vApps per organization

vCloud Director

Scalability

3000

5000

Hosts

vCloud Director

Scalability

2000

3000

vCenter Servers

vCloud Director

Scalability

25

20

Users

vCloud Director

Scalability

10000

25000


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章