將支持ARM Xen管理程序迎來技術預覽版
作為Linux基金會的重要組成部分之一,原本由思杰負責的Xen項目肩負著開源虛擬化管理程序的重擔、并有望在***4.3版本中加入對ARM處理器的支持。
思杰Xen管理程序高級工程師George Dunlop在一篇博客中***談到***的4.3版本。Dunlop去年年底曾指出Xen管理程序的大規模更新周期為九個月,而Xen 4.3的出現也正好遵循這一時間規劃。項目開發組共有90位成員、其中25位屬于獨立開發者,他們為這套管理程序貢獻了1362個變更集、新代碼行數達136128行。
思杰在此次升級中貢獻了41%的總工作量(我們暫時忽略具體變更集數字),而SUSE Linux貢獻了23%、個人開發者貢獻了8%、英特爾貢獻6%、美國國家安全局則貢獻了5%。
在Xen 4.3版本中,最重要的新功能在于同時支持32位與64位ARM處理器;不過從實用性角度出發,在管理程序內對虛擬機進行NUMA感知調度的功能也同樣重要。坦率地說,ARM服務器仍處于開發階段,因此在業務領域可謂只有發展預期、缺乏實際收益。
Xen 4.3管理程序只接納擁有“快速模式”的ARM核心,即32位ARMv7 –A架構及其虛擬化擴展外加尚處于實驗室測試階段的模擬化64位ARMv8 –A處理器。在這兩種情況下,Xen管理程序順利通過了對ARMv7 –A及ARMv8處理器的模擬測試,用ARM的行話說叫做“快速模式”或者“實時系統”。測試人員在一臺使用三星XE303C12-A01芯片的谷歌Chromebook設備上啟動了Xen 4.3,并在32位模式、40位內存擴展的情況下在三星的Exynos5片上系統中進行了二次測試。
Xen 4.3將運行于64位x86設備當中,這就意味著去年九月公布的Xen 4.2將成為***一個支持32位x86芯片的版本。
NUMA感知調度機制是Xen中的重要組成部分,它能通過非統一化內存訪問方式將設備上的多個處理器插槽及芯片組對接在一起、從而創建出單獨的內存空間。利用NUMA設計,每個插槽都擁有本地內存并可隨時進行訪問。如果CPU處理所需的數據正好駐留在與插槽相連的本地內存當中,那么性能表現將相當令人滿意。不過對于跨插槽管理程序來說,必須能夠指示芯片組確保虛擬機使用特定插槽上的特定線程或者核心,且將其需要的數據推送至對應插槽。如果做不到這一點,否則虛擬機將不得不跨越整個NUMA芯片組并從鄰近的插槽中搶奪數據。
隨著一臺設備上所承載的虛擬機及插槽數量的不斷攀升,NUMA感知調度機制的作用也愈發明顯。雖然讓設備以超負荷狀態工作會帶來些許風險,但Xen對NUMA系統的重視似乎在一定程度上緩解了這類問題。
Xen 4.3在可擴展性方面也得到一定強化。Xen管理程序的物理主內存支持能力已經由4.2版本的***5TB提升至4.3版本的***16TB。早期Xen版本存在性能瓶頸,即單一實例中最多僅能容納300個虛擬CPU。不過在4.3版本中,這一上限已經提升至750個。
不過這方面容納能力完全屬于測試限度而非理論瓶頸。思杰公司上周剛剛推出了自己的商業級Xen方案——XenServer 6.3,這款管理程序的單一主機虛擬CPU容量上限可達3250個,目前估計其理論上限為4000個。
VMware公司于去年夏天以12.6億美元的價碼收購了Nicira,從而獲得了由其開發的Open vSwitch虛擬交換機技術。此次Xen 4.3管理程序也集成了該虛擬交換機方案。Open vSwitch取代了Xen中的原有虛擬接口橋接代碼,但大家需要注意的是,Open vSwitch集成目前尚處于技術預覽版階段。
Xen此前一直在使用QEMU硬件仿真器為管理程序提供支持,但目前它已經開始采用名為qemu-xen的新一代硬件仿真器。Qemu-xen繼承了前代QEMU的后端以實現與Xen的共同協作。現在各Linux操作系統發行版已經可以輕松將Xen整合到自身當中。當然,原有的QEMU硬件仿真器仍然存在。(QEMU也支持KVM管理程序)
Xen項目的用戶群體估計已經超過1000萬,Xen管理程序也已經在企業計算及公共云等多種業務環境中發揮作用。除此之外,也有很多用戶在嵌入式及移動設備中享受著由Xen帶來的便利。