Blogtrottr
2013 - Yahoo奇摩 搜尋結果
2013 - Yahoo奇摩 搜尋結果 
XenServer徹底64位元化,擴增GPU虛擬化與快取技術
Mar 7th 2015, 11:19

伺服器虛擬化平臺發展至今,VMware vSphere獨領風騷,市占已超過一半,接著是微軟Hyper-V緊追在後,Citrix主推的XenServer則又次之,2015年一開春,XenServer和vSphere都陸續發布新版本,前者早在1月正式推出6.5版(先前代號叫做Creedence),現在已經可以下載,後者則在2月宣布了6.0版,但全球發布(GA)的日期未定,很有可能是在3月上半。

XenServer是基於開放原始碼專案Xen的Hypervisor,所開發出來的商業軟體,在6.5這一版當中,該產品開始提供完整的64位元核心架構,用戶可藉此運用近期推出的伺服器硬體與作業系統平臺,以因應企業與電信服務商等級的資料中心虛擬化環境需求。

現在,XenServer也支援Intel處理器所內建的TXT(Trusted Execution Technology)安全防護技術,Hypervisor因此得以具有偵測與避免遭到竄改存取行為的能力,可預防應用系統執行在被駭客侵入的VM上。新版也提供加註資產標籤(Asset Tagging)的機制,使各個工作負載能夠搭配基於地理位置的標籤,讓管理者限制它們只能在特定地區來執行。

XenServer對於GPU虛擬化的支援也繼續延伸,6.5版開始支援Nvidia GRID繪圖卡最新推出的vGPU技術,不只是因應桌面虛擬化應用環境的高階3D繪圖應用程式執行需求,還可將所需的運算伺服器的密度提升50%。

更徹底支援64位元環境,可完整存取4GB以上記憶體空間,驅動程式的穩定度提升,並可支援更多新硬體裝置

6.5版XenServer強調採用了64位元的核心架構,對於網路與儲存應用的效能,也隨之大幅提升。不過,這裡所謂的64位元核心架構,指的是Xen Hypervisor在執行時,第一個載入的控制領域(control domain)──dom0,是整個伺服器虛擬化平臺管理VM及驅動實體硬體裝置的地方。原本dom0是CentOS 5.7版,現在升級到5.10版。

圖中的箭頭處就是所謂的控制領域dom0,它本身也是一臺VM,但作用跟一般VM不同,它負責管理主機、主機共用區,以及提供給所有VM的儲存與網路I/O。XenServer的Dom0到了6.5版之後,正式64位元化,可存取更多記憶體與硬碟、網路裝置,連帶地,每臺主機可負載的VM數量也能提升,並且能適用於當前伺服器出貨普遍採用64位元組態的方式。

Xen hypervisor早已支援64位元的執行模式,所以能承載32位元與64位元的Guest OS,然而,在之前版本的XenServer,dom0核心都是32位元。

32位元dom0會面臨什麼樣的限制?主要是對於下層記憶體(low memory)的作法。就如同大家所熟知的,32位元環境面臨的主要限制,在於系統最大可存取的記憶體容量只有4GB,後來發展出許多延伸的方式來突破,但這些作法也會影響效能,導致作業成本提高的後果。

甚至,後來在32位元Linux作業系統上,還發展出所謂的下層記憶體與上層記憶體(High Memory)的配置,前者負責與作業系統核心有關的一切處理,包括核心記憶體的對應與核心驅動程式,後者則是針對使用者空間(userspace)的處理。由於低層記憶體要處理的東西太多,形成資源不夠用的局面,而這樣的架構也影響到32位元dom0,XenServer安裝後,預設只能存取到752MB的下層記憶體。

XenServer在先前32位元dom0環境所遇到的問題,還不只是這樣。

在32位元BIOS下,MMIO(Memory-Mapped I/O)區域所坐落的實體位址空間,只能在1GB和3GB之間,dom0如果建立了MMIO hole,可選擇重新對應記憶體的位置,讓它投射到虛擬位址空間上,核心必須對應與MMIO hole大約等量的記憶體,而對32位元核心來說,就必須放到下層記憶體。

