一种用于获得虚拟机的模板的方法和装置制造方法

文档序号:6504691阅读:128来源:国知局
一种用于获得虚拟机的模板的方法和装置制造方法
【专利摘要】本发明的目的在于提供一种用于获得虚拟机的模板的方法和装置。根据本发明的方法包括:确定所述虚拟机所依据的第一模板;获取当前状态的所述虚拟机相对于所述第一模板的增量数据信息;根据相对于所述第一模板的所述增量数据信息,生成与所述虚拟机的所述当前状态相对应的第二模板。本发明的优点在于,通过建立相互之间具有依赖关系的多个模板,使得用户可方便的从一个模板切换至另一个模板,并且,由于模板之间的依赖关系,使得每个模板仅需保存自身的增量数据即可,极大的减少了模板的存储空间。
【专利说明】一种用于获得虚拟机的模板的方法和装置
【技术领域】
[0001]本发明涉及计算机【技术领域】,尤其涉及一种用于获得虚拟机的模板和装置。
【背景技术】
[0002]在虚拟化环境下,主要通过利用模板来快速创建虚拟机,在现有技术中,传统的模 板是某虚拟机的一个完全备份,如果用户希望建立多种状态下的虚拟机,则需要预先存储 虚拟机在该多个状态时的完全备份。通常采用磁盘完全备份或者采用增量磁盘来实现。
[0003]然而,磁盘完全备份占用空间多,不利于多个状态保持,不同状态切换不灵活;现 有的增量磁盘虽然单个模板占用空间不多,但是多个模板之间没有关系,每个模板只是当 前状态的压缩存储,因此也不利于各个模板之间的切换。

【发明内容】

[0004]本发明的目的在于提供一种用于获得虚拟机的模板的方法和装置。
[0005]根据本发明的一个方面,提供一种用于获得虚拟机的模板的方法,其中,所述虚拟 机对应一个模板组,所述模板组包括至少一个分别用于生成不同状态的虚拟机的模板,并 且,各个模板与该组的至少一个其他模板具有依赖关系,所述方法包括以下步骤:
[0006]a确定所述虚拟机所依据的第一模板;
[0007]b获取当前状态的所述虚拟机相对于所述第一模板的增量数据信息;
[0008]c根据相对于所述第一模板的所述增量数据信息,生成与所述虚拟机的所述当前 状态相对应的第二模板。
[0009]根据本发明的一个方面,提供一种用于获得虚拟机的模板的模板获取装置,其中, 所述虚拟机对应一个模板组,所述模板组包括至少一个分别用于生成不同状态的虚拟机的 模板,并且,各个模板与该组的至少一个其他模板具有依赖关系,所述模板获取装置包括:
[0010]第一确定装置,用于确定所述虚拟机所依据的第一模板;
[0011]第一获取装置,用于获取当前状态的所述虚拟机相对于所述第一模板的增量数据 信息;
[0012]生成装置,用于根据相对于所述第一模板的所述增量数据信息,生成与所述虚拟 机的所述当前状态相对应的第二模板。
[0013]本发明的优点在于,通过建立相互之间具有依赖关系的多个模板,使得用户可方 便的从一个模板切换至另一个模板,并且,由于模板之间的依赖关系,使得每个模板仅需保 存自身的增量数据即可,极大的减少了模板的存储空间。
【专利附图】

