专利名称:恢复资源环境的方法及设备的制作方法
技术领域:
本发明涉及网络通信技术领域,尤其涉及一种恢复资源环境的方法及设备。
背景技术:
云计算的核心思想是将大量用网络连接的计算资源统一管理和调度,构成计算资源池。云服务能够基于云计算向用户提供按需服务。提供资源的网络被称为“云”,“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取、按需使用、随时扩展,按使用付费。在云服务的基础设施层,也称为I(Infrastructure)层,用户会根据业务需要申请不同类型的资源,将这些资源组成一个系统,以便完成特定的任务。申请资源的方式,可以是用户主动申请,也可以是云服务器(Cloud Service Provider)根据用户业务量的增加自动分配或释放资源,其中的云服务器是指I层资源的系统。对申请的资源,例如虚拟机、存储空间、网络资源等,用户需要按照业务需求,将这些资源按照一定的拓扑结构组合到一起。云服务器可以通过资源模板的方式为用户提供一些常见的资源拓扑,用户根据资源模板申请资源时,云服务器将自动为资源生成资源模板所指定的拓扑。资源之间的拓扑结构以及资源的运行状态,例如运行(Running)、暂停(Suspended)、停止(Stopped)等,统称为用户的资源环境。用户可以通过申请新资源、释放已申请的资源等方式改变资源之间的拓扑结构;另外,云服务器也可以根据业务流量的变化,动态地为业务增加或者释放资源,从而改变资源之间的拓扑结构。伴随着资源的申请和释放,资源的运行状态也将发生相应的变化,也就是用户的资源环境在不断变化。当用户的资源环境变化后,用户可能希望恢复资源环境。现有技术中,用户向云服务器发送资源操作请求后,会创建与该操作请求对应的任务(Job)实例,用户通过访问该Job实例可以获知资源操作的执行情况。当该Job实例具有可取消的性质时,如果用户希望取消操作请求,则可以对Job实例执行取消操作,云服务器接收到用户发送的取消操作命令后,取消Job实例对应的操作。但是,现有技术中只是对操作的取消,并不能对资源环境的恢复。例如,取消操作时如果改变了操作前的资源环境,则至多只能保证资源环境不再继续改变而并不能恢复到操作前的资源环境。
发明内容
本发明提供一种云计算中恢复资源环境的方法及设备,实现资源环境的可恢复性。—方面,本发明提供了一种恢复资源环境的方法,包括:云服务器接收资源操作请求;云服务器根据所述资源操作请求确定需要对所述资源操作请求针对的资源环境进行备份;云服务器在执行所述资源操作请求指示的操作之前,对所述资源操作请求针对的资源环境进行备份;云服务器接收用于恢复资源环境的消息,并根据备份的资源环境以及所述用于恢复资源环境的消息恢复备份的资源环境。
优选的,所述云服务器根据所述资源操作请求确定需要对所述资源操作请求针对的资源环境进行备份具体包括:云服务器根据所述资源操作请求中携带的表明需要对资源环境进行备份的指示信息,确定所述资源操作请求针对的资源环境需要备份;或者,云服务器根据预先配置的备份策略以及所述资源操作请求确定所述资源操作请求针对的资源环境需要备份。优选的,所述云服务器在对所述资源环境进行备份之后,执行所述资源操作请求指示的操作并创建任务Job实例,并向用户设备发送资源操作请求的响应消息,以便于所述用户设备根据所述响应消息确定所述云服务器对所述资源操作请求针对的资源环境备份成功。优选的,所述Job实例为第一 Job实例,所述第一 Job实例中包括用于表明备份是否成功的属性,所述资源操作请求的响应消息中携带所述第一 Job实例的URI,以便所述用户设备根据所述第一 Job实例的URI读取所述第一 Job实例后,根据所述用于表明备份是否成功的属性确定云服务器备份是否成功;或者,所述Job实例为第二 Job实例,所述第二Job实例中不包括用于表明备份是否成功的属性,所述资源操作请求的响应消息中携带所述第二 Job实例的URI,以便于所述用户设备根据所述第二 Job实例的URI读取所述第二Job实例,确定第二 Job实例中不包括表明针对的资源环境的备份是否成功的属性,则确定所述云服务器备份成功。优选的,所述对所述资源操作请求针对的资源环境进行备份,具体包括:根据所述资源操作请求针对的目标资源创建与目标资源对应的资源模板,并在所述目标资源对应的资源模板的属性内存储目标资源对应的属性的值;或依次为所述目标资源或所述目标资源包含的各层资源的每个资源创建对应的资源模板,在创建的资源模板的属性内存储与所述资源模板对应的资源对应的属性的值,并将所述资源模板及为与所述资源模板对应的资源的上一层资源创建的资源模板关联。优选的,所述接收用于恢复资源环境的消息,并根据备份的资源环境以及所述用于恢复资源环境的消息恢复备份的资源环境,具体包括:接收取消Job的请求,所述取消Job的请求中携带要取消的Job实例的URI ;根据所述取消Job的请求中携带的要取消的Job实例的URI取消所述资源操作请求指示的操作;并根据所述要取消的Job实例的属性中包含的目标资源的URI确定目标资源以及确定目标资源对应的资源模板,根据所述目标资源对应的资源模板创建实例;或者,接收携带要获取目标资源对应的资源模板的信息的浏览请求,根据所述浏览请求向所述用户设备发送可用的资源模板,并接收所述用户设备发送的恢复操作请求,所述恢复操作请求中携带要恢复的资源模板的信息,并根据所述要恢复的资源模板创建实例。另一方面,本发明提供了一种恢复资源环境的设备,包括:接收模块,用于接收资源操作请求;处理模块,用于根据所述资源操作请求确定需要对所述资源操作请求针对的资源环境进行备份;存储模块,用于在执行所述资源操作请求指示的操作之前,对所述资源操作请求针对的资源环境进行备份;恢复模块,用于接收用于恢复资源环境的消息,以及根据备份的资源环境以及所述用于恢复资源环境的消息恢复备份的资源环境。优选的,所述处理模块具体用于:根据所述资源操作请求中携带的表明需要对资源环境进行备份的指示信息,确定所述资源操作请求针对的资源环境需要备份;或者,云服务器根据预先配置的备份策略以及所述资源操作请求确定所述资源操作请求针对的资源环境需要备份。优选的,所述处理模块还用于:在对所述资源环境进行备份之后,执行所述资源操作请求指示的操作并创建任务Job实例,并向用户设备发送资源操作请求的响应消息,以便于所述用户设备根据所述响应消息确定所述云服务器对所述资源操作请求针对的资源环境备份成功。优选的,所述Job实例为第一 Job实例,所述第一 Job实例中包括用于表明备份是否成功的属性,所述资源操作请求的响应消息中携带所述第一 Job实例的URI,以便所述用户设备根据所述第一 Job实例的URI读取所述第一 Job实例后,根据所述用于表明备份是否成功的属性确定云服务器备份是否成功;或者,所述Job实例为第二 Job实例,所述第二Job实例中不包括用于表明备份是否成功的属性,所述资源操作请求的响应消息中携带所述第二 Job实例的URI,以便于所述用户设备根据所述第二 Job实例的URI读取所述第二Job实例,确定第二 Job实例中不包括表明针对的资源环境的备份是否成功的属性,则确定所述云服务器备份成功。优选的,所述存储模块具体用于:根据所述资源操作请求针对的目标资源创建与目标资源对应的资源模板,并在所述目标资源对应的资源模板的属性内存储目标资源对应的属性的值;依次为所述目标资源或所述目标资源包含的各层资源的每个资源创建对应的资源模板,在创建的资源模板的属性内存储与所述资源模板对应的资源对应的属性的值,并将所述资源模板及为与所述资源模板对应的资源的上一层资源创建的资源模板关联。优选的,所述恢复模块具体用于:接收取消Job的请求,所述取消Job的请求中携带要取消的Job实例的URI ;根据所述取消Job的请求中携带的要取消的Job实例的URI取消所述资源操作请求指示的操作;并根据所述要取消的Job实例的属性中包含的目标资源的URI确定目标资源以及确定目标资源对应的资源模板,根据所述目标资源对应的资源模板创建实例;或,所述恢复模块具体用于:接收携带要获取目标资源对应的资源模板的信息的浏览请求,根据所述浏览请求向用户设备发送可用的资源模板,并接收用户设备发送的恢复操作请求,所述恢复操作请求中携带要恢复的资源模板的信息,并根据所述要恢复的资源模板创建实例。再一方面,本发明提供了一种恢复资源环境的方法,包括:接收云服务器发送的资源操作请求的响应消息;根据所述资源操作请求的响应消息确定所述云服务器对所述资源操作请求针对的资源环境备份成功,所述响应消息为所述云服务器对所述资源操作请求针对的资源环境进行备份后发送的;向所述云服务器发送用于恢复资源环境的消息,使得所述云服务器根据备份的资源环境以及所述用于恢复资源环境的消息恢复备份的资源环境。优选的,该方法进一步包括:向云服务器发送所述资源操作请求,所述资源操作请求中携带表明需要对所述资源操作请求针对的资源环境进行备份的指示信息,以便所述云服务器根据所述指示信息对所述资源操作请求针对的资源环境进行备份。优选的,所述资源操作请求的响应消息中携带任务Job实例的URI,所述根据所述响应消息确定所述云服务器对所述资源操作请求针对的资源环境备份成功具体包括:所述Job实例为第一 Job实例,所述第一 Job实例中包括表明针对的资源环境的备份是否成功的属性,根据所述第一 Job实例的URI读取所述第一 Job实例,并根据所述表明针对的资源环境的备份是否成功的属性确定云服务器备份成功;或者,所述Job实例为第二 Job实例,所述第二 Job实例中不包括表明针对的资源环境的备份是否成功的属性,根据所述第二 Job实例的URI读取所述第二 Job实例,确定第二 Job实例中不包括表明针对的资源环境的备份是否成功的属性,则确定所述云服务器备份成功。优选的,所述向所述云服务器发送用于恢复资源环境的消息,包括:根据所述Job实例的URI访问所述Job实例,根据所述Job实例确定所述资源操作请求指示的操作正在执行,向所述云服务器发送取消Job的请求,所述取消Job的请求中携带所述Job实例的URI ;或者,根据所述Job实例的URI访问所述Job实例,根据所述Job实例确定所述资源操作请求指示的操作已执行完毕,向所述云服务器发送携带要获取的目标资源对应的资源模板的信息的浏览请求,并接收所述云服务器根据所述浏览请求发送的可用的资源模板,从所述可用的资源模板中选择要恢复的资源模板,向所述云服务器发送恢复操作请求,所述恢复操作请求中携带所述要恢复的资源模板的URI。优选的,所述资源操作请求的响应消息中携带Job实例的URI ;所述向所述云服务器发送用于恢复资源环境的消息,包括:根据所述Job实例的URI访问所述Job实例,根据所述Job实例确定所述资源操作请求指示的操作正在执行,向所述云服务器发送取消Job的请求,所述取消Job的请求中携带所述Job实例的URI ;或者,根据所述Job实例的URI访问所述Job实例,根据所述Job实例确定所述资源操作请求指示的操作已执行完毕,向所述云服务器发送携带要获取目标资源对应的资源模板的信息的浏览请求,并接收所述云服务器根据所述浏览请求发送的可用的资源模板,从所述可用的资源模板中选择要恢复的资源模板,向所述云服务器发送恢复操作请求,所述恢复操作请求中携带所述要恢复的资源模板的URI。一方面,本发明提供了一种恢复资源环境的设备,包括:接收模块,用于接收云服务器发送的资源操作请求的响应消息;处理模块,用于根据所述资源操作请求的响应消息确定所述云服务器对所述资源操作请求针对的资源环境备份成功,所述响应消息为所述云服务器对所述资源操作请求针对的资源环境进行备份后发送的;发送模块,用于向所述云服务器发送用于恢复资源环境的消息,使得所述云服务器根据备份的资源环境以及所述用于恢复资源环境的消息恢复备份的资源环境。优选的,所述发送模块还用于:向云服务器发送所述资源操作请求,所述资源操作请求中携带表明需要对所述资源操作请求针对的资源环境进行备份的指示信息,以便所述云服务器根据所述指示信息对所述资源操作请求针对的资源环境进行备份。优选的,所述资源操作请求的响应消息中携带任务Job实例的URI,所述处理模块具体用于:所述Job实例为第一 Job实例,所述第一 Job实例中包括表明针对的资源环境的备份是否成功的属性,根据所述第一 Job实例的URI读取所述第一 Job实例,并根据所述表明针对的资源环境的备份是否成功的属性确定云服务器备份成功;或,所述Job实例为第二 Job实例,所述第二 Job实例中不包括表明针对的资源环境的备份是否成功的属性,根据所述第二 Job实例的URI读取所述第二 Job实例,确定第二 Job实例中不包括表明针对的资源环境的备份是否成功的属性,则确定所述云服务器备份成功。
优选的,所述发送模块具体用于:根据所述Job实例的URI访问所述Job实例,根据所述Job实例确定所述资源操作请求指示的操作正在执行,向所述云服务器发送取消Job的请求,所述取消Job的请求中携带所述Job实例的URI ;或者,根据所述Job实例的URI访问所述Job实例,根据所述Job实例确定所述资源操作请求指示的操作已执行完毕,向所述云服务器发送携带要获取的目标资源对应的资源模板的信息的浏览请求,并接收所述云服务器根据所述浏览请求发送的可用的资源模板,从所述可用的资源模板中选择要恢复的资源模板,向所述云服务器发送恢复操作请求,所述恢复操作请求中携带所述要恢复的资源模板的URI。优选的,所述资源操作请求的响应消息中携带Job实例的URI ;所述发送模块具体用于:根据所述Job实例的URI访问所述Job实例,根据所述Job实例确定所述资源操作请求指示的操作正在执行,向所述云服务器发送取消Job的请求,所述取消Job的请求中携带所述Job实例的URI ;或者,根据所述Job实例的URI访问所述Job实例,根据所述Job实例确定所述资源操作请求指示的操作已执行完毕,向所述云服务器发送携带要获取目标资源对应的资源模板的信息的浏览请求,并接收所述云服务器根据所述浏览请求发送的可用的资源模板,从所述可用的资源模板中选择要恢复的资源模板,向所述云服务器发送恢复操作请求,所述恢复操作请求中携带所述要恢复的资源模板的URI。由上述技术方案可知,本发明通过在操作之前确定需要对所述资源操作请求对应的资源环境进行备份后,对该资源环境进行备份,并利用备份的资源环境恢复操作前的资源环境,从而实现资源环境的可恢复,以避免资源环境不可恢复时引起的问题。
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明恢复资源环境的方法的实施例的流程示意图;图2为本发明中的一个资源环境实例的示意图;图3为本发明中的一个资源环境被分拆的示意图;图4为本发明中恢复资源环境的一实施例的流程示意图;图5为本发明中恢复资源环境的另一实施例的流程示意图;图6为本发明恢复资源环境的方法另一实施例的流程示意图;图7为本发明恢复资源环境的方法另一实施例的流程示意图;图8为本发明恢复资源环境的方法另一实施例的流程示意图;图9为本发明恢复资源环境的设备一实施例的结构示意图;图10为本发明恢复资源环境的设备另一实施例的结构示意图;图11为本发明恢复资源环境的方法另一实施例的流程示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。云服务器通常会将资源按照不同的时段定价,例如,在工作时段,资源的价格较高,在夜晚时段,资源的价格较低;用户为了使用价格较低的资源,需要在夜晚时段申请资源,并在工作时段开始之前释放资源。由于用户的资源环境会随着要处理的数据量的变化而由云服务系统云服务器自动修改,例如数据量增加时,云服务系统云服务器自动为用户的资源环境增加用于处理数据的虚拟机数量,或者用户自行修改资源环境,当用户在工作时段到来之前释放资源之后,无法在夜晚时段到来之前迅速恢复之前所处的资源环境。为了使得云计算中的资源环境得到快速恢复,本发明给出如下实施例。图1为本发明恢复资源环境的方法的实施例的流程示意图,包括:步骤11:云服务器接收资源操作请求;其中,在云计算中,资源操作请求指示的操作可以包括:仓Il建(Create)、读取(Read)、修改(Update)和删除(Delete)。另外,云服务器可以维护不同用户的账号和密码,用户可以根据自身的账号和密码通过不同的用户设备与云服务器进行通信。步骤12:云服务器根据所述资源操作请求确定需要对所述资源操作请求针对的资源环境进行备份;其中,用户设备可以在资源操作请求中携带表明需要对资源环境进行备份的指示信息。此时,云服务器可以根据该资源操作请求中携带的表明需要对资源环境进行备份的指示信息确定需要对资源操作请求针对的资源环境进行备份。或者,云服务器中预先配置有用户是否需要对资源操作请求针对的资源环境进行备份的备份策略,并在收到资源操作请求后根据预先配置的备份策略以及资源操作请求确定所述资源操作请求针对的资源环境需要备份。此外,资源操作请求中携带针对的目标资源的URI,云服务器根据该目标资源的URI可以确定目标资源,从该目标资源包含的属性中可以确定出各资源之间的拓扑结构及其运行状态,即得到资源操作请求针对的资源环境。步骤13:云服务器在执行所述资源操作请求指示的操作之前,对所述资源操作请求针对的资源环境进行备份;DMTF(Distributed Management Task Force,分布式管理任务组)标准组织下的云管理工作组(Cloud Management Work Group, CMWG)定义了 I层的资源模型,I层资源包含三类资源:计算资源、存储资源和网络资源;在定义的I层的资源模型中,计算资源由Machine实例表示;存储资源由Volume实例表示;网络资源由Network实例表示。多个Machine实例可以组成一个System实例,并通过Network实例相互通信。为方便用户选择和创建资源实例,CMWG为每种类型的资源均定义了对应的资源模板,例如计算资源(Machine)的资源模板为MachineTemplate, 一个MachineTemplate用于描述一类Machine,其中包含虚拟机的CPU类型,内存空间大小等信息。用户对选择的MachineTemplate 执行“Create Machine”命令,即可获得一个 Machine 实例,该 Machine 实例具有MachineTemplate所描述的配置。对环境资源进行备份可以从资源操作请求的目标资源开始,逐层备份目标资源包含的资源直到最底层的资源。当然,如果目标资源为最底层的资源,则云服务器只备份该目标资源。其中,每个资源操作请求中包含一个URI,该URI指向的资源即为上述的资源操作请求的目标资源。该目标资源可以为包含计算资源组成的系统资源,也可以为计算资源或者也可以为存储资源。图2为本发明中的一个资源环境实例的示意图,在图2所示的资源环境中,一个测试系统(Test System)由三台虚拟机(VMl、VM2、VM3)组成,三台虚拟机都处于运行状态;其中,VMl有两个存储空间Volumel和Volume2,VM2有一个存储空间Volume3,VM3有一个存储空间Volume4。存储空间和虚拟机是实体资源,测试系统通过这些实体资源完成具体的测试任务。上述的VM1、VM2、VM3为计算资源,Volumel、Volume2、Volume3和Volume4为存储资源。如果对测试系统执行删除操作,如采用Delete/TestDep/TestSystem HTTP/1.1指令,此时测试系统成为删除操作的目标资源,最终测试系统将被分拆为如图3所示的情况。参见图3,测试系统由于不是实体资源,在释放之后将不再存在;三台虚拟机可以放回虚拟机资源池,也可以完全被清除;存储空间也可以放回存储空间资源池,也可以完全被清除。云服务器对资源环境进行备份的具体操作包括:根据所述资源操作请求针对的目标资源创建与目标资源对应的资源模板,并在所述目标资源对应的资源模板的属性内存储目标资源对应的属性的值;依次为所述目标资源和/或所述目标资源包含的各层资源的每个资源创建对应的资源模板,在创建的资源模板的属性内存储与所述资源模板对应的资源对应的属性的值,并将所述资源模板及为与所述资源模板对应的资源的上一层资源创建的资源模板关联。具体地,以图2所示的测试系统为例,该测试系统为上述删除操作的目标资源,该目标资源包含两层资源,分别为第一层的计算资源和第二层的存储资源,或者说目标资源的下一层资源为计算资源,计算资源的下一层为存储资源。备份操作可以包括:第一步,根据测试系统(Test System)创建一个系统模板(SystemTemplate),该系统模板的属性存储Test System对应的属性的值;该属性例如包括state,该state中用于保存该测试系统Test System的运行状态。另外,该属性还可以包括模板名称(如SystemTemplate)、描述信息等,描述信息例如为:测试系统是针对计费的测试系统、需要测试的时间为24小时等。此外,资源模板的属性之一是用于记录资源模板的URI的属性,并且资源模板的URI与对应的资源的URI相同,例如,SystemTemplate的一个属性用于记录SystemTemplate的 URI,且该 SystemTemplate 的 URI 与 Test System 的 URI 相同。第二步,为每个虚拟机(即VMl、VM2、VM3)分别创建计算资源模板(MachineTemplate),每个计算资源模板的属性存储各计算资源(即VM1、VM2、VM3)分别对应的属性的值,并将各MachineTemplate与第一步中建立的SystemTemplate关联。例如,为VMl创建MachineTemplatel,该MachineTemplatel的属性存储VMl对应的属性的值,为VM2创建MachineTemplate2,该MachineTemplate2的属性存储VM2对应的属性的值,为VM3创建MachineTemplate3,该MachineTemplate3的属性存储VM3对应的属性的值,以及将 MachineTemplatel、MachineTemplate2 和 MachineTemplate3 分别与 SystemTemplate 关联。第三步,为每个存储资源(即Volumel、Volume2> Volume3和Volume4)分别创建存储资源模板(VolumeTemplate),每个存储资源模板的属性分别存储各存储资源(即Volumel、Volume2> Volume3 和 Volume4)分别对应的属性的值,并将各 VolumeTemplate 与对应的计算资源模板MachineTemplate关联。例如,为Volumel创建VolumeTemplatel,为 Volume2 创建 VolumeTemplate2,为 Volume3 创建 VolumeTemplate3,为 Volume4 创建VoIumeTemplate4,并将 VolumeTemplatel 和 VolumeTemplate2 与 MachineTemplatel 关联,将 VoIumeTemplate3 与 MachineTemplate2 关联,将 VoIumeTemplate4 与 MachineTemplate3关联。上述的资源模板包含的属性中有一个属性为state,该state中用于保存模板对应的资源的运行状态。另外,上述的属性还可以包括模板名称、描述信息等,描述信息例如为测试系统是针对计费的测试系统、需要测试的时间为24小时等。上述的下一层的资源模板和上一层的资源模板之间的关联可以通过在上一层的资源模板内保存与其关联的下一层的资源模板的URI实现,例如,MachineTemplatel关联到 SystemTemplate 上,则可以在创建 MachineTemplatel 后,将 MachineTemplate I 的 URI保存在SystemTemplate的用于记录关联信息的属性内。另外,上述根据资源创建与各资源对应的资源模板的过程,可以是先创建各资源对应的空白的资源模板,然后读取各资源的属性值,并将其保存在资源模板包含的与读取的属性值对应的属性内,直到各资源的属性值都被保存在对应的资源模板内。其中,由于资源是由实例表示的,因此,上述的资源的属性值可以从该资源的实例内获取。从上述实施例中,通过从系统资源到存储资源逐级备份资源信息和拓扑结构直到最后一级资源的方式,完成对资源环境的备份。对与资源操作请求针对的资源环境备份完成后,新创建的SystemTemplate通常情况下只对用户可见,如果用户授权,其他用户也可以看到该资源模板。另外,备份的资源环境包括资源间的拓扑结构以及各资源的运行状态,进而在后续恢复资源环境时恢复的资源环境也就包括资源间的拓扑结构以及各资源的运行状态。进一步的,云服务器在对所述资源环境进行备份之后,执行所述资源操作请求指示的操作并创建任务Job实例,并向用户设备发送资源操作请求的响应消息,以便于所述用户设备根据所述响应消息确定所述云服务器对所述资源操作请求针对的资源环境备份成功。其中,Job实例可以为包括用于表明备份是否成功的属性的第一 Job实例,扩展Job实例的方式通知用户备份成功,即在Job实例中扩展备份是否成功的属性,以便所述用户设备根据所述第一 job实例的URI读取所述第一 Job实例后,根据所述用于表明备份是否成功的属性确定云服务器备份是否成功;或者,也可以不对Job实例进行扩展即创建第二 Job实例,所述第二 Job实例中不包括用于表明备份是否成功的属性,即而只在备份成功后才执行资源操作请求指示的操作以及创建Job实例,以便于所述用户设备根据所述第二Job实例的URI读取所述第二 Job实例,确定第二 Job实例中不包括表明针对的资源环境的备份是否成功的属性,则确定所述云服务器备份成功。步骤14:云服务器接收用于恢复资源环境的消息,并根据备份的资源环境以及所述用于恢复资源环境的消息恢复备份的资源环境。其中,恢复备份的资源环境可以根据资源操作请求执行的进展进行不同的操作。参见图4,为Job对应的操作正在执行时恢复资源环境的流程示意图。云服务器执行资源操作请求指示的操作时会创建Job实例,并将创建的Job实例的URI发送给用户,用户通过该URI可以访问Job实例,该Job实例会描述资源操作请求指示的操作的执行情况,用户通过访问Job实例可以获知资源操作请求指示的操作是正在执行还是已执行完毕。当用户要恢复备份的资源环境时,通过Job实例获知资源操作请求指示的操作正在执行时,参见图4,可以包括:步骤41:用户设备向云服务器发送取消Job (Cancel Job)的请求。其中,云服务器已完成资源环境备份后,执行所述资源操作请求指示的操作并创建Job实例(可以为包括用于表明备份是否成功的属性的第一 Job实例,也可以为不包括用于表明备份是否成功的属性的第二 Job实例),以及向用户设备返回创建的Job实例的URI,用户根据该Job实例的URI可以访问Job实例以获知操作的执行进度。当Job实例显示资源操作请求指示的操作正在执行且用户需要恢复资源环境时,则可以发送上述的取消Job的请求。另外,云服务器可以不论对资源环境的备份是否成功,都创建第一 Job实例。第一Job实例通过扩展Job实例的属性表明备份是否成功;或者,云服务器也可以在对资源环境的备份成功后才创建第二 Job实例,此时可以不对Job实例进行扩展。步骤42:云服务器根据备份的资源环境进行恢复处理。其中,Cancel Job的请求中可以携带要取消的Job的URI,云服务器根据该URI可以查询对应的Job实例,该Job实例的targetEntity属性内保存目标资源的URI。之后,云服务器可以根据targetEntity的值确定目标资源,又由于资源模板的URI与对应的资源的URI相同,因此,根据目标资源的URI可以确定目标资源对应的资源模板,根据目标资源对应的资源模板创建实例后,可以实现对该目标资源对应的资源环境的恢复处理。另一方面,由于该取消Job的请求是在该资源操作请求指示的操作执行时发送的,该取消Job的请求取消的操作就是该资源操作请求指示的操作,因此,上述的携带的要取消的Job的URI就是为该资源操作请求指示的操作创建的Job实例的URI。例如,云服务器根据取消Job请求中携带的Job的URI查询到的目标资源是TestSystem,则可以对System对应的系统模板SystemTemplate执行创建操作(Create),执行创建操作后,可以得到SystemTemplate对应的Test System实例,从而恢复Test System的资源环境。如果SystemTemplate与其余模板关联,例如,SystemTemplate的属性内保存MachineTemplatel的URI,则云服务器接收到针对SystemTemplate的创建操作后,也会根据关联的模板创建实例,例如根据MachineTemplatel创建VMl的实例。另外,云服务器接收到Cancel Job消息后,可以根据该Cancel Job消息中携带的Job实例的URI确定对应的Job实例,取消该Job实例对应的操作以及删除该Job实例。步骤43:云服务器向用户设备返回取消Job响应,以通知用户设备已恢复资源环境。
此外,在用户设备向云服务器申请资源时,会从云服务器获取对应的资源实例的URI,例如上述的Test System实例的URI。由于本实施例中是在操作执行结束之前取消操作,因此用户设备会一直保存该Test System实例的URI。当用户设备获知已恢复资源环境后,可以通过该URI访问Test System实例,从而访问已恢复的资源环境。该恢复的资源环境包括资源间的拓扑结构和各资源的运行状态。参见图5,为Job对应的操作执行结束后恢复资源环境的流程示意图,如上一实施例所述,云服务器执行资源操作请求指示的操作时会创建Job实例,并将创建的Job实例的URI发送给用户,用户通过该URI可以访问Job实例,该Job实例会描述资源操作请求指示的操作的执行情况,用户通过访问Job实例可以获知资源操作请求指示的操作是正在执行还是已执行完毕。当用户要恢复备份的资源环境时通过Job实例获知资源操作请求指示的操作已执行完毕后,参见图5,包括:步骤51:用户设备向云服务器发送浏览请求。其中,云服务器已完成资源环境备份后,执行所述资源操作请求指示的操作并创建任务Job实例(可以为包括用于表明备份是否成功的属性的第一 Job实例,也可以为不包括用于表明备份是否成功的属性的第二 Job实例),以及向用户设备返回创建的Job实例的URI,用户根据该Job实例的URI可以访问Job实例以获知操作的执行进度;当Job实例显示资源操作请求中的操作已执行完毕并需要恢复资源环境时,可以向云服务器发送浏览请求,该浏览请求用于浏览可用的资源模板。其中,浏览请求中携带要获取的目标资源对应的资源模板的信息,例如,该浏览请求是读请求(Read),且该读请求携带要获取的目标资源对应的资源模板的信息。以要获取的目标资源是系统资源为例,具体操作可以是用户向云服务器提交针对系统资源对应的资源模板的读取操作,例如,针对SystemTemplatesCollection 执行 Read 操作。在 CMWG 中,SystemTemplatesCollection 是一个隐性实体,包含所有用户有权限查看的系统资源模板SystemTemplate ;步骤52:云服务器向用户设备返回可用的资源模板。具体可以是云服务器向用户设备发送可用的资源模板的URI,用户设备根据该URI查找到可用的资源模板,或者也可以是云服务器向用户设备发送可用的资源模板的各属性的值,直接获取可用的资源模板。其中,该可用的资源模板可以包含在资源备份时新创建的资源模板,也可以包含在其余时间创建的资源模板,如初始创建的资源模板。其中,云服务器返回的可用的资源模板可以是目标资源对应的资源模板,由于目标资源对应的资源模板的一个属性中会保存与之关联的资源模板的URI,通过该URI可以获取与之关联的资源模板;也可以包括与目标资源对应的资源模板以及目标资源所包含的各级的资源分别对应的资源模板。例如,目标资源为上述的Test System时,在备份资源环境时,会创建 SystemTemplate、MachineTemplate 和 VolumeTemplate,云服务器可以将所有创建的资源模板都发送给用户设备,用户可以选择待恢复的模板为SystemTemplate、MachineTemplate 或者 VolumeTemplate0步骤53:用户设备从可用的资源模板中确定要恢复的资源模板。其中,要恢复的资源模板为用户选择的因备份资源环境而新创建的资源模板;
可用的资源模板中会保存对应的描述信息,例如,可用的资源模板包括测试系统的模板、开发系统的模板,用户可以根据实际的业务需要,如需要恢复测试系统的模板的资源环境,则确定待恢复的资源模板为测试系统的模板。步骤54:用户设备向云服务器发送恢复操作请求,该恢复操作请求中携带要恢复的资源模板的信息,即要恢复的资源模板的URI。其中,该恢复操作请求用于创建要恢复的资源模板对应的实例,例如,可以为Create命令。且该Create命令中携带要恢复的资源模板的信息,例如要恢复的资源模板的URI。另外,要恢复的资源模板可以是目标资源的资源模板,也可以是目标资源包含的资源模板。例如,目标资源为上述的Test System时,在备份资源环境时,会创建SystemTemplate、MachineTemplate和VolumeTemplate,云服务器可以将所有创建的资源模板都发送给用户设备,用户可以选择待恢复的模板为SystemTemplate、MachineTemplate或者 VolumeTemplate0步骤55:云服务器根据该恢复操作请求创建与要恢复的资源模板对应的实例,从而恢复资源环境。具体的,云服务器根据该恢复操作请求中的要恢复的资源模板的信息创建与待恢复的资源模板对应的实例。通过上述对图2中的备份处理的描述,备份的资源环境为资源间的拓扑结构和各资源的运行状态,因此对应恢复的资源环境也包括资源间的拓扑结构和各资源的运行状态。步骤56:云服务器向用户设备发送该创建的实例的URI。例如,云服务器创建的是Test System实例,之后将Test System实例的URI发送给用户设备,以便用户可以通过该URI访问Test System实例,从而访问已恢复的资源环境。此外,当要恢复的资源模板对应的资源包含下层资源时,例如,要恢复的资源模板为 SystemTemplate,该 SystemTemplate 对应的资源为 Test System,该 Test System包含VM1、VM2、VM3,则根据SystemTemplate创建对应的实例时,根据SystemTemplate的属性中保存的与之关联的资源模板的URI可以确定与之关联的资源模板,并根据与之关联的资源模板创建实例,例如SystemTemplate关联的资源模板包括MachineTemplatel、MachineTemplat2 和 MachineTemplate3,则同时也会根据 MachineTemplatel、MachineTemplat2和MachineTemplate3分别创建实例,即也会创建目标资源Test System包含的VMl、VM2、VM3的实例。本实施例通过在操作之前对资源环境进行备份,根据备份的资源环境可以恢复操作前的资源环境,实现资源环境的可恢复。图6为本发明恢复资源环境的方法另一实施例的流程示意图,包括:步骤61:用户设备向云服务器发送资源操作请求,该资源操作请求中携带表明需要对资源环境进行备份的指示信息。其中,该表明需要对资源环境进行备份的指示信息可以携带在HTTP消息头或者消息体中。具体地,携带在HTTP消息头中。
例如,资源操作请求的HTTP消息头可以如下所示:Delete/TestDep/TestSystem HTTP/1.1Host:www.CloudProvider.comX-1sRecoverable: True其中的“X-1sRecoverable:True”是一个新增的HTTP扩展头,用于指示资源操作请求(即删除测试系统的资源操作请求)针对的目标资源(测试系统)的资源环境需要备份。方式二:携带在HTTP消息体中。例如,资源操作请求可以如下所示:
Delete/TestDep/TestSystem HTTP /1.1 Host:www.CloudProvider.com <OperationInfo> <isRecoverable >True</isRecoverable >
</ OperationInfo> 其中的<isRecoverable>True〈/isRecoverable〉包含在 HTTP 消息体中,用于指不资源操作请求(即删除测试系统的资源操作请求)针对的目标资源(测试系统)的资源环境需要备份。步骤62:云服务器在执行所述资源操作请求指示的操作之前,对所述资源操作请求针对的资源环境进行备份。其中,云服务器通过解析资源操作请求,获知需要对所述资源操作请求针对的资源环境进行备份。例如,获知资源操作请求中的isRecoverable的值为True,则在执行所述资源操作请求指示的操作之前,对所述资源操作请求针对的资源环境进行备份。具体的备份处理流程可以参见如图2中的备份处理流程。步骤63:云服务器在对所述资源环境进行备份之后,执行资源操作请求指示的操作并创建Job实例。CMWG定义的规范中,提供了 Job实例,以便于用户获知申请资源的进度。当用户设备向云服务器发送资源操作请求后,由于完成资源操作请求指示的操作需要一定的时间,如数分钟。此时云服务器会在响应中向用户设备返回创建的Job实例的URI,以供用户查询资源操作的进展。本实施例中,在CMWG定义的规范基础上,可以对Job实例的属性进行了扩展,增加了用于表明备份是否成功的属性,如用“isRecoverable”表示,当然还可以用其余的属性值表明备份是否成功本发明在此不做具体的限定。即云服务器创建包括用于表明备份是否成功的属性的第一 Job实例。具体地,本实施例中的第一 Job实例可以如表I所示。表I
权利要求
1.一种恢复资源环境的方法,其特征在于,包括: 云服务器接收资源操作请求; 云服务器根据所述资源操作请求确定需要对所述资源操作请求针对的资源环境进行备份; 云服务器在执行所述资源操作请求指示的操作之前,对所述资源操作请求针对的资源环境进行备份; 云服务器接收用于恢复资源环境的消息,并根据备份的资源环境以及所述用于恢复资源环境的消息恢复备份的资源环境。
2.根据权利要求1所述的方法,其特征在于,所述云服务器根据所述资源操作请求确定需要对所述资源操作请求针对的资源环境进行备份具体包括: 云服务器根据所述资源操作请求中携带的表明需要对资源环境进行备份的指示信息,确定所述资源操作请求针对的资源环境需要备份;或者, 云服务器根据预先配置的备份策略以及所述资源操作请求确定所述资源操作请求针对的资源环境需要备份。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括: 所述云服务器在对所述资源环境进行备份 之后,执行所述资源操作请求指示的操作并创建任务Job实例,并向用户设备发送资源操作请求的响应消息,以便于所述用户设备根据所述响应消息确定所述云服务器对所述资源操作请求针对的资源环境备份成功。
4.根据权利要求3所述的方法,其特征在于,所述Job实例为第一Job实例,所述第一Job实例中包括用于表明备份是否成功的属性,所述资源操作请求的响应消息中携带所述第一 Job实例的URI,以便所述用户设备根据所述第一 Job实例的URI读取所述第一 Job实例后,根据所述用于表明备份是否成功的属性确定云服务器备份是否成功;或者, 所述Job实例为第二 Job实例,所述第二 Job实例中不包括用于表明备份是否成功的属性,所述资源操作请求的响应消息中携带所述第二 Job实例的URI,以便于所述用户设备根据所述第二 Job实例的URI读取所述第二 Job实例,确定第二 Job实例中不包括表明针对的资源环境的备份是否成功的属性,则确定所述云服务器备份成功。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述对所述资源操作请求针对的资源环境进行备份,具体包括: 根据所述资源操作请求针对的目标资源创建与目标资源对应的资源模板,并在所述目标资源对应的资源模板的属性内存储目标资源对应的属性的值; 依次为所述目标资源和/或所述目标资源包含的各层资源的每个资源创建对应的资源模板,在创建的资源模板的属性内存储与所述资源模板对应的资源对应的属性的值,并将所述资源模板及为与所述资源模板对应的资源的上一层资源创建的资源模板关联。
6.根据权利要求3或4任一项所述的方法,其特征在于,所述接收用于恢复资源环境的消息,并根据备份的资源环境以及所述用于恢复资源环境的消息恢复备份的资源环境,具体包括: 接收取消Job的请求,所述取消Job的请求中携带要取消的Job实例的URI ;根据所述取消Job的请求中携带的要取消的Job实例的URI取消所述资源操作请求指示的操作;并根据所述要取消的Job实例的属性中包含的目标资源的URI确定目标资源以及确定目标资源对应的资源模板,根据所述目标资源对应的资源模板创建实例;或者, 接收携带要获取目标资源对应的资源模板的信息的浏览请求,根据所述浏览请求向所述用户设备发送可用的资源模板,并接收所述用户设备发送的恢复操作请求,所述恢复操作请求中携带要恢复的资源模板的信息,并根据所述要恢复的资源模板创建实例。
7.一种恢复资源环境的设备,其特征在于,包括: 接收模块,用于接收资源操作请求; 处理模块,用于根 据所述资源操作请求确定需要对所述资源操作请求针对的资源环境进行备份; 存储模块,用于在执行所述资源操作请求指示的操作之前,对所述资源操作请求针对的资源环境进行备份; 恢复模块,用于接收用于恢复资源环境的消息,以及根据备份的资源环境以及所述用于恢复资源环境的消息恢复备份的资源环境。
8.根据权利要求7所述的设备,其特征在于,所述处理模块具体用于: 根据所述资源操作请求中携带的表明需要对资源环境进行备份的指示信息,确定所述资源操作请求针对的资源环境需要备份;或者, 云服务器根据预先配置的备份策略以及所述资源操作请求确定所述资源操作请求针对的资源环境需要备份。
9.根据权利要求7或8所述的设备,其特征在于,所述处理模块还用于: 在对所述资源环境进行备份之后,执行所述资源操作请求指示的操作并创建任务Job实例,并向用户设备发送资源操作请求的响应消息,以便于所述用户设备根据所述响应消息确定所述云服务器对所述资源操作请求针对的资源环境备份成功。
10.根据权利要求9所述的设备,其特征在于, 所述Job实例为第一 Job实例,所述第一 Job实例中包括用于表明备份是否成功的属性,所述资源操作请求的响应消息中携带所述第一 Job实例的URI,以便所述用户设备根据所述第一 Job实例的URI读取所述第一 Job实例后,根据所述用于表明备份是否成功的属性确定云服务器备份是否成功;或者, 所述Job实例为第二 Job实例,所述第二 Job实例中不包括用于表明备份是否成功的属性,所述资源操作请求的响应消息中携带所述第二 Job实例的URI,以便于所述用户设备根据所述第二 Job实例的URI读取所述第二 Job实例,确定第二 Job实例中不包括表明针对的资源环境的备份是否成功的属性,则确定所述云服务器备份成功。
11.根据权利要求7-10任一项所述的设备,其特征在于,所述存储模块具体用于: 根据所述资源操作请求针对的目标资源创建与目标资源对应的资源模板,并在所述目标资源对应的资源模板的属性内存储目标资源对应的属性的值; 依次为所述目标资源和/或所述目标资源包含的各层资源的每个资源创建对应的资源模板,在创建的资源模板的属性内存储与所述资源模板对应的资源对应的属性的值,并将所述资源模板及为与所述资源模板对应的资源的上一层资源创建的资源模板关联。
12.根据权利要求9或10所述的设备,其特征在于, 所述恢复模块具体用于:接收取消Job的请求,所述取消Job的请求中携带要取消的Job实例的URI ;根据所述取消Job的请求中携带的要取消的Job实例的URI取消所述资源操作请求指示的操作;并根据所述要取消的Job实例的属性中包含的目标资源的URI确定目标资源以及确定目标资源对应的资源模板,根据所述目标资源对应的资源模板创建实例;或 所述恢复模块具体用于:接收携带要获取目标资源对应的资源模板的信息的浏览请求,根据所述浏览请求向用户设备发送可用的资源模板,并接收用户设备发送的恢复操作请求,所述恢复操作请求中携带要恢复的资源模板的信息,并根据所述要恢复的资源模板创建实例。
13.一种恢复资源环境的方法,其特征在于,包括: 接收云服务器发送的资源操作请求的响应消息; 根据所述资源操作请求的响应消息确定所述云服务器对所述资源操作请求针对的资源环境备份成功,所述响应消息为所述云服务器对所述资源操作请求针对的资源环境进行备份后发送的; 向所述云服务器发送用于恢复资源环境的消息,使得所述云服务器根据备份的资源环境以及所述用于恢复资源环境的消息恢复备份的资源环境。
14.根据权利要求13所述的方法,其特征在于,该方法进一步包括: 向云服务器发送所述资源操作请求,所述资源操作请求中携带表明需要对所述资源操作请求针对的资源环境进行备份的指示信息,以便所述云服务器根据所述指示信息对所述资源操作请求针对的资源环境进行备份。
15.根据权利要求13或14所述的方法,其特征在于,所述资源操作请求的响应消息中携带任务Job实例的URI,所述根据所述资源操作请求的响应消息确定所述云服务器对所述资源操作请求针对的资源 环境备份成功具体包括: 所述Job实例为第一 Job实例,所述第一 Job实例中包括表明针对的资源环境的备份是否成功的属性,根据所述第一 Job实例的URI读取所述第一 Job实例,并根据所述表明针对的资源环境的备份是否成功的属性确定云服务器备份成功;或者, 所述Job实例为第二 Job实例,所述第二 Job实例中不包括表明针对的资源环境的备份是否成功的属性,根据所述第二 Job实例的URI读取所述第二 Job实例,确定第二 Job实例中不包括表明针对的资源环境的备份是否成功的属性,则确定所述云服务器备份成功。
16.根据权利要求15项所述的方法,其特征在于, 所述向所述云服务器发送用于恢复资源环境的消息,包括: 根据所述Job实例的URI访问所述Job实例,根据所述Job实例确定所述资源操作请求指示的操作正在执行,向所述云服务器发送取消Job的请求,所述取消Job的请求中携带所述Job实例的URI ;或者, 根据所述Job实例的URI访问所述Job实例,根据所述Job实例确定所述资源操作请求指示的操作已执行完毕,向所述云服务器发送携带要获取的目标资源对应的资源模板的信息的浏览请求,并接收所述云服务器根据所述浏览请求发送的可用的资源模板,从所述可用的资源模板中选择要恢复的资源模板,向所述云服务器发送恢复操作请求,所述恢复操作请求中携带所述要恢复的资源模板的URI。
17.根据权利要求13-15任一项所述的方法,其特征在于,所述资源操作请求的响应消息中携带Job实例的URI ;所述向所述云服务器发送用于恢复资源环境的消息,包括: 根据所述Job实例的URI访问所述Job实例,根据所述Job实例确定所述资源操作请求指示的操作正在执行,向所述云服务器发送取消Job的请求,所述取消Job的请求中携带所述Job实例的URI ; 或者, 根据所述Job实例的URI访问所述Job实例,根据所述Job实例确定所述资源操作请求指示的操作已执行完毕,向所述云服务器发送携带要获取目标资源对应的资源模板的信息的浏览请求,并接收所述云服务器根据所述浏览请求发送的可用的资源模板,从所述可用的资源模板中选择要恢复的资源模板,向所述云服务器发送恢复操作请求,所述恢复操作请求中携带所述要恢复的资源模板的URI。
18.一种恢复资源环境的设备,其特征在于,包括: 接收模块,用于接收云服务器发送的资源操作请求的响应消息; 处理模块,用于根据所述资源操作请求的响应消息确定所述云服务器对所述资源操作请求针对的资源环境备份成功,所述响应消息为所述云服务器对所述资源操作请求针对的资源环境进行备份后发送的; 发送模块,用于向所述云服务器发送用于恢复资源环境的消息,使得所述云服务器根据备份的资源环境以及所述用于恢复资源环境的消息恢复备份的资源环境。
19.根据权利要求18所述的设备,其特征在于,所述发送模块还用于: 向云服务器发送所述资源操作请求,所述资源操作请求中携带表明需要对所述资源操作请求针对的资源环境进行备份的指示信息,以便所述云服务器根据所述指示信息对所述资源操作请求针对的资源环境进行备份。
20.根据权利要求18或19所述的设备,其特征在于,所述资源操作请求的响应消息中携带任务Job实例的URI,所述处理模块具体用于: 所述Job实例为第一 Job实例,所述第一 Job实例中包括表明针对的资源环境的备份是否成功的属性,根据所述第一 Job实例的URI读取所述第一 Job实例,并根据所述表明针对的资源环境的备份是否成功的属性确定云服务器备份成功;或 所述Job实例为第二 Job实例,所述第二 Job实例中不包括表明针对的资源环境的备份是否成功的属性,根据所述第二 Job实例的URI读取所述第二 Job实例,确定第二 Job实例中不包括表明针对的资源环境的备份是否成功的属性,则确定所述云服务器备份成功。
21.根据权利要求20所述的设备,其特征在于,所述发送模块具体用于: 根据所述Job实例的URI访问所述Job实例,根据所述Job实例确定所述资源操作请求指示的操作正在执行,向所述云服务器发送取消Job的请求,所述取消Job的请求中携带所述Job实例的URI ;或者, 根据所述Job实例的URI访问所述Job实例,根据所述Job实例确定所述资源操作请求指示的操作已执行完毕,向所述云服务器发送携带要获取的目标资源对应的资源模板的信息的浏览请求,并接收所述云服务器根据所述浏览请求发送的可用的资源模板,从所述可用的资源模板中选择要恢复的资源模板,向所述云服务器发送恢复操作请求,所述恢复操作请求中携带所述要恢复的资源模板的URI。
22.根据权利要求18-21任一项所述的设备, 其特征在于,所述资源操作请求的响应消息中携带job实例的URI ; 所述发送模块具体用于: 根据所述Job实例的URI访问所述Job实例,根据所述Job实例确定所述资源操作请求指示的操作正在执行,向所述云服务器发送取消Job的请求,所述取消Job的请求中携带所述Job实例的URI ; 或者, 根据所述Job实例的URI访问所述Job实例,根据所述Job实例确定所述资源操作请求指示的操作已执行完毕,向所述云服务器发送携带要获取目标资源对应的资源模板的信息的浏览请求,并接收所述云服务器根据所述浏览请求发送的可用的资源模板,从所述可用的资源模板中选择要恢复的资源模板,向所述云服务器发送恢复操作请求,所述恢复操作请求中携带所述要恢复的 资源模板的URI。
全文摘要
本发明提供一种恢复资源环境的方法及设备。该方法包括云服务器接收资源操作请求;云服务器根据所述资源操作请求确定需要对所述资源操作请求针对的资源环境进行备份;云服务器在执行所述资源操作请求指示的操作之前,对所述资源操作请求针对的资源环境进行备份;云服务器接收用于恢复资源环境的消息,并根据备份的资源环境以及所述用于恢复资源环境的消息恢复备份的资源环境。本发明实施例可以实现资源环境的可恢复性。
文档编号H04L12/24GK103095759SQ20111034125
公开日2013年5月8日 申请日期2011年11月2日 优先权日2011年11月2日
发明者张楚雄 申请人:华为技术有限公司