再加上,許多驅動程式會自行將核心記憶體對應到MMIO hole,以便在開機時能夠成功載入,但如果下層記憶體容量低到不足以滿足MMIO hole重新對應的需求時,就有可能導致無法穩定執行驅動程式的狀況。雖然XenServer支援PAE,可定址超過4GB的記憶體空間,但對於有些驅動程式的執行來說,還是沒幫助,因為它們固定放在32位元的記憶體實體位址空間,在這種情況下,還是會無法存取到4GB以上的記憶體空間,而導致載入失敗。

而到了64位元BIOS環境,MIMO區域改置於實體記憶體的最上層,所以,也就沒有過去這種上下層記憶體的對應管理問題,等於也提升了驅動程式的穩定度。

此外,許多當前的電腦硬體與周邊裝置,都已充分支援64位元處理器與4GB以上的記憶體,而提供了對應的驅動程式,XenServer 6.5現在採用64位元dom0,等於可藉此支援這些新的硬體;同時,由於所能存取的核心記憶體容量不再受限於先前組態,使得XenServer主機端所能搭配的裝置數量與類型都更為豐富。

例如,每臺主機可同時運用的虛擬磁碟數量,6.5版XenServer提升到2048臺(6.2版是512臺);對於僅提供64位元驅動程式的新一代硬體裝置,例如PCIe SSD,XenServer現在也可支援。

64位元dom0帶來的另一個好處是,XenServer可運用64位元編譯器設定,在編譯時,能促使事件傳輸通道(Event Channel)的數量與程式碼執行路徑,達到最佳化處理效果,並且能夠善用新一代處理器所特有的延伸指令集。

採用4.4版Xen Hypervisor

XenServer 6.5所採用的Xen Hypervisor版本,也提升到2014年3月所推出的4.4版。Xen 4.4的特色,是增加了事件通道數量(從1023擴張到131,071,有128倍之多),可因應VM內部需搭配大量磁碟、網路卡虛擬裝置的應用。

Xen Hypervisor是圖中箭頭所指的地方,這裡提供了控制介面和虛擬硬體,它和Dom0需相互搭配,以便管理整臺實體主機和VM的資源。在XenServer所搭配的Xen是4.4版。

在XenServer前一版(6.2版)時,曾採用了過度作法,來提供4096個事件通道,然而,這只能滿足每臺主機500臺VM的組態(平均下來,每臺VM所能搭配的虛擬裝置也不多)。現在,Xen 4.4擁有更多事件通道後,可讓XenServer 6.5環境下的每臺主機、VM擁有更多虛擬裝置。

同時,這一版Xen對於grant-copy鎖定請求的處理,也變得更有效率,可大幅增加VM硬碟與網路I/O吞吐效能。

XenServer 6.5所搭配的Linux核心,也提升到3.10版,該版核心是以長期穩定為前提而設計的,因此適合XenServer使用。相較之下,6.2版XenServer搭配的是2.6.32版核心,之後推出的2.6.37版,是第一個原生支援Xen dom0執行的Linux核心,從那時候起,眾家標準Linux版本都可以透過PVOPS(paravirt_ops)的核心形式執行──它是Linux核心基礎架構的一部分,可讓Linux在Hypervisor上以半虛擬化的方式執行。

強化對於Nvidia vGPU支援,強化桌面虛擬化應用

伺服器虛擬化平臺與Nvidia vGPU之間的技術應用,談了好幾年,到了2015年終於比較完整,在2013年底推出的XenServer 6.2 SP1率先完成多種模式的支援,而VMware vSphere則是到了2015年推出的6.0版才完成。GPU虛擬化技術的發展至此,終於到達最終階段的里程碑。

圖中是XenServer的vGPU支援架構與彼此的細部運作方式,主要分為三大部分,最底層是Nvidia GPU,中間是Xen Hypervisor,上層是dorm0和Windows VM,需要安裝Nvidia的核心模組、外掛,以及用戶端驅動程式。

