技术领域
[0001] 本
申请涉及虚拟化技术领域,尤其涉及一种虚拟机恢复方法及装置。
背景技术
[0002] 随着企业
数据中心规模的不断壮大,对全融合虚拟化
软件在整合数据中心IT(Information Technology,信息技术)
基础设施资源、精简数据中心
服务器数量、简化IT操作、提高物理资源利用率、抑制IT资源膨胀等方面提出了更高的要求。目前
云计算以及虚拟化技术已经深刻的改变了IT基础架构,企业必须能够优化计算、网络和存储资源之间的关系,才能实现真正的灵活部署以及弹性扩展,才能
支撑起IT瞬息变化的需求。
[0003] 当前虚拟化环境中,任何的网络故障、电源故障及服务器故障都会引发企业业务的中断,中断解决时间与虚拟化环境中计算、网络、存储的复杂性成正比,如何保证企业业务连续性、缩短业务中断解决时间将成为未来全融合虚拟化软件面临的一大问题。
[0004] UISM(Unified Infrastructure System Manager,统一管理矩阵),融合了服务器、网络、存储、虚拟化平台等多种平台与
硬件设备,方便了云计算基础设施的无缝融合和统一管理,简化了基础架构平台一体化交付及运维。
发明内容
[0005] 本申请提供一种虚拟机恢复方法及装置,以解决现有虚拟机恢复方案中系统开销过大的问题。
[0006] 根据本申请
实施例的第一方面,提供一种虚拟机恢复方法,应用于统一管理矩阵UISM管理交换机,该方法包括:
[0007] 监控虚拟化环境中服务器的运行状态;
[0008] 当监控到部署有业务虚拟机的服务器发生故障时,根据发生故障的服务器上部署的业务虚拟机的配置信息对应的配置文件在可用服务器上部署对应的业务虚拟机,并当部署成功后,启动对应的业务虚拟机。
[0009] 根据本申请实施例的第二方面,提供一种虚拟机恢复装置,应用于统一管理矩阵UISM管理交换机,该装置包括:
[0010] 监控单元,用于监控虚拟化环境中服务器的运行状态;
[0011] 部署单元,用于当所述监控单元监控到部署有业务虚拟机的服务器发生故障时,根据发生故障的服务器上部署的业务虚拟机的配置信息对应的配置文件在可用服务器上部署对应的业务虚拟机;
[0012] 启动单元,用于当部署成功后,启动对应的业务虚拟机。
[0013] 应用本申请实施例,通过监控虚拟化环境中服务器的运行状态,当监控到部署有业务虚拟机的服务器发生故障时,根据发生故障的服务器上部署的业务虚拟机的配置信息对应的配置文件在可用服务器上部署对应的业务虚拟机,并在部署成功后,启动对应的业务虚拟机,无需对虚拟机配置信息进行实时或定时备份,即可实现虚拟机恢复,降低了系统开销。
附图说明
[0014] 图1是一种虚拟化云平台典型应用场景的架构示意图;
[0015] 图2是本申请实施例提供的一种虚拟化平台应用场景的系统架构示意图;
[0016] 图3是本申请实施例提供的一种虚拟机恢复方法的流程示意图;
[0017] 图4是本申请实施例提供的一种具体应用场景的示意图;
[0018] 图5是本申请实施例提供的一种虚拟机恢复装置的结构示意图;
[0019] 图6是本申请实施例提供的另一种虚拟机恢复装置的结构示意图。
具体实施方式
[0020] 请参见图1,为一种虚拟化云平台典型应用场景的架构示意图,在图1所示应用场景中,利用虚拟化管理软件对服务器的虚拟化能
力,将关键性业务和大负载业务迁移到虚拟化环境中,系统管理员通过管理网络集中管理和监控业务系统、虚拟桌面的资源使用情况。一旦某个服务器的业务网链路故障、存储网链路故障或者服务器自身故障,都将会导致该服务器上的业务虚拟机无法对外提供服务。
[0021] 目前,针对虚拟化云平台应用场景中的服务器故障的处理手段使用最多的且范围最广的是容灾备份,其实现原理主要包括:通过对服务器、存储服务提供等量备份、网络冗余配置,并且在部署之初制定各类业务虚拟机的备份策略,在
感知到服务器故障后,依照备份策略启动备份的服务器,部署相同的业务虚拟机,以达到恢复对外服务目的。
[0022] 然而实践发现,上述容灾备份方案中,需要实时监控服务器上各个业务虚拟机的运行状态,并且对业务虚拟机的配置(网络配置、存储配置等)进行实时或者定时备份,增加了虚拟化管理平台的开销。
[0023] 为了使本技术领域的人员更好地理解本申请实施例中的技术方案,下面先对本申请实施例适用的系统架构进行简单说明。
[0024] 请参见图2,为本申请实施例提供的一种虚拟化平台应用场景的系统架构示意图,如图2所示,该系统架构在现有虚拟化平台应用场景中新增UISM管理交换机,该UISM管理交换机负责虚拟化平台应用场景中的业务流量汇聚转发和报文交互,还负责网络设备、服务器以及存储设备的状态监控。
[0025] 在图2所示的系统架构中,UISM管理交换机可以实时监控虚拟化环境中服务器的运行状态;当UISM管理交换机监控到部署有业务虚拟机的服务器发生故障时,可以根据发生故障的服务器上部署的业务虚拟机的配置信息对应的配置文件在可用服务器上部署对应的业务虚拟机,并当部署成功后,启动该对应的业务虚拟机。
[0026] 其中,UISM管理交换机为运行有UISM管理软件的交换机,如运行有UISM管理交换机的TOR(Top of Rack,机柜顶端)交换机。
[0027] 值得说明的是,在图2所示的系统架构中,UISM管理交换机可以有多台,该多台UISM管理交换机可以以堆叠的形式(如IRF(Intelligent Resilient Framework,智能弹性
框架))部署,以提高系统可靠性,其具体实现在此不做赘述。
[0028] 为了使本申请实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请实施例中技术方案作进一步详细的说明。
[0029] 请参见图3,为本申请实施例提供的一种虚拟机恢复方法的流程示意图,其中,该虚拟机恢复方法可以应用于图2所示系统架构中的UISM交换机,如图3所示,该虚拟机恢复方法可以包括以下步骤:
[0030] 步骤301、监控虚拟化环境中服务器的运行的状态。
[0031] 步骤302、当监控到部署有业务虚拟机的服务器发生故障时,根据发生故障的服务器上部署的业务虚拟机的配置信息对应的配置文件在可用服务器上部署对应的业务虚拟机,并当部署成功后,启动对应的业务虚拟机。
[0032] 本申请实施例中,UISM管理交换机可以实时监控虚拟化环境中服务器的运行状态,以便能及时监控到服务器故障的发生。
[0033] 在本申请其中一个实施例中,当UISM管理交换机监控到部署有业务虚拟机的服务器发生故障时,UISM管理交换机可以根据该发生故障的服务器上部署的业务虚拟机的配置信息生成对应的配置文件。
[0034] 例如,UISM管理交换机可以分别将发生故障的服务器上部署的各业务虚拟机的配置信息保存为对应的profile(用户配置文件)配置模板。
[0035] 在本申请另一个实施例中,当USIM管理交换机监控到部署有业务虚拟机的服务器发生故障时,UISM管理交换机可以直接从该发生故障的服务器中获取该服务器部署的各业务虚拟机的配置信息对应的配置文件。
[0036] 在本申请其中一个实施例中,业务虚拟机的配置信息可以包括:
[0037] 虚拟机基本信息、虚拟机
光驱、软驱配置、虚拟机网卡配置信息。
[0038] 其中,虚拟机基本信息可以包括虚拟机名称、描述、引导设备、CPU(Center Process Unit,中央处理单元)、内存配置等信息;
[0039] 虚拟机网卡配置信息可以包括虚拟机网卡个数、网络策略、网络连接以及网卡信息等。
[0040] 本申请实施例中,当UISM管理交换机监控到部署有业务虚拟机的服务器发生故障时,UISM管理交换机可以根据发生故障的服务器上部署的业务虚拟机的配置信息对应的配置文件(本文中以profile配置模板为例)在可用服务器上部署对应的业务虚拟机。
[0041] 例如,根据profile配置模板中包括的虚拟机基本信息在可用服务器上部署相同名称的虚拟机,并为该虚拟机进行相应的引导设备、CPU、内存等配置,根据profile配置模板中包括的光驱、软驱配置该虚拟机进行相应地光驱、软驱配置,并根据profile配置模板中包括的虚拟机网卡配置信息恢复虚拟机网卡配置,如网卡个数、网络策略以及网络连接等。
[0042] 在本申请其中一个实施例中,根据发生故障的服务器上部署的业务虚拟机的配置信息对应的配置文件在可用服务器上部署对应的业务虚拟机,可以包括:
[0043] 获取虚拟化环境中可用服务器的负荷状态;
[0044] 按照各可用服务器的负荷从低到高的顺序,选择一台或多台可用服务器作为目标可用服务器;
[0045] 根据上述配置文件在目标可用服务器上部署对应的业务虚拟机。
[0046] 在该实施例中,为了避免虚拟机恢复导致其它可用服务器的负荷过大,UISM管理交换机在进行虚拟机恢复时,可以选择相对较空闲的可用服务器部署需要恢复的虚拟机。
[0047] 相应地,在该实施例中,当UISM管理交换机监控到部署有业务虚拟机的服务器发生故障时,UISM管理交换机可以获取虚拟机环境中可用服务器的负荷状态,例如,CPU利用率、内存利用率以及网络负载等参数中的一个或多个。
[0048] UISM管理交换机获取到虚拟化环境中各可用服务器的负荷状态之后,可以按照各可用服务器的负荷从低到高的顺序,选择一台或多台可用服务器作为目标可用服务器。
[0049] 举例来说,当需要进行虚拟机恢复时,UISM管理交换机可以获取虚拟机环境中各可用服务器的CPU利用率、内存利用率以及网络负载,并根据各可用服务器的CPU利用率、内存利用率以及网络负载,按照预设的负荷计算策略确定各可用服务器的负荷。
[0050] 例如,可以预先设定CPU利用率与负荷分值(本文中称为第一负荷分值)、内存利用率与负荷分值(本文中称为第二负荷分值)以及网络负载与负荷分值(本文中称为第三负荷分值)的对应关系,其中,CPU利用率、内存利用率以及网络负载分别与对应的负荷分值正相关。
[0051] 相应地,对于任一可用服务器,可以分别根据该可用服务器的CPU利用率、内存利用率以及网络负载,确定该可用服务器的第一负荷分值、第二负荷分值以及第三负荷分值,并对该第一负荷分值、第二负荷分值以及第三负荷分值进行加权,以确定可用服务器的综合负荷分值。其中,可用服务器的综合负荷分值越高,表明该可用服务器的负荷越高。
[0052] 例如,假设CPU利用率为0~10%时,第一负荷分值为1;CPU利用率为10%~20%时,第一负荷分值为2;…CPU利用率为90%~100%时,第一负荷分值为10。内存利用率以及网络负载与负荷分值的对应关系同理。
[0053] UISM管理交换机确定了可用服务器的第一负荷分值、第二负荷分值以及第三负荷分值之后,可以通过以下公式确定可用服务器的综合负荷分值:
[0054] 综合负荷分值=a*第一负荷分值+b*第二负荷分值+c*第三负荷分值[0055] 其中,0<a<1,0<b<1,0<c<1,a+b+c=1。
[0056] 在该实施例中,UISM管理交换机确定了各可用服务器的负荷之后,可以根据各可用服务器的负荷状态,以及需要恢复的虚拟机的数量以及运行需求,选择负荷最低的一台或多台可用服务器作为目标可用服务器,并根据上述配置文件在目标可用服务器上部署对应的业务虚拟机。
[0057] 例如,假设发生故障的服务器上部署了10台虚拟机,UISM管理服务器确定了各可用服务器的负荷状态之后,可以按照负荷从低到高的顺序,选择负荷最低的3台可用服务器,并分别在该3台可用服务器上部署4台、3台和3台虚拟机。
[0058] 值得说明的是,在本申请实施例中,当UISM管理交换机确定了各可用服务器的负荷之后,并不一定需要选择负荷最低的一台或几台可用服务器作为目标可用服务器,UISM管理交换机也可以按照其它策略选择目标可用服务器,例如,当需要选择一台可用服务器作为目标可用服务器时,UISM管理交换机也可以选择负荷次低(即按照负荷从低到高的顺序的第二台)可用服务器作为目标可用服务器,而并不一定需要选择负荷最低的一台可用服务器作为目标可用服务器;同理,当需要选择两台可用服务器作为目标服务器时,UISM管理交换机也可以选择按照负荷从低到高的顺序的第二台和第三台(或者第三台和第四台、或者第二台和第四台等)可用服务器作为目标可用服务器,而并不一定需要选择负荷最低的两台(即按照负荷从低到高的顺序的第一台和第二台)可用服务器作为目标可用服务器。
[0059] 可见,在本申请实施例提供的技术方案中,对于发生故障的服务器上部署的虚拟机,可以均在一台可用服务器上恢复,也可以分别在多台不同的可用服务器上恢复。
[0060] 进一步地,在本申请另一个实施例中,上述业务虚拟机的配置信息还可以包括虚拟机存储个数以及使用存储卷信息;
[0061] 相应地,在该实施例中,根据上述配置文件在目标可用服务器上部署对应的业务虚拟机之后,还可以包括:
[0062] 根据该虚拟机的存储个数以及使用存储卷信息,将根据该配置文件在可用服务器上部署的业务虚拟机关联到对应的存储卷。
[0063] 在该实施例中,考虑到单纯的服务器故障,对存储服务并无影响,在进行虚拟机恢复时,为了提高存储空间利用率,UISM管理交换机在可用服务器上恢复发生故障的服务器上部署的业务虚拟机之后,还可以直接让恢复的业务虚拟机使用原来的存储卷。
[0064] 相应地,在该实施例中,当UISM管理交换机根据配置信息在可用服务器上部署虚拟机之后,可以根据该配置信息中包括的虚拟机的存储个数以及使用存储卷信息,将根据该配置文件部署的业务虚拟机关联到对应的存储卷。
[0065] 应该认识到,上述实施例中描述的UISM管理交换机在可用服务器上恢复发生故障的服务器上部署的业务虚拟机之后,直接让恢复的业务虚拟机使用原来的存储卷的实现仅仅是本申请实施例提供的技术方案中的一种具体实现,而并不属于对本申请保护范围的限定,也即,在本申请实施例中,UISM管理交换机在可用服务器上恢复发生故障的服务器上部署的业务虚拟机之后,也可以重新部署各业务虚拟机的存储配置,其具体实现在此不做赘述。
[0066] 进一步地,在本申请其中一个实施例中,上述启动对应的业务虚拟机之后,还可以包括:
[0067] 当发生故障的服务器恢复时,删除该服务器上部署的目标业务虚拟机;其中,该目标业务虚拟机为根据配置文件成功部署到目标可用服务器上的业务虚拟机。
[0068] 在该实施例中,考虑到UISM管理交换机在可用服务器上重新部署了发生故障的服务器上部署的虚拟机之后,该业务虚拟机将与发生故障的服务器上的虚拟机使用相同的共享存储卷,一旦发生故障的服务器恢复,使用相同共享存储卷的两个虚拟机将会存在重名、读写冲突等现象,影响业务正常运行。
[0069] 因此,在该实施例中,当UISM管理交换机根据上述配置文件在可用服务器部署对应的业务虚拟机,并启动对应的业务虚拟机之后,若监控到发生故障的服务器恢复正常运行,UISM管理交换机可以将该服务器上部署的目标虚拟机删除,以避免产生冲突。
[0070] 其中,在该实施例中,为了实现上述目的,上述业务虚拟机的配置信息中还可以包括业务虚拟机的唯一标识符,如UUID(Universally Unique Identifier,通用唯一标识符)或其它类似标识符。
[0071] 当UISM管理交换机在可用服务器上成功部署某业务虚拟机,且发生故障的服务器恢复正常运行时,UISM管理交换机可以根据该成功部署的业务虚拟机的唯一标识符,删除该恢复正常运行的服务器上部署的与该唯一标识符匹配的业务虚拟机。
[0072] 需要说明的是,在本申请实施例中,UISM管理交换机根据上述配置文件(如profile配置模板)在可用服务器上成功部署对应的业务虚拟机之后,还可以删除相应的配置文件,以避免后续再次发生服务器故障,且需要进行虚拟机恢复时,该配置文件对应的业务虚拟机重复部署。
[0073] 可见,在图1所示的方法流程中,通过监控虚拟化环境中服务器的运行状态,并当监控到部署有业务虚拟机的服务器发生故障时,根据发生故障的服务器上部署的业务虚拟机的配置信息对应的配置文件在可用服务器上部署对应的业务虚拟机,并当部署成功后,启动对应的业务虚拟机,无需对虚拟机配置信息进行实时或定时备份,即可实现虚拟机恢复,降低了系统开销。
[0074] 为了使本领域技术人员更好地理解本申请实施例提供的技术方案,下面结合具体应用场景对本申请实施例提供的技术方案进行说明。
[0075] 请参见图4,为本申请实施例提供的一种具体应用场景的架构示意图,如图4所示,在该应用场景中,UISM管理交换机A和UISM管理交换机B形成IRF堆叠(以下将该IRF堆叠简称为UISM管理交换机),该UISM管理交换机负责系统中业务流量汇聚转发和报文的交互,同时还负责网络设备、服务器设备及存储设备的状态监控。
[0076] 基于图4所示的应用场景,本申请实施例提供的虚拟机恢复方案的实现流程可以如下:
[0077] 1、UISM管理交换机实时监控虚拟化环境中各服务器的运行状态;
[0078] 2、当监控到部署有业务虚拟机的服务器(假设为服务器1,且服务器1上共部署有5台虚拟机(VM(Virtual Machine,虚拟机)1~VM5))发生故障时,UISM管理交换机分别将VM1~VM5的配置信息保存为对应的profile配置模板;其中,一个虚拟机对应一个profile配置模板。
[0079] 其中,profile配置模板中可以包括以下信息:
[0080] 虚拟机基本信息:名称、描述、引导设备、CPU、内存配置等;
[0081] 虚拟机光驱、软驱配置;
[0082] 虚拟机网卡配置信息:网卡个数、网络策略、网络连接及网卡信息等;
[0083] 虚拟机存储个数及使用存储卷信息;
[0084] 虚拟机唯一标识符。
[0085] 3、UISM管理交换机统计虚拟化环境中各可用服务器的CPU利用率、内存利用率以及网络负载,确定各可用服务器的负荷,并将负荷最低的一台或多台可用服务器确定为目标可用服务器。
[0086] 其中,假设各可用服务器负荷从低到高的顺序依次为服务器2、服务器3…服务器N。
[0087] 1)、UISM管理交换机可以将负荷最低的可用服务器(即服务器2)确定为目标可用服务器;或,
[0088] 2)、UISM管理交换机可以按照各可用服务器负荷从低到高的顺序,选择多台(假设为两台,则为服务器2和服务器3)作为目标可用服务器。
[0089] 4、UISM管理交换机根据上述profile配置模板,在目标可用服务器上部署同名虚拟机,并恢复虚拟机软驱、光驱配置、网卡配置(包括网卡个数、网络策略及网络连接等);
[0090] 5、UISM管理交换机将目标可用服务器上部署的业务虚拟机关联到对应的profile配置模板中保存的存储卷;
[0091] 其中,业务虚拟机部署成功后,UISM管理服务器可以启动业务虚拟机以恢复原先业务虚拟机的系统、业务及数据。对于用户而言实现了服务器故障情况下的
虚拟机迁移功能,达到了快速恢复故障服务器提供的业务功能。
[0092] 6、对于部署成功的业务虚拟机,UISM管理交换机保留profile配置模板中的虚拟机唯一标识符,并删除该profile配置模板;当故障服务器恢复正常运行时,通过匹配虚拟机唯一标识符,删除该恢复正常的服务器上部署的对应的业务虚拟机。
[0093] 通过以上描述可以看出,在本申请实施例提供的技术方案中,通过监控虚拟化环境中服务器的运行状态,当监控到部署有业务虚拟机的服务器发生故障时,根据发生故障的服务器上部署的业务虚拟机的配置信息对应的配置文件在可用服务器上部署对应的业务虚拟机,并在部署成功后,启动对应的业务虚拟机,无需对虚拟机配置信息进行实时或定时备份,即可实现虚拟机恢复,降低了系统开销。
[0094] 请参见图5,为本申请实施例提供的一种虚拟机恢复装置的结构示意图,其中,该虚拟机恢复装置可以应用于上述方法实施例中的UISM管理交换机,如图5所示,该虚拟机恢复装置可以包括:
[0095] 监控单元510,用于监控虚拟化环境中服务器的运行状态;
[0096] 部署单元520,用于当所述监控单元监控到部署有业务虚拟机的服务器发生故障时,根据发生故障的服务器上部署的业务虚拟机的配置信息对应的配置文件在可用服务器上部署对应的业务虚拟机;
[0097] 启动单元530,用于当部署成功后,启动对应的业务虚拟机。
[0098] 在可选实施例中,所述部署单元520,具体用于获取虚拟化环境中可用服务器的负荷状态;按照各可用服务器的负荷从低到高的顺序,选择一台或多台可用服务器作为目标可用服务器;根据所述配置文件在所述目标可用服务器上部署对应的业务虚拟机。
[0099] 在可选实施例中,业务虚拟机的配置信息包括:
[0100] 虚拟机基本信息、虚拟机光驱、软驱配置、虚拟机网卡配置信息。
[0101] 在可选实施例中,所述业务虚拟机的配置信息还包括虚拟机存储个数及使用存储卷信息;
[0102] 相应地,所述部署单元520,还用于根据所述虚拟机的存储个数及使用存储卷信息,将根据所述配置文件在所述可用服务器上部署的业务虚拟机关联到对应的存储卷。
[0103] 请一并参见图6,为本申请实施例提供的另一种虚拟机恢复装置的结构示意图,如图6所示,在图5所示虚拟机恢复装置的基础上,图6所示的虚拟机恢复装置还可以包括:
[0104] 删除单元540,用于当所述发生故障的服务器恢复时,删除该服务器上部署的目标业务虚拟机;其中,该目标业务虚拟机为根据所述配置文件成功部署到目标可用服务器上的业务虚拟机。
[0105] 上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
[0106] 对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模
块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0107] 由上述实施例可见,通过监控虚拟化环境中服务器的运行状态,当监控到部署有业务虚拟机的服务器发生故障时,根据发生故障的服务器上部署的业务虚拟机的配置信息对应的配置文件在可用服务器上部署对应的业务虚拟机,并在部署成功后,启动对应的业务虚拟机,无需对虚拟机配置信息进行实时或定时备份,即可实现虚拟机恢复,降低了系统开销。
[0108] 本领域技术人员在考虑
说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的
权利要求指出。
[0109] 应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种
修改和改变。本申请的范围仅由所附的权利要求来限制。