专利名称:基于云计算的虚拟机运行控制装置及其运行控制方法
技术领域:
本发明涉及云计算技术领域,特指一种基于云计算的虚拟机运行控制装置及其运行控制方法。
背景技术:
计算机的应用模式大体经历了以大型机为主体的集中式架构(数据中心1.0)、以 PC机为主体的客户/服务器分布式计算架构(数据中心2. 0)、以虚拟化技术为核心面向服务的体系结构(SOA)及基于*吐2.0应用特征的新型架构(数据中心3.0)。计算机的应用模式、技术架构及实现特征的演变是云计算发展的时代背景。云计算的实质是网络下的应用,是由IP和IT技术共同构建的。从发展的角度来看,“云”的技术和目标是一个逐步演化的过程。比如,Web技术出现时,就具备了云计算的应用特征有了统一界面的雏形。随着服务器应用平台上的虚拟化技术的成熟和Web统一界面的推出,虚拟化和Web走向结合,使得云计算可以在一个整合的架构上统一实现。虚拟化是一个广义的术语,在计算机方面通常是指计算元件在虚拟的基础上而不是真实的基础上运行。虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程。CPU的虚拟化技术可以单CPU模拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。虚拟化技术与多任务以及超线程技术是完全不同的。多任务是指在一个操作系统中多个程序同时并行运行,而在虚拟化技术中,则可以同时运行多个操作系统,而且每一个操作系统中都有多个程序运行,每一个操作系统都运行在一个虚拟的CPU或者是虚拟主机上;而超线程技术只是单CPU模拟双CPU来平衡程序运行性能,这两个模拟出来的CPU是不能分离的,只能协同工作。虚拟化技术也与目前VMware Workstation等同样能达到虚拟效果的软件不同, 是一个巨大的技术进步,具体表现在减少软件虚拟机相关开销和支持更广泛的操作系统方目前云计算领域中使用最多的虚拟机管理器Xen(—个开放源代码虚拟机监视器,由剑桥大学开发)、KVM(全称是Kernel-based Virtual Machine,基于内核的虚拟机, 由红帽公司开发)、QEMU(—套由Fabrice Bellard所编写的开源跨平台模拟器)等在虚拟机运行控制方面的方法各不相同,这种情况给云计算领域虚拟机管理和弹性计算程序的开发带来挑战,因此,需要提供统一的装置来提供规范的虚拟机运行控制方式。
发明内容
本发明解决的技术问题之一在于提供个统一的、简单的、功能强大和有效规范虚拟机运行控制的基于云计算的虚拟机运行控制装置。本发明解决的技术问题之二在于提供个统一的、简单的、功能强大和有效规范虚拟机运行控制的基于云计算的虚拟机运行控制装置的运行控制方法。
本发明解决上述技术问题之一的技术方案是包括虚拟机控制命令输入/输出处理单元、虚拟机定位处理单元、虚拟机运行控制处理单元和虚拟机状态处理单元;所述的虚拟机控制命令输入/输出处理单元,用于将外部输入的虚拟机控制命令输出给虚拟机定位处理单元,并将虚拟机运行控制处理单元返回的处理结果输出给外部的输出单元;所述的虚拟机定位处理单元,用于从宿主物理机的虚拟机管理器中查找到相应的物理资源及虚拟机的标识,并将这些信息提供给虚拟机运行控制处理单元;所述的虚拟机运行控制处理单元,用于根据虚拟机定位处理单元提供的物理资源及虚拟机标识信息执行物理资源的重新分配,并将虚拟机生命周期的下一个状态提供给虚拟机状态处理单元;所述的虚拟机状态处理单元,用于根据虚拟机运行控制处理单元提供的虚拟机生命周期信息使用虚拟机管理器令虚拟机进行状态变换,同时把这些状态信息输出到外部进行处理和显示。所述的虚拟机控制命令输入/输出处理单元的控制命令结构包括控制命令名称和虚拟机标识;所述的控制命令名称用于表示能使虚拟机状态发生迁移的操作,包括运行、 结束、重新启动、暂停、恢复运行;所述的虚拟机标识于标识要操作的虚拟机,是区分一个虚拟机与其他虚拟机的全局唯一标识。所述的虚拟机定位处理单元的虚拟机管理器包括Xen、KVM、QEMU,在所述不同类型的虚拟机管理器上构建统一的接口,并根据虚拟机控制命令输入/输出处理单元提供的虚拟机控制命令进行虚拟机的查找。所述的虚拟机定位处理单元的物理资源包括CPU、内存、硬盘空间和IP地址。所述的虚拟机运行控制处理单元对物理资源重新分配,表示获取或释放CPU、内存、硬盘空间和IP地址这些物理资源。所述的虚拟机运行控制处理单元的虚拟机生命周期包括虚拟机的各种状态以及状态之间的装换过程,虚拟机的状态包括等待、运行、暂停、停止、结束。本发明解决上述技术问题之二的技术方案是运行控制包括如下步骤A、虚拟机运行控制处理单元接收虚拟机定位处理单元提供的物理资源信息,通过虚拟机管理器发出使用请求或释放请求;B、虚拟机运行控制处理单元等待虚拟机管理器的处理结果响应,判断结果是否成功,如果是,把虚拟机生命周期信息发送给虚拟机状态处理单元,执行步骤C,否则,返回处理失败的信息,跳转至步骤A ;C、虚拟机状态处理单元根据虚拟机运行控制处理单元提供的虚拟机生命周期信息使用虚拟机管理器令虚拟机进行状态变换;D、处理并显示返回结果。本发明可以达到的有益效果是1、本发明对外提供的接口遵循ffeb Service接口规范,是一个常用的、流行的接口,适用的范围非常广。2、本发明对外提供的接口与用户客户端程序之间通信采用SSL加密方式,确保通信内容的保密和数据的安全。
3、本发明提供在不同虚拟机管理器上统一的运行控制接口,为云计算领域虚拟机运行控制领域提供一个统一的、简单的、功能强大和有效的虚拟机运行控制机制。4、本发明统一了不同虚拟机类型的状态描述,为云计算构建统一的虚拟机描述层提供了支持。
下面结合附图对本发明进一步说明图1是本发明虚拟机运行控制装置的结构框图;图2是本发明虚拟机运行控制处理单元12和虚拟机状态处理单元13处理流程图;图3是本发明统一的虚拟机运行控制接口的结构图;图4是本发明为虚拟机状态迁移图。
具体实施例方式见附图1所示,本发明包括虚拟机控制命令输入/输出处理单元10、虚拟机定位处理单元11、虚拟机运行控制处理单元12和虚拟机状态处理单元13 ;虚拟机控制命令输入/ 输出处理单元10,用于将外部输入的虚拟机控制命令输出给虚拟机定位处理单元11,并将虚拟机运行控制处理单元12返回的处理结果输出给外部的输出单元。的虚拟机定位处理单元11,用于从宿主物理机的虚拟机管理器中查找到相应的物理资源及虚拟机的标识,并将这些信息提供给虚拟机运行控制处理单元12。虚拟机运行控制处理单元12,用于根据虚拟机定位处理单元11提供的物理资源及虚拟机标识信息执行物理资源的重新分配,并将虚拟机生命周期的下一个状态提供给虚拟机状态处理单元13。虚拟机状态处理单元13,用于根据虚拟机运行控制处理单元12提供的虚拟机生命周期信息使用虚拟机管理器令虚拟机进行状态变换,同时把这些状态信息输出到外部进行处理和显示。虚拟机控制命令输入/输出处理单元10的控制命令结构包括控制命令名称和虚拟机标识;所述的控制命令名称用于表示能使虚拟机状态发生迁移的操作,包括运行、结束、重新启动、暂停、恢复运行;所述的虚拟机标识于标识要操作的虚拟机,是区分一个虚拟机与其他虚拟机的全局唯一标识。虚拟机定位处理单元11的虚拟机管理器包括Xen、KVM、QEMU,在所述不同类型的虚拟机管理器上构建统一的接口,并根据虚拟机控制命令输入/输出处理单元10提供的虚拟机控制命令进行虚拟机的查找。虚拟机定位处理单元11的物理资源包括CPU、内存、硬盘空间和IP地址。虚拟机运行控制处理单元12对物理资源重新分配,表示获取或释放CPU、内存、硬盘空间和IP地址这些物理资源。虚拟机运行控制处理单元12的虚拟机生命周期包括虚拟机的各种状态以及状态之间的装换过程,虚拟机的状态包括等待、运行、暂停、停止、结束。如图2所示,本发明的运行控制装置的运行控制包括如下步骤A、虚拟机运行控制处理单元12接收虚拟机定位处理单元11提供的物理资源信息,通过虚拟机管理器发出使用请求或释放请求;
B、虚拟机运行控制处理单元12等待虚拟机管理器的处理结果响应,判断结果是否成功,如果是,把虚拟机生命周期信息发送给虚拟机状态处理单元13,执行步骤C,否则, 返回处理失败的信息,跳转至步骤A ;C、虚拟机状态处理单元13根据虚拟机运行控制处理单元12提供的虚拟机生命周期信息使用虚拟机管理器令虚拟机进行状态变换;D、处理并显示返回结果。如图3所示,虚拟机状态处理单元13调用一个统一的虚拟机运行控制接口,此接口是一个与虚拟机管理器无关的运行控制接口,通过在不同的虚拟机管理器(Hypervi sor) 上把接口的命令翻译成不同的方言来达到统一控制的目的。本发明统一了不同虚拟机类型的状态描述,如图4所示,通过执行不同的控制命令,虚拟机在各个状态之间跳转操作41 初始情况下执行运行(rim)命令,虚拟机跳转到等待(pending)状态;在 pending状态下,本装置执行虚拟机早期的初始化操作,完毕后进入运行(running)状态;操作42 在running状态下,执行暂停(pause)命令,虚拟机进入暂停(paused)状态;操作43 在paused状态下,执行恢复运行(unpause)命令,虚拟机进入running状态; 操作44 在running状态下,执行结束(terminate)命令,虚拟机进入停止 (shuttingdown)状态;在shuttingdown状态下,本装置执行虚拟机资源的回收操作,完毕后进入结束(terminated)状态; 操作45 在pending状态下,执行terminate命令,虚拟机进入shuttingdown状态;在shuttingdown状态下,本装置执行虚拟机资源的回收操作,完毕后进入terminated 状态。
权利要求
1.基于云计算的虚拟机运行控制装置,其特征在于包括虚拟机控制命令输入/输出处理单元(10)、虚拟机定位处理单元(11)、虚拟机运行控制处理单元(1 和虚拟机状态处理单元(13);所述的虚拟机控制命令输入/输出处理单元(10),用于将外部输入的虚拟机控制命令输出给虚拟机定位处理单元(11),并将虚拟机运行控制处理单元(1 返回的处理结果输出给外部的输出单元;所述的虚拟机定位处理单元(11),用于从宿主物理机的虚拟机管理器中查找到相应的物理资源及虚拟机的标识,并将这些信息提供给虚拟机运行控制处理单元(12);所述的虚拟机运行控制处理单元(12),用于根据虚拟机定位处理单元(11)提供的物理资源及虚拟机标识信息执行物理资源的重新分配,并将虚拟机生命周期的下一个状态提供给虚拟机状态处理单元(13);所述的虚拟机状态处理单元(13),用于根据虚拟机运行控制处理单元(1 提供的虚拟机生命周期信息使用虚拟机管理器令虚拟机进行状态变换,同时把这些状态信息输出到外部进行处理和显示。
2.根据权利要求1所述的基于云计算的虚拟机运行控制装置,其特征在于所述的虚拟机控制命令输入/输出处理单元(10)的控制命令结构包括控制命令名称和虚拟机标识; 所述的控制命令名称用于表示能使虚拟机状态发生迁移的操作,包括运行、结束、重新启动、暂停、恢复运行;所述的虚拟机标识于标识要操作的虚拟机,是区分一个虚拟机与其他虚拟机的全局唯一标识。
3.根据权利要求1所述的基于云计算的虚拟机运行控制装置,其特征在于所述的虚拟机定位处理单元(11)的虚拟机管理器包括Xen、KVM、QEMU,在所述不同类型的虚拟机管理器上构建统一的接口,并根据虚拟机控制命令输入/输出处理单元(10)提供的虚拟机控制命令进行虚拟机的查找。
4.根据权利要求2所述的基于云计算的虚拟机运行控制装置,其特征在于所述的虚拟机定位处理单元(11)的虚拟机管理器包括Xen、KVM、QEMU,在所述不同类型的虚拟机管理器上构建统一的接口,并根据虚拟机控制命令输入/输出处理单元(10)提供的虚拟机控制命令进行虚拟机的查找。
5.根据权利要求1、2、3或4所述的基于云计算的虚拟机运行控制装置,其特征在于 所述的虚拟机定位处理单元(11)的物理资源包括GPU、内存、硬盘空间和IP地址。
6.根据权利要求1、2、3或4所述的基于云计算的虚拟机运行控制装置,其特征在于 所述的虚拟机运行控制处理单元(1 对物理资源重新分配,表示获取或释放GPU、内存、硬盘空间和IP地址这些物理资源。
7.根据权利要求5所述的基于云计算的虚拟机运行控制装置,其特征在于所述的虚拟机运行控制处理单元(1 对物理资源重新分配,表示获取或释放GPU、内存、硬盘空间和 IP地址这些物理资源。
8.根据权利要求1、2、3或4所述的基于云计算的虚拟机运行控制装置,其特征在于 所述的虚拟机运行控制处理单元(1 的虚拟机生命周期包括虚拟机的各种状态以及状态之间的装换过程,虚拟机的状态包括等待、运行、暂停、停止、结束。
9.根据权利要求5所述的基于云计算的虚拟机运行控制装置,其特征在于所述的虚拟机运行控制处理单元(1 的虚拟机生命周期包括虚拟机的各种状态以及状态之间的装换过程,虚拟机的状态包括等待、运行、暂停、停止、结束。
10.根据权利要求6所述的基于云计算的虚拟机运行控制装置,其特征在于所述的虚拟机运行控制处理单元(1 的虚拟机生命周期包括虚拟机的各种状态以及状态之间的装换过程,虚拟机的状态包括等待、运行、暂停、停止、结束。
11.根据权利要求7所述的基于云计算的虚拟机运行控制装置,其特征在于所述的虚拟机运行控制处理单元(1 的虚拟机生命周期包括虚拟机的各种状态以及状态之间的装换过程,虚拟机的状态包括等待、运行、暂停、停止、结束。
12.—种权利要求1所述的基于云计算的虚拟机运行控制装置的运行控制方法,其特征在于运行控制包括如下步骤A、虚拟机运行控制处理单元(1 接收虚拟机定位处理单元(11)提供的物理资源信息,通过虚拟机管理器发出使用请求或释放请求;B、虚拟机运行控制处理单元(12)等待虚拟机管理器的处理结果响应,判断结果是否成功,如果是,把虚拟机生命周期信息发送给虚拟机状态处理单元(13),执行步骤C,否则, 返回处理失败的信息,跳转至步骤A ;C、虚拟机状态处理单元(1 根据虚拟机运行控制处理单元(1 提供的虚拟机生命周期信息使用虚拟机管理器令虚拟机进行状态变换;D、处理并显示返回结果。
全文摘要
本发明涉及云计算技术领域,特指一种基于云计算的虚拟机运行控制装置及其运行控制方法。包括虚拟机控制命令输入/输出处理单元、虚拟机定位处理单元、虚拟机运行控制处理单元和虚拟机状态处理单元;所述的虚拟机运行控制处理单元,用于根据虚拟机定位处理单元提供的物理资源及虚拟机标识信息执行物理资源的重新分配,并将虚拟机生命周期的下一个状态提供给虚拟机状态处理单元;所述的虚拟机状态处理单元,用于根据虚拟机运行控制处理单元提供的虚拟机生命周期信息使用虚拟机管理器令虚拟机进行状态变换,同时把这些状态信息输出到外部进行处理和显示。本发明有效解决了规范虚拟机运行控制方式问题;可以广泛应用于虚拟机运行控制上。
文档编号H04L29/08GK102307208SQ201010292159
公开日2012年1月4日 申请日期2010年9月25日 优先权日2010年9月25日
发明者季统凯, 岳强, 杨松, 肖翱, 莫展鹏 申请人:广东电子工业研究院有限公司