由於XenServer 6.5支援vGPU,因此,能夠整合XenServer的Citrix CloudPlatform與其他開放雲端管理平臺,也將跟著原生支援這項GPU虛擬化技術。

Citrix表示,若用XenServer支援vGPU的方式,來供應XenDesktop與XenApp環境的3D繪圖應用程式執行,在伺服器配置的密度上,將可提高50%,可因此降低成本,並兼顧使用者體驗的改善。

過去幾年以來,XenServer與vSphere陸續支援了不同的GPU虛擬化技術,包括透過軟體讓多臺VM共享GPU的模式(GPU Shared)、單臺VM獨佔單顆GPU的模式(GPU pass-through),然後,可同時支援多臺共享或單臺獨佔的硬體GPU虛擬技術(Hardware Virtualization of the GPU),卻較晚就緒。

以最早支援的XenServer 6.2 SP1來說,每臺主機只能支援到64臺VM;到了XenServer 6.5,vGPU支援相關軟體套件直接內建在主系統的安裝ISO映像檔中,無需再額外安裝,而且,主機端可依照搭配的Nvidia GRID硬體繪圖卡數量,支援更多實體GPU存取。以目前來說,每臺XenServer主機運用vGPU加速的VM,最大可支援96臺(搭配3張GRID K1,每張K100繪圖卡最大可支援32個使用者)。

XenServer 6.2支援了3種GPU虛擬化方式,由左而右,分別是GPU Sharing、GPU Pass-through、vGPU。6.5版支援的vGPU程度更高,可支撐高達96臺應用vGPU的VM。

6.5版XenServer也支援Nvidia最近推出的GRID vGPU設定檔,像是K120Q、K160Q、K180Q,以及K220Q與K280Q,以K120Q為例,雖然只有512MB,卻可支援32個一般使用者的雙螢幕顯示,解析度高達2560x1600,。值得注意的是,雖然XenServer本身已內建支援,仍須至Nvidia網站下載最新版驅動程式,與之搭配。

上述兩張圖是Nvidia官網的vGPU相關驅動程式軟體,若要應用vGPU功能,可選擇Nvidia GRID vGPU這個產品型號項目,接下來選XenServer版本與語言別,即可下載。目前可選擇XenServer 6.2和6.5版,vSphere 6.0號稱支援vGPU,但該產品目前(3月7日)還沒正式發布,所以,Nvidia網站並沒有列出vSphere 6的選項。

你也可以應用其他Nvidia GPU虛擬化功能,以Quadro K6000系列為例,就可以選擇VMware ESXi 5.1或5.5版,但這裡就沒看到XenServer的項目了,關於這個問題,還需要跟Nvidia和Citrix確認一下原因,也許是vGPU一推出之後,可以滿足所有需求吧?

工作負載平衡器重回XenServer懷抱,並提供新的分散式虛擬網路交換控制器

這套產品也重新提供企業等級的工作負載平衡器(Workload Balancing,WLB)的虛擬設備,以及新的分散式虛擬網路交換控制器(Distributed Virtual Switch Controller,DVSC),支援Amazon如此大型的雲端環境使用。

在XenServer 6.2版取消提供的工作負載平衡器(WLB),在6.5版中又回來了,這項功能其實跟vSphere的DRS(Dynamic Resource Scheduler)很類似,可以根據主機端的負載情況搭配政策,將正在執行的VM,自動線上遷移到其他臺主機。
6.5版的WLB增加了更多功能、改善操作介面與稽核機制,授權方式也有變更(XenServer企業版和XenApp白金版、XenDesktop白金版均可使用)。

目前,WLB包含4種功能,包括收集XenServer系統效能資料,例如處理器、儲存與網路的負載,以及分析效能狀態的歷程與趨勢、對資源不足情況提出警告、自動平衡工作負載等等。因此,它可以產生效能監控報表、警示管理者系統可能會出現使用率過高的部分,並且根據歷史資料,自動將VM工作負載配置到不同XenServer主機上。

