虚拟机及其协同技术
虚拟机是构造虚拟SMP服务器的基础,它是由虚拟机监控(VMM)软件创建和管理。传统的VMM例如Xen和VMware面向单一节点,节点既可以是单一CPU也可以由SMP构成。这时由这些VMM所构造的虚拟机(VM)所能够利用的资源例如CPU、内存、磁盘、通信带宽等就仅限于这个单一的物理节点。从这个意义上说,虚拟机间的协同也就等价于传统服务节点或服务器间的协同,无法充分利用基于虚拟机技术创新所带来的益处。因此,必须突破目前虚拟机构造中资源的局限性,使得一个虚拟机不仅能够从它的宿主物理节点上取得资源,而且能够利用网络从其他非宿主的物理节点上获取资源,从而实现资源在虚拟机间的流动,实现部件级的虚拟化。这里的部件泛指CPU、内存、磁盘、网络等构成传统计算机的部件。
计算所要研究的分布式超级虚拟机监控软件(distributed hyper virtual machine monitor,DHVMM)是实现部件级虚拟化的关键支撑。基于DHVM提供的强大的部件级虚拟化能力,虚拟机间的协同就转变为资源和作业的调度和迁移。该项目将强调部件在虚拟机间的流动,当一个虚拟机有大量作业到达或有繁重作业而出现负载尖锋时,不采用传统的方法如作业/进程的迁移,而是通过DHVMM将网络环境中可利用的其他虚拟机上的空闲部件“流动”到资源紧张的虚拟机上,通过动态地增强重载虚拟机的计算能力、存储能力、通信能力来处理其上的作业。同时,当作业的负载高峰过去后,被动态增强的虚拟机可以自由、实时地释放“富余”的部件,供系统中其他虚拟机在需要的时候动态地获取,计算所将这种技术称为能力服务计算。