虚拟化 频道

将支持ARM Xen管理程序迎来技术预览版

        【IT168 资讯】作为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带来的便利。

0
相关文章