WLB虛擬設備在XenServer 6.2版時,曾被移除、不再提供,然而,到了最新推出的6.5版,該功能又回歸。有了WLB,系統管理者可以深入掌握系統效能,例如,透過細緻的效能監控報表的產生、警告管理者去發現系統熱區(system hot spots)所在,並且設法使其最佳化,例如根據歷史資料的分析,自動調整工作負載的執行位置,以及基於現有的處理器、儲存與網路負載,動態搬移工作負載至其他地方。

WLB也提供了進階的資源池存取蹤跡稽核記錄(Pool Audit Trail)功能,管理者可以指定稽核記錄收集資料的粗細粒度,之後,可以依據特定使用者、物件和時間等條件,來搜尋與過濾這些資料。

這臺虛擬設備也支援線上升級,企業可透過YUM的更新機制,連至正在執行的SLB伺服器,或是從Citrix網站下載升級套件,然後直接套用、不停機。

在網路端應用方面,XenServer 6.5所提供的開放虛擬交換器(Open vSwitch,OVS),也從先前的1.4版升級到2.1.3。新版OVS支援Megaflow的作法,在絕大多數狀況下,有助於減少流量表(Flow Table)所需記錄的項目,也可以改善dom0的網路負荷程度,能處理大量伺服器VM連接眾多用戶端的應用。

在OVS的網路Flow處理中,會比對網路封包標頭,並給予對應的處理動作,像是轉送或丟棄,而作為伺服器應用的VM之言,本身可能需負荷大量用戶端連線,而每一個連線都需要一個Flow,如果主機端的VM數量增加,dom0的OVS流量表會填入相關資料,導致OVS使用者空間處理的迴圈,其他節點連至VM與VM對外發出的網路吞吐量,也會因此降低。同時,在XenServer 6.2包含的OVS 1.4環境下,Flow必須擁有確切符合的標頭,才能傳輸。而換成新的OVS之後,XenServer 6.5的主機與VM,可望承載更多網路流量。

前面提到,新版XenServer也更新了分散式虛擬網路交換控制器。先前XenServer 6.2所採用的是DVSC-Controller-17223,到了6.5版,XenServer改用DVSC-Controller-37734.1,主要來自被VMware併購的網路虛擬化廠商Nicira,當中最大改變是修正了幾個重大安全漏洞,例如OpenSSL、Shellshock。

除此之外,網路存取而言,XenServer 6.5主機對主機的總吞吐量(Aggregate network throughput),也從先前的3Gb/s提升到25Gb/s,等於增加了7倍,而網路Flow的平均延遲縮短了15倍,改善更為顯著(6.2版是800毫秒,6.5版則為50毫秒)。

XenServer也改良一般網路傳輸與IPv6環境下的效能。例如系統預設支援GRO(Generic Receive Offload)的處理卸載機制,VM接收網路效能可因此提升2倍。只要伺服器端的實體網路卡可相容或支援GRO,入埠的網路封包
就能由網卡端以透明的方式合併,這有助於dom0處理傳入資料時所受到干擾的頻率,會跟著變少,等於節省處理器的計算週期,並且也能更容易搭配與運用10Gb與40Gb的新一代資料中心高速網路。
根據Citrix本身的測試數據,他們看到單一串流網路吞吐量,甚至最大可因此增加4倍。
此外,XenServer 6.5也採用Grant Mapping的方式來傳輸網路流量,而不是用Grant Copy,因此節省了dom0的處理器資源,於是,總體網路吞吐量可增加2倍。

總體而言,6.5版加入不少改善網路吞吐量處理的技術,如此一來,大量VM不論是發出或接收資料,都能以高速的方式進行。

存取儲存裝置的速度大幅改善

