数据中心操作系统解构之虚拟运行环境子系统绿色数据中心
数据中心的操作系统由系统接入子系统、数据管理子系统、虚拟网络及网络管理子系统、虚拟运行环境子系统、用户管理和安全管理子系统五个子系统构成。
虚拟运行环境子系统
虚拟运行环境子系统的功能是根据用户的个性化需求,为用户提供虚拟运行环境,虚拟运行环境中已经安装有用户选取的软件,极大地简化了用户安装系统及软件的步骤。另外,这些虚拟运行环境是弹性的,即可以根据用户在短期内的使用量需求,弹性地为用户分配虚拟运行环境。与此同时,通过虚拟运行环境之间的协同工作,使计算处理速度大大提高,在逻辑上使用户拥有大量的计算资源。该子系统除了为用户分配虚拟运行环境之外,还要管理虚拟运行环境,包括对虚拟运行环境的创建、修改、监控、关闭、清除、热迁移,以及将逻辑卷与虚拟运行环境的绑定等。
该子系统通过集群控制器和节点控制器完成其主要功能。一个集群控制器可以管理多个节点控制器。集群控制器负责从其所属的节点控制器收集节点的状态信息,然后根据这些节点的资源状态信息,调度进入的虚拟运行环境执行请求到各个节点控制器上,并负责管理公共和私有实例网络的配置。与节点控制器一样,集群控制器接口也是通过WSDL文档来描述的,这些操作包括运行、描述和终止虚拟运行环境。描述和终止虚拟运行环境的操作会直接传给相关节点控制器。当集群控制器接收到一个运行实例请求后,它执行一个简单的调度任务,该任务通过调用描述资源命令来查询每一个节点控制器,选择第一个具有足够空闲资源的节点控制器来执行实例运行请求。集群控制器还可实现查询资源操作,该操作将一个实例需要占据的资源作为输入,并返回可以同时在其所属节点控制器上执行的实例个数。
为了准确地描述该子系统中虚拟运行环境的个数,以及硬盘、CPU、内存资源的状态和容量。在系统接入子系统中,要提供虚拟运行环境控制服务 (VM Conterol Service)来管理虚拟运行环境元数据的创建。虚拟运行环境控制器不间断地维护一个基本资源状态的简单本地描述,如一个集群控制器能够创建的虚拟运行环境的个数。当发起一个虚拟运行环境创建请求时,虚拟运行环境控制器将和系统接入子系统的其他服务进行协作,将用户的请求分解成镜像、网络和安全组等,并根据相应的元数据和资源应用配置策略预先生成一个解决方案,然后将消息散播至其涉及的集群控制器,集群控制器再调度这些请求到其所辖节点控制器,最后由节点控制器创建虚拟机实例来运行用户作业和应用程序。在具体应用申,虚拟运行环境子系统可以通过半虚拟化技术(如Xen)、全虚拟化技术(如KVM)及相应的虚拟机管理器 (VMM)来实现。