【附图说明】
[0014]通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它 特征、目的和优点将会变得更明显:
[0015]图1为根据本发明的一个方面的用于获得虚拟机的模板的方法流程图;[0016]图2为根据本发明的一个方面的用于获得虚拟机的模板的模板获取装置的结构 示意图;
图3示意出了根据本发明的一个示例的模板组的树状拓扑结构图;
图4示意出了根据本发明的一个示例的更新后的模板组的树状拓扑结构图;
[0017]附图中相同或相似的附图标记代表相同或相似的部件。
【具体实施方式】
[0018]下面结合附图对本发明作进一步详细描述。
[0019]图1示意出了根据本发明的一种用于获得虚拟机的模板的方法流程图。其中,所 述虚拟机对应一个模板组,所述模板组包括至少一个分别用于生成不同状态的虚拟机的模 板,并且,各个模板与该组的至少一个其他模板具有依赖关系。
[0020]其中,所述不同状态分别对应于不同时间点下的虚拟机。其中,一个模板依赖于另 一个模板的依赖关系表示:该一个模板可基于对该另一个模板进行一定数据操作后获得。
[0021]优选地,所述各个模板与该组的至少一个其他模板具有依赖关系包括各个模板相 对于该组的所述至少一个其他模板的增量数据信息。
[0022]更优选地,所述模板组采用树状拓扑结构来记录各个模板之间的依赖关系,其中, 被依赖的模板为父节点,依赖于该模板的一个或多个其他模板均为该父节点的子节点。
[0023]其中,根据本发明的方法通过计算机设备实现。优选地,根据本发明的所述虚拟 机与其所对应的模板组分别位于不同的计算机设备,并且该两个计算机设备之间可进行通f目。
[0024]所述计算机设备包括一种能够按照事先设定或存储的指令,自动进行数值计算和 /或信息处理的电子设备,其硬件包括但不限于微处理器、专用集成电路(ASIC)、可编程门 阵列(FPGA)、数字处理器(DSP)、嵌入式设备等。所述计算机设备包括网络设备和/或用户 设备。其中,所述用户设备包括但不限于任何一种可与用户通过键盘、鼠标、遥控器、触摸 板、或声控设备等方式进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、 PDA、游戏机、或IPTV等。其中,所述用户设备所处的网络包括但不限于互联网、广域网、城 域网、局域网、VPN网络等。
[0025]需要说明的是,所述计算机设备以及网络仅为举例,其他现有的或今后可能出现 的用户设备以及网络如可适用于本发明,也应包含在本发明保护范围以内,并以引用方式 包含于此。
[0026]参照图1,根据本发明的方法包括步骤S1、步骤S2和步骤S3。
[0027]在步骤SI中,计算机设备确定所述虚拟机所依据的第一模板。
[0028]I)计算机设备先确定待建立的虚拟机对应的模板组;由所述模板组中选择一个 模板,以生成与该模板对应的虚拟机;以将所选择的模板作为第一模板。
[0029]具体地,计算机设备基于待建立虚拟机的特征信息,确定与待建立虚拟机对应的 模板组。
[0030]其中,所述特征信息包括以下至少任一项:
[0031]i)待建立虚拟机的功能,例如,虚拟操作系统,虚拟游戏系统等;
[0032]ii)待建立虚拟机的属性信息,例如,虚拟机所需的存储空间大小,虚拟机所需的硬件设备的配置等;
[0033]iii)待建立虚拟机对应的用户信息,例如,用户标识信息等。
[0034]例如,计算机设备可基于待建立虚拟机所采用的操作系统,与多个模板组对应的 操作系统进行比较,以确定与待建立虚拟机对应的模板组等。
[0035]其中,当模板组存储于可与计算机设备通过网络进行通信的另一设备时,计算机 设备可通过向该设备发送包含特征信息的相关信息,并接收该设备所反馈的与该特征信息 相对应的模板组,以确定与待建立虚拟机对应的模板组。
[0036]其中,由于本领域技术人员可根据实际情况和需求,确定设备间的通信的具体方 式,故在此不再赘述。
[0037]2)在至少已执行一次步骤SI至步骤S3的操作之后,计算机设备将前一次执行步 骤S3所获得的第二模板作为新的所述虚拟机所依据的第一模板,以继续执行步骤S2与步 骤S3。
[0038]3)计算机设备将基于数据回滚操作所恢复至的目标模板作为新的所述虚拟机所 依据的第一模板。具体地将在后续步骤S6中予以详述,此处不再赘述。
[0039]根据本发明的第一示例,计算机设备中的待建立虚拟机的特征信息包括采用 Linux系统,与该计算机设备可进行通信的另一设备中保存了三个模板组MG1、MG2以及 MG3,则计算机设备将该待建立虚拟机的特征信息发送至该另一设备,并通过与该另一设备 的通信,确定待建立虚拟机对应的模板组为MG1。其中,模板组MGl采用如图3所示的树状 拓扑结构来记录各个模板之间的依赖关系,其中各个节点表示一个模板,箭头表示依赖关 系,例如,模板MO指向模板M1,表示模板Ml依赖于模板MO。计算机设备根据用户的选择操 作,确定其所选择的模板为如图3所示的模板组中的模板M7,则计算机设备将该模板M7应 用于候选设备中以生成与该模板M7对应状态下的虚拟机,并将模板M7作为第一模板。
[0040]接着,在步骤S2中,计算机设备获取当前状态的所述虚拟机相对于所述第一模板 的增量数据信息。
[0041]优选地,当满足预定触发条件时,计算机设备获取当前状态的虚拟机相对于第一 模板的增量数据信息。
[0042]其中,所述预定触发条件包括以下任一项:
[0043]I)接收到用户的生成模板的指令时;
[0044]2)满足预定时间条件时,例如,满足预定时间周期条件时等。
[0045]3)检测到预定事件时,例如,检测到用户执行了某一特定操作时等。
[0046]继续通过对前述第一示例进行说明。用户对所生成的虚拟机执行一定的数据操作 后,指示为当前状态下的虚拟机生成新的模板,则当计算机设备接收到该用户的指示后,获 取当前状态下的虚拟机中的相对于模板M7的增量数据信息Datal。
[0047]接着,在步骤S3中,计算机设备根据相对于所述第一模板的所述增量数据信息, 生成与所述虚拟机的所述当前状态相对应的第二模板。
[0048]继续通过对前述第一示例进行说明。计算机设备获取到增量数据信息Datal之 后,基于该增量数据信息Datal,生成与当前状态下的虚拟机相对应的第二模板M8,并确定 模板M8依赖于模板M7。
[0049]其中,所述第二模板中包含相对于第一模板的增量数据信息。[0050]优选地,根据本发明的方法还包括步骤S4(图未示)。
[0051]在步骤S4中,计算机设备根据所述第二模板,以及所述第二模板所对应的第一模 板,来更新所述模板组。其中,所述第二模板依赖于所述第一模板。
[0052]具体地,计算机设备根据第二模板与第一模板之间的依赖关系,以及第一模板所 属模板组中各个模板对应的拓扑结构,将第二模板作为新节点,添加至该模板组对应的拓 扑结构中,以获得更新后的模板组。
[0053]继续通过对前述第一示例进行说明。参照图4,计算机设备根据模板M8相对于模 板M7的依赖关系,确定模板M8为M7的子节点,并基于该子节点来更新与模板组MGl对应 的树状拓扑关系,以获得如图4所示的更新后的模板组MG1。
[0054]根据本发明的一个优选实施例,根据本发明的方法还包括步骤S5(图未示)和步 骤S6(图未示)。
[0055]在步骤S5中,计算机设备获取用户指定的目标模板,所述目标模板为所述虚拟机 所对应的模板组中的模板。
[0056]具体地,计算机设备根据用户的操作,确定其所指定的目标模板。
[0057]接着,在步骤S6中,计算机设备根据虚拟机当前状态点所对应的第二模板,以及 所述虚拟机所对应的模板组中各个模板之间的依赖关系,执行数据回滚操作,以使所述虚 拟机恢复至所述目标模板。
[0058]优选地,计算机设备先根据虚拟机当前状态点所对应的第二模板,以及所述虚拟 机所对应的模板组中各个模板之间的依赖关系,确定所述模板组中,从所述第二模板到达 所述目标模板的模板路径,所述模板路径包括至少两个彼此相邻的模板;接着,计算机设备 基于所述模板路径中各个相邻模板之间的增量数据信息,执行数据回滚操作,以使所述虚 拟机恢复至所述目标模板。
[0059]继续通过对前述第一示例进行说明。虚拟机所依据的第一模板为模板M7,且计算 机设备在步骤S5中接收到用户所指定的目标模板为M5,则计算机设备基于如图4所示的各 个模板之间的依赖关系,确定从模板M7到达目标模板M5的模板路径包括M7 — MO — M5,则 计算机设备先基于当前状态的虚拟机相对于第一模板M7的增量数据信息Datal,回滚至第 一模板M7,接着,基于第一模板M7相对于模板MO的增量数据信息,回滚至模板MO,相似地, 再由模板MO执行数据回滚,使虚拟机恢复至模板M5。
[0060]优选地,计算机设备将回滚后的目标模板作为新的虚拟机所依据的第一模板。
[0061]其中,本领域技术人员应当能够根据实际情况和需求,确定基于相邻节点的模板 之间的增量数据信息,来执行数据回滚操作的具体实现方式,在此不再赘述。
[0062]根据本发明的方法,由于各个模板中仅需存储增量数据以及其所相关的模板的标 识信息,因此极大的减少了模板所需的存储空间。并且,由于获知了各个模板之间的依赖关 系,使得用户能够方便从一个模板切换至另一个模板,提高了用户的操作效率。
[0063]图2示意出了根据本发明的一种用于获得虚拟机的模板的模板获取装置的结构 示意图。其中,所述虚拟机对应一个模板组,所述模板组包括至少一个分别用于生成不同状 态的虚拟机的模板,并且,各个模板与该组的至少一个其他模板具有依赖关系。
[0064]其中,所述不同状态分别对应于不同时间点下的虚拟机。其中,一个模板依赖于另 一个模板的依赖关系表示:该一个模板可基于对该另一个模板进行一定数据操作后获得。[0065]优选地,所述各个模板与该组的至少一个其他模板具有依赖关系包括各个模板相 对于该组的所述至少一个其他模板的增量数据信息。
[0066]更优选地,所述模板组采用树状拓扑结构来记录各个模板之间的依赖关系,其中, 被依赖的模板为父节点,依赖于该模板的一个或多个其他模板均为该父节点的子节点。
[0067]优选地,根据本发明的所述虚拟机与其所对应的模板组分别位于不同的计算机设 备,并且该两个计算机设备之间可进行通信。
[0068]参照图2,根据本发明的模板获取装置包括第一确定装置1、第一获取装置2和第 一生成装置3。
[0069]第一确定装置I确定所述虚拟机所依据的第一模板。
[0070]I)模板获取装置所包含的第三确定装置(图未示)先确定待建立的虚拟机对应的 模板组;接着,模板获取装置所包含的的第二生成装置(图未示)由所述模板组中选择一 个模板,以生成与该模板对应的虚拟机;接着,模板获取装置所包含的第一确定装置I将所 选择的模板作为第一模板。
[0071]具体地,第三确定装置基于待建立虚拟机的特征信息,确定与待建立虚拟机对应 的模板组。
[0072]其中,所述特征信息包括以下至少任一项:
[0073]i)待建立虚拟机的功能,例如,虚拟操作系统,虚拟游戏系统等;
[0074]ii)待建立虚拟机的属性信息,例如,虚拟机所需的存储空间大小,虚拟机所需的 硬件设备的配置等;
[0075]iii)待建立虚拟机对应的用户信息,例如,用户标识信息等。
[0076]例如,第三确定装置可基于待建立虚拟机所采用的操作系统,与多个模板组对应 的操作系统进行比较,以确定与待建立虚拟机对应的模板组等。
[0077]其中,当模板组存储于可与计算机设备通过网络进行通信的另一设备时,第三确 定装置可通过向该设备发送包含特征信息的相关信息,并接收该设备所反馈的与该特征信 息相对应的模板组,以确定与待建立虚拟机对应的模板组。
[0078]其中,由于本领域技术人员可根据实际情况和需求,确定设备间的通信的具体方 式,故在此不再赘述。
[0079]2)在第一确定装置1、第一获取装置2以及第一生成装置3至少已执行一次操作 之后,第一确定装置I将第一生成装置3前一次执行操作所获得的第二模板作为新的所述 虚拟机所依据的第一模板,以使第一获取装置2以及第一生成装置3继续执行操作。
[0080]3)第一确定装置I将基于数据回滚操作所恢复至的目标模板作为新的所述虚拟 机所依据的第一模板。具体可参照后续对于数据回滚装置(图未示)的说明,此处不再赘 述。
[0081]根据本发明的第一示例,计算机设备中的待建立虚拟机的特征信息包括采用 Linux系统,与该计算机设备可进行通信的另一设备中保存了三个模板组MG1、MG2以及 MG3,则第三确定装置将该待建立虚拟机的特征信息发送至该另一设备,并通过与该另一设 备的通信,确定待建立虚拟机对应的模板组为MG1。其中,模板组MGl采用如图3所示的树 状拓扑结构来记录各个模板之间的依赖关系,其中各个节点表示一个模板,箭头表示依赖 关系,例如,模板MO指向模板Ml,表不模板Ml依赖于模板MO。第二生成装置根据用户的选择操作,确定其所选择的模板为如图3所示的模板组中的模板M7,则第二生成装置将该模 板M7应用于候选设备中以生成与该模板M7对应状态下的虚拟机。接着,第一确定装置I 将模板M7作为第一模板。
[0082]接着,第一获取装置2获取当前状态的所述虚拟机相对于所述第一模板的增量数 据信息。
[0083]优选地,当满足预定触发条件时,第一获取装置2获取当前状态的虚拟机相对于 第一模板的增量数据信息。
[0084]其中,所述预定触发条件包括以下任一项:
[0085]I)接收到用户的生成模板的指令时;
[0086]2)满足预定时间条件时,例如,满足预定时间周期条件时等。
[0087]3)检测到预定事件时,例如,检测到用户执行了某一特定操作时等。
[0088]继续通过对前述第一示例进行说明。用户对所生成的虚拟机执行一定的数据操作 后,指示为当前状态下的虚拟机生成新的模板,则当第一获取装置2接收到该用户的指示 后,获取当前状态下的虚拟机中的相对于模板M7的增量数据信息Datal。
[0089]接着,第一生成装置3根据相对于所述第一模板的所述增量数据信息,生成与所 述虚拟机的所述当前状态相对应的第二模板。
[0090]继续通过对前述第一示例进行说明。第一获取装置2获取到增量数据信息Datal 之后,第一生成装置3基于该增量数据信息Datal,生成与当前状态下的虚拟机相对应的第 二模板M8,并确定模板M8依赖于模板M7。
[0091]其中,所述第二模板中包含相对于第一模板的增量数据信息。
[0092]优选地,根据本发明的模板获取装置还包括更新装置(图未示)。
[0093]更新装置根据所述第二模板,以及所述第二模板所对应的第一模板,来更新所述 模板组。其中,所述第二模板依赖于所述第一模板。
[0094]具体地,更新装置根据第二模板与第一模板之间的依赖关系,以及第一模板所属 模板组中各个模板对应的拓扑结构,将第二模板作为新节点,添加至该模板组对应的拓扑 结构中,以获得更新后的模板组。
[0095]继续通过对前述第一示例进行说明。参照图4,更新装置根据模板M8相对于模板 M7的依赖关系,确定模板M8为M7的子节点,并基于该子节点来更新与模板组MGl对应的树 状拓扑关系,以获得如图4所示的更新后的模板组MG1。
[0096]根据本发明的一个优选实施例,根据本发明的模板获取装置还包括第二获取装置 (图未示)和数据回滚装置(图未示)。
[0097]第二获取装置获取用户指定的目标模板,所述目标模板为所述虚拟机所对应的模 板组中的模板。
[0098]具体地,第二获取装置根据用户的操作,确定其所指定的目标模板。
[0099]接着,数据回滚装置根据虚拟机当前状态点所对应的第二模板,以及所述虚拟机 所对应的模板组中各个模板之间的依赖关系,执行数据回滚操作,以使所述虚拟机恢复至 所述目标模板。
[0100]优选地,数据回滚装置中的第二确定装置(图未示)先根据虚拟机当前状态点所 对应的第二模板,以及所述虚拟机所对应的模板组中各个模板之间的依赖关系,确定所述模板组中,从所述第二模板到达所述目标模板的模板路径,所述模板路径包括至少两个彼 此相邻的模板;接着,数据回滚装置中的子回滚装置(图未示)基于所述模板路径中各个相 邻模板之间的增量数据信息,执行数据回滚操作,以使所述虚拟机恢复至所述目标模板。
[0101]继续通过对前述第一示例进行说明。虚拟机所依据的第一模板为模板M7,第二获 取装置接收到用户所指定的目标模板为M5,则第二确定装置基于如图4所示的各个模板之 间的依赖关系,确定从模板M7到达目标模板M5的模板路径包括M7 — MO — M5,则子回滚 装置先基于当前状态的虚拟机相对于第一模板M7的增量数据信息Datal,回滚至第一模板 M7,接着,基于第一模板M7相对于模板MO的增量数据信息,回滚至模板MO,相似地,再由模 板MO执行数据回滚,使虚拟机回滚至模板M5。
[0102]优选地,模板获取装置将回滚后的目标模板作为新的虚拟机所依据的第一模板。
[0103]其中,本领域技术人员应当能够根据实际情况和需求,确定基于相邻节点的模板 之间的增量数据信息,来执行数据回滚操作的具体实现方式,在此不再赘述。
[0104]根据本发明的方案,由于各个模板中仅需存储增量数据以及其所相关的模板的标 识信息,因此极大的减少了模板所需的存储空间。并且,由于获知了各个模板之间的依赖关 系,使得用户能够方便从一个模板切换至另一个模板,提高了用户的操作效率。
[0105]本发明的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本 发明的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM 存储器,磁或光驱动器或软磁盘及类似设备。另外,本发明的一些步骤或功能可采用硬件来 实现,例如,作为与处理器配合从而执行各个功能或步骤的电路。
[0106]另外,本发明的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被 计算机执行时,通过该计算机的操作,可以调用或提供根据本发明的方法和/或技术方案。 而调用本发明的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通 过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行 的计算机设备的工作存储器中。在此,根据本发明的一个实施例包括一个装置,该装置包括 用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序 指令被该处理器执行时,触发该装置运行基于前述根据本发明的多个实施例的方法和/或 技术方案。
[0107]对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在 不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论 从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权 利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有 变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此 夕卜,显然“包括” 一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多 个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来 表示名称,而并不表示任何特定的顺序。
【权利要求】
1.一种用于获得虚拟机的模板的方法,其中,所述虚拟机对应一个模板组,所述模板组包括至少一个分别用于生成不同状态的虚拟机的模板,并且,各个模板与该组的至少一个其他模板具有依赖关系,所述方法包括以下步骤:a确定所述虚拟机所依据的第一模板;b获取当前状态的所述虚拟机相对于所述第一模板的增量数据信息; c根据相对于所述第一模板的所述增量数据信息,生成与所述虚拟机的所述当前状态相对应的第二模板。
2.根据权利要求1所述的方法,其中,所述方法还包括以下步骤:-根据所述第二模板,以及所述第二模板所对应的第一模板,来更新所述模板组,其中, 所述第二模板依赖于所述第一模板。
3.根据权利要求2所述的方法,其中,所述步骤a包括以下步骤:-将所述第二模板作为新的所述虚拟机所依据的第一模板。
4.根据权利要求1至3中任一项所述的方法,其中,所述方法还包括以下步骤: m获取用户指定的目标模板,所述目标模板为所述虚拟机所对应的模板组中的模板; n根据虚拟机所依据的第一模板,以及所述虚拟机所对应的模板组中各个模板之间的依赖关系,执行数据回滚操作,以使所述虚拟机恢复至所述目标模板。
5.根据权利要求4所述的方法,其中,所述步骤n包括以下步骤:-根据虚拟机当前状态点所对应的第二模板,以及所述虚拟机所对应的模板组中各个模板之间的依赖关系,确定所述模板组中,从所述第二模板到达所述目标模板的模板路径, 所述模板路径包括至少两个彼此相邻的模板;-基于所述模板路径中各个相邻模板之间的增量数据信息,执行数据回滚操作,以使所述虚拟机恢复至所述目标模板。
6.根据权利要求1至5中任一项所述的方法,其中,所述模板组采用树状拓扑结构来记录各个模板之间的依赖关系,其中,被依赖的模板为父节点,依赖于该模板的一个或多个其他模板均为该父节点的子节点。
7.根据权利要求1至6中任一项所述的方法,其中,所述方法还包括以下步骤:-确定待建立的虚拟机对应的模板组;-由所述模板组中选择一个模板,以生成与该模板对应的虚拟机。
8.根据权利要求1至7中任一项所述的方法,其中,所述各个模板与该组的至少一个其他模板具有依赖关系包括:各个模板相对于该组的所述至少一个其他模板的增量数据信肩、O
9.根据权利要求1至8中任一项所述的方法,其中,所述虚拟机与其所对应的模板组分别位于不同的设备,并且该两个设备之间可进行通信。
10.一种用于获得虚拟机的模板的模板获取装置,其中,所述虚拟机对应一个模板组, 所述模板组包括至少一个分别用于生成不同状态的虚拟机的模板,并且,各个模板与该组的至少一个其他模板具有依赖关系,所述模板获取装置包括:第一确定装置,用于确定所述虚拟机所依据的第一模板;第一获取装置,用于获取当前状态的所述虚拟机相对于所述第一模板的增量数据信息;第一生成装置,用于根据相对于所述第一模板的所述增量数据信息,生成与所述虚拟机的所述当前状态相对应的第二模板。
11.根据权利要求10所述的模板获取装置,其中,所述模板获取装置还包括:更新装置,用于根据所述第二模板,以及所述第二模板所对应的第一模板,来更新所述模板组,其中,所述第二模板依赖于所述第一模板。
12.根据权利要求11所述的模板获取装置,其中,所述第一确定装置用于:-将所述第二模板作为新的所述虚拟机所依据的第一模板。
13.根据权利要求10至12中任一项所述的模板获取装置,其中,所述模板获取装置还包括:第二获取装置,用于获取用户指定的目标模板,所述目标模板为所述虚拟机所对应的模板组中的模板;数据回滚装置,用于根据虚拟机所依据的第一模板,以及所述虚拟机所对应的模板组中各个模板之间的依赖关系,执行数据回滚操作,以使所述虚拟机恢复至所述目标模板。
14.根据权利要求13所述的模板获取装置,其中,所述数据回滚装置包括:第二确定装置,用于根据虚拟机当前状态点所对应的第二模板,以及所述虚拟机所对应的模板组中各个模板之间的依赖关系,确定所述模板组中,从所述第二模板到达所述目标模板的模板路径,所述模板路径包括至少两个彼此相邻的模板;子回滚装置,用于基于所述模板路径中各个相邻模板之间的增量数据信息,执行数据回滚操作,以使所述虚拟机恢复至所述目标模板。
15.根据权利要求10至14中任一项所述的模板获取装置,其中,所述模板组采用树状拓扑结构来记录各个模板之间的依赖关系,其中,被依赖的模板为父节点,依赖于该模板的一个或多个其他模板均为该父节点的子节点。
16.根据权利要求10至15中任一项所述的模板获取装置,其中,所述模板获取装置还包括:.第三确定装置,用于确定待建立的虚拟机对应的模板组;第二生成装置,用于由所述模板组中选择一个模板,以生成与该模板对应的虚拟机。
17.根据权利要求10至16中任一项所述的模板获取装置,其中,所述各个模板与该组的至少一个其他模板具有依赖关系包括:各个模板相对于该组的所述至少一个其他模板的增量数据信息。
18.根据权利要求10至17中任一项所述的模板获取装置,其中,所述虚拟机与其所对应的模板组可分别位于不同的设备中,并且该两个设备之间可进行通信。
【文档编号】G06F9/455GK103440157SQ201310256424
【公开日】2013年12月11日 申请日期:2013年6月25日 优先权日:2013年6月25日
【发明者】眭聚磊, 宋伟, 邱雨 申请人:百度在线网络技术(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1