這次XenServer改版,同時引進了新的記憶體內讀取快取(In-memory Read Caching),目的是為了改善VM存取磁碟的效能,該功能可減少存取實體儲存裝置的I/O量。快取的輔助加速,在伺服器虛擬化平臺似乎越來越普遍,像VMware從vSphere 5.5開始支援vFlash Read Cache,微軟Windows Server 2012 Hyper-V也支援CSV Cache和Storage Spaces Write-back Cache,但各自的作法,以及所利用的、針對的對象都不太一樣。

透過單一模版方式來同時啟動多個VM,可透過這種集中化機制,節省不必要的I/O負擔。

這項新的快取技術應用,主要是針對常用的VM模版映像(golden images)。原本,XenServer系統可將少數對於特定儲存區塊的上的VM寫入資料,存放在每臺VM所配置的差異磁碟(differencing-disks)上,若搭配這種讀取快取技術,相關VM資料從外部的實體磁碟讀取之後,可暫存在主機端記憶體內,以提升虛擬磁碟效能。若基於這樣的架構,而且許多VM都是複製自同一個VM,改善系統效能幅度更大。

XenServer新增了記憶體內的讀取快取,讓所有VM的I/O都在主機端的記憶體執行,而不是去存本機的磁碟。

記憶體內快取還可搭配XenServer既有的IntelliCache,做到兩階式快取,以及非持續性寫入動作的快取。

Citrix認為,若將其應用在XenDesktop的Machine Creation Service(MCS),能更徹底減少從硬碟端讀取儲存區塊的數量,而且可因應需頻繁讀取磁碟資料的行為。對於那些因繁重I/O而導致服務等級下降的例子,快取的助益會更趨於明顯,就像桌面虛擬化環境面臨的開機風暴(使用者在很短時間內紛紛執行開機),或是VM的排程掃毒作業。設定在同一段時間內密集進行。

搭配固態硬碟時,XenServer在儲存讀取的總體吞吐量(Aggregate storage read throughput)表現上也很亮眼。根據Citrix所公布的效能測試數據,6.2版是2.2GB/s,而6.5版提升到9.9GB/s,幅度有3.5倍之多;相對地,對於儲存寫入的總體吞吐量(Aggregate storage write throughput),XenServer 6.2版是2.8GB/s,6.5版則到7.8GB/s,增加了到近1.8倍。

XenServer對於儲存採用了最佳化的資料路徑(datapath),可將總體吞吐量擴大到更理想的地步,以因應大量VM的存取需求。這項措施讓系統在承載多臺VM時,I/O得以維持在較高的標準上。例如,XenServer新版支援Tapdisk3,可改善多個磁碟同時存取的效能,提供更巨大的總體虛擬磁碟吞吐量。據Citrix估計,提升幅度達到1倍。

面對大量VM同時開機時所產生的巨量I/O負擔(俗稱開機風暴),新版XenServer改善程度很大,這主要受益於In-memory Read Caching技術的採用。Citrix宣稱開機風暴的時間原本是471秒,新版縮短至140秒,加速比例達到70%;在這段過程中所傳輸的資料量,也大幅減少──原本需要18GB,新版XenServer則不到1GB,能做到這樣,有賴於In-memory Read Caching的快取特性之外,再加上,該技術也運用VM共用基本映像檔的方式,因此,大幅降低XenServer主機端存取外部儲存陣列的I/O量。

在XenServer 6.5環境下,同時使大量VM開機時的速度會加快,原因在於支援了新的記憶體內讀取快取技術。當VM全都共用相同的映像檔時,讀取快取能有效降低對儲存陣列的I/O衝擊。

基於Intel處理器架構的安全開機功能支援,也有所改良

在企業版上,XenServer可應用Intel處理器所提供的安全開機功能──TXT(Trusted Execution Technology) Measured Boot,但用戶需安裝相關增補套件軟體,才能應用。該套件是在2013年推出的,XenServer也針對6.1版和6.2版發行了對應版本,而到了6.5版上市,這個TXT Measured Boot套件更新了tboot(Trusted Boot)版本。

Tboot是一套開源的核心前執行(pre- kernel)或VMM模組,當中採用了Intel處理器所普遍內建的TXT技術,以便測量與驗證作業系統核心或VMM的系統啟動程序,防止有心人士從開機程序當中滲透到作業系統或VMM當中。

除此之外,XenServer 6.5版更新的Measured Boot套件,也支援一些新功能,像是加註資產標籤(Asset Tagging),讓管理者可以在伺服器上,標示任何有用的資訊,例如所處的地理位置、所配置的硬體規格與性能,或是法規遵循要求。

有了這項機制,能讓XenServer主機在啟動VM時,驗證是否具有管理者所給予的標籤,以符合特定的條件和加密憑證要求。

支援近期推出的x86伺服器級處理器,虛擬化平臺的最大組態也有所增長

距離XenServer上次大改版(2013年6月)已經有好幾年,6.5版一推出,該平臺也強調可支援較新款的x86伺服器級處理器,像是Intel在2014年初推出的Xeon E7 v2系列(Ivy Bridge EX),以及下半年發表的Xeon E5-2600 v3(Haswell EP),對於AMD Opteron處理器也不偏廢,開始支援2014年初推出、採用Piledriver架構的6338P和6370P(Warsaw)。

在整體平臺的最大組態上,XenServer也調高了主機端與VM端的部分規格。以單臺主機而言,6.5版和6.2版一樣,可支援160顆實體處理器、1TB記憶體和500臺VM,不過,它支援的虛擬磁碟裝置數量,有了突破,從原本的512臺,增加到2048臺,而且所支援的LUN(Multipathed LUN),也提升到256個之多(6.2版是150個)。

最大組態向來是眾家伺服器虛擬化平臺的必爭之地,但XenServer就算是6.5版的規格來看,仍落後其他廠商許多,唯一的亮點,是每一臺主機可支援的虛擬磁碟,高達2,048臺。

若以單一VM來看,在6.5版的XenServer環境下,每臺可配置的記憶體從先前的128GB,提升到192GB。

雖然XenServer 6.5部分最大組態有所調整,只有一項居於領先,主機端可同時存取的虛擬磁碟數量是2048臺(VMware vSphere 6.0也是),但絕大多數規格仍趕不上VMware vSphere 5.x和微軟Windows Server 2012 Hyper-V,甚至比不上Red Hat Enterprise Virtualization當前版本 3.4,尤其是記憶體容量。例如,這三家廠商的產品,至少都提供了1TB的主機或VM配置(相當於Windows Server 2008 R2 Hyper-V)。

XenServer目前的授權方式,分為4種:免費版、標準版、企業版,以及XenApp與XenDesktop白金版。圖中所列的標準版和企業版售價,似乎是不含技術支援的價格。

XenServer標準版和企業版之間的售價、定位、功能的比較。

XenServer現行版本的功能差異比較。

產品資訊

●建議售價:標準版每顆處理器永久授權為45,000元,含1年軟體維護費用;企業版每顆處理器永久授權為81,000元,含1年軟體維護費用

●原廠:Citrix(02)8758- 2931

●XenServer主機端硬體需求:64位元x86處理器1.5 GHz、2GB記憶體、16GB硬碟空間

●XenCenter系統需求:Windows Vista~8.1、Windows Server 2003~2012R2、.NET Framework 4、750MHz處理器、1GB記憶體、100MB硬碟空間

●VM端支援作業系統:Windows XP~8.1、Windows Sever 2003~2012 R2、CentOS 4.5~7.0、RHEL 4.5~7.0、SLES 10~11、Oracle Linux 5.0~7.0、Debian 6.0~7、Ubuntu 10/12/14

This entry passed through the Full-Text RSS service - if this is your content and you're reading it on someone else's site, please read the FAQ at fivefilters.org/content-only/faq.php#publishers.

You are receiving this email because you subscribed to this feed at blogtrottr.com.

If you no longer wish to receive these emails, you can unsubscribe from this feed, or manage all your subscriptions
arrow
arrow
    全站熱搜

    wv52434 發表在 痞客邦 留言(0) 人氣()