CN115292003A - 服务器故障恢复方法、装置、电子设备及存储介质 - Google Patents
服务器故障恢复方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115292003A CN115292003A CN202210919147.5A CN202210919147A CN115292003A CN 115292003 A CN115292003 A CN 115292003A CN 202210919147 A CN202210919147 A CN 202210919147A CN 115292003 A CN115292003 A CN 115292003A
- Authority
- CN
- China
- Prior art keywords
- fault
- virtual machine
- cloud
- recovery
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/203—Failover techniques using migration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
- G06F9/4856—Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45591—Monitoring or debugging support
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Hardware Redundancy (AREA)
Abstract
本申请提供一种云平台中的服务器故障恢复方法、装置、电子设备及存储介质,包括:获取所述云平台中发生故障的故障服务器以及对应故障服务器上的故障虚拟机;根据不同故障虚拟机上的应用副本数据确定各故障虚拟机的恢复优先级;基于各故障虚拟机的恢复优先级依次进行对应故障虚拟机的故障迁移。本申请实施例的技术方案通过获取云平台中发生故障的故障服务器上故障虚拟机的应用副本数据,以此确定不同故障虚拟机的恢复优先级,从而基于恢复优先级进行故障虚拟机的高效故障恢复。
Description
技术领域
本申请属于云计算技术领域,具体而言,涉及一种云平台中的服务器故障恢复方法、装置、电子设备及存储介质。
背景技术
在云计算领域中,云原生技术由于其容器化,微服务化等优点备受青睐,并已经成为应用上云的标准化实现路径,但由于目前任存在相当数量的应用仍然未实现云原生化,依然只能以传统形式运行,因此,目前的典型的实用性云平台基本为物理服务器-虚拟机-容器三层结构,即物理服务器集群上运行着虚拟机,而虚拟机承载着云原生应用(以Kubernetes POD形式运行;Kubernetes:用于管理云平台中多个主机上的容器化的应用,POD是Kubernetes中最小的资源管理组件以及最小化运行容器化应用的资源对象)和传统应用(即非云原生应用,以单体容器、静态POD甚至非容器的形式运行)。
由于各虚拟机包含云原生应用和非云原生应用这一混合式场景,给物理服务器-虚拟机-容器三层结构的管理上带来了多方面的复杂性和困难,当出现物理服务器故障时,如何实现故障虚拟机的高效迁移,成为亟待解决的问题。
发明内容
为解决上述技术问题,本申请的实施例提供了一种云平台中的服务器故障恢复方法及装置、电子设备、计算机可读存储介质。
根据本申请实施例的一个方面,提供了一种云平台中的服务器故障恢复方法,包括获取所述云平台中发生故障的故障服务器以及对应故障服务器上的故障虚拟机;根据不同故障虚拟机上的应用副本数据确定各故障虚拟机的恢复优先级;基于各故障虚拟机的恢复优先级依次进行对应故障虚拟机的故障迁移。
在一实施例中,在所述获取所述云平台中发生故障的故障服务器以及对应故障服务器上的故障虚拟机之后,所述方法还包括:
发送控制指令,以使所述故障虚拟机上的应用副本在所述故障虚拟机恢复期间不进行操作。
在一实施例中,所述根据不同故障虚拟机上的应用副本数据确定各故障虚拟机的恢复优先级,包括:
提取不同故障虚拟机上的云原生应用副本数量以及非云原生应用副本数量;
基于各故障虚拟机的云原生应用副本数量以及非云原生应用副本数量计算对应故障虚拟机的恢复优先级。
在一实施例中,所述基于各故障虚拟机的云原生应用副本数量以及非云原生应用副本数量计算对应故障虚拟机的恢复优先级,包括:
分别为所述云原生应用副本以及所述非云原生应用副本分配对应的权重;
根据所述云原生应用副本数量、所述非云原生应用副本数量、所述云原生应用副本以及所述非云原生各自的权重计算各故障虚拟机的恢复优先级。
在一实施例中,所述基于各故障虚拟机的云原生应用副本数量以及非云原生应用副本数量计算对应故障虚拟机的恢复优先级,包括:
pvm1=Ct∈vm1·wt+ccn∈vm1·wcn
其中,pvm1为故障虚拟机vm1的恢复优先级,ct∈vm1为vm1承载的非云原生应用副本的数量,wt为非云原生应用副本的权重,ccn∈vm1为vm1承载的云原生应用副本的数量,wcn为云原生应用副本的权重。
在一实施例中,所述基于各故障虚拟机的恢复优先级依次进行对应故障虚拟机的故障迁移,包括:
在所述云平台中确定备用服务器的目标地址;
基于各故障虚拟机的恢复优先级依次创建不同故障虚拟机的故障迁移任务,以使对应故障虚拟机基于所述目标地址迁移至所述备用服务器。
在一实施例中,所述基于各故障虚拟机的恢复优先级依次进行对应故障虚拟机的故障迁移,包括:
基于各故障虚拟机的恢复优先级先后顺序对故障虚拟机进行排序,得到恢复列表;
基于所述恢复列表以此创建对应故障虚拟机的故障迁移任务,以使各故障虚拟机依次完成故障迁移。
根据本申请实施例的一个方面,提供了一种云平台中的服务器故障恢复装置,包括:故障信息获取模块,配置为获取所述云平台中发生故障的故障服务器以及对应故障服务器上的故障虚拟机;恢复优先级获取模块,配置为根据不同故障虚拟机上的应用副本数据确定各故障虚拟机的恢复优先级;故障迁移模块,配置为基于各故障虚拟机的恢复优先级依次进行对应故障虚拟机的故障迁移。
根据本申请实施例的一个方面,提供了一种电子设备,包括一个或多个处理器;存储装置,用于存储一个或多个计算机程序,当所述一个或多个计算机程序被所述一个或多个处理器执行时,使得所述电子设备实现如上所述的云平台中的服务器故障恢复方法。
根据本申请实施例的一个方面,提供了一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行如上所述的云平台中的服务器故障恢复方法。
根据本申请实施例的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实施例中提供的云平台中的服务器故障恢复方法。
在本申请的实施例所提供的技术方案中,通过获取云平台中发生故障的故障服务器上故障虚拟机的应用副本数据,以此确定不同故障虚拟机的恢复优先级,从而使得恢复优先级高的故障虚拟机优先进行故障迁移,实现云平台中的服务器的高效故障恢复。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是本申请涉及的一种实施环境的示意图;
图2是本申请涉及的另一种实施环境的示意图;
图3是图2所示实施环境的本申请的云平台中的服务器故障恢复方法过程图;
图4是本申请的一示例性实施例示出的云平台中的服务器故障恢复方法的流程图;
图5是图4所示实施例中的步骤S430在一示例性实施例中的流程图;
图6是图5所示实施例中的步骤S530在另一示例性实施例中的流程图;
图7是本申请的一示例性实施例示出的云平台中的服务器故障恢复装置的结构示意图;
图8示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
还需要说明的是:在本申请中提及的“多个”是指两个或者两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
以下将对本申请实施例提出的云平台中的服务器故障恢复方法及装置、电子设备、存储介质进行详细说明。
首先请参阅图1,图1是本申请涉及的一种实施环境的示意图。该实施环境包括控制器100和服务器端200,控制器100和服务器端200之间通过有线或者无线网络进行通信。
当然,图1中的服务器端200的数量仅是示例性的,在其他实施例中还可以是其他数量的服务器端200,本实施例中,多个服务器端200构成服务器集群,物理服务器集群上运行着虚拟机,而虚拟机上同时承载着云原生应用和非云原生应用。
控制器100用于进行云平台中的服务器故障恢复控制,可在服务器端200构成的云平台中的服务器发生故障时进行故障恢复。
示例性的,控制器100在检测到云平中存在服务器端200发生故障时,获取云平台中发生故障的故障服务器以及对应故障服务器上的故障虚拟机;其会控制故障服务器上的容器,不要进行应用副本的废弃/重建操作,并根据不同故障虚拟机上的应用副本数据确定各故障虚拟机的恢复优先级;基于各故障虚拟机的恢复优先级依次进行对应故障虚拟机的故障迁移,以此保证故障服务器中的所有应用副本能重新起动完成,以完成故障恢复。
在一具体实施例中,服务器端200构成的云平台上会包含有虚拟机管理系统(如OpenStack)以及容器管理系统(如Kubernetes),虚拟机管理系统以及容器管理系统包含各自的故障恢复流程,虚拟机管理系统对故障服务器上受影响虚拟机进行故障迁移容器管理系统让云原生应用直接放弃受影响的应用副本,然后在其他节点上重新创建(非云原生应用则一般只能等待受影响副本恢复)。
具体地,控制器100在监控到故障服务器后,通过虚拟机管理系统获得故障服务器上故障虚拟机列表,然后通过容器管理系统获得故障虚拟机上的应用副本列表,随之,控制器100向容器管理系统传递故障虚拟机上的应用副本列表,并通知容器管理系统在恢复流程期间不要进行这些应用副本的废弃/重建操作,同时,基于故障虚拟机上的应用副本列表根据故障虚拟机/故障虚拟机的应用副本信息计算出故障虚拟机的迁移优先级,然后按优先级对故障虚拟机排序,按照所得到的故障虚拟机顺序依次创建虚拟机的故障迁移任务,并在一个故障虚拟机的故障迁移后,重新启动该故障虚拟机,直到所有故障虚拟机的故障迁移完成,且所有故障虚拟机重新启动完成,虚拟机承载的所有应用副本重新启动完成,至此,故障恢复成功。
其中,控制器100可以是智能手机、平板、笔记本电脑、计算机等任意能够实现控制功能的电子设备,也可以是依附在服务器端200上的一个控制单元,本处不进行限制。服务器端200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,本处也不对此进行限制。
首先请参阅图1,图1是本申请涉及的一种实施环境的示意图。该实施环境包括控制器100和服务器端200,控制器100和服务器端200之间通过有线或者无线网络进行通信。
图2是本申请涉及的另一种实施环境的示意图,即图1中的控制器100包括故障恢复协同模块101和虚拟机恢复作业排序模块102,故障恢复协同模块101和虚拟机恢复作业排序模块102共同作用为云平台中的故障服务器进行故障恢复,其中,故障恢复协同模块101和虚拟机恢复作业排序模块102之间可进行有线或无线通信连接。
同样地,服务器端200构成的云平台上会包含有虚拟机管理系统以及容器管理系统。
在一具体实施例中,图2中所示实施例的故障恢复过程可参考图3,故障恢复协同模块101在监控到故障服务器后,通过虚拟机管理系统获得故障服务器上故障虚拟机列表,然后通过容器管理系统获得故障虚拟机上的应用副本列表,随之,故障恢复协同模块101向容器管理系统传递故障虚拟机上的应用副本列表,并通知容器管理系统在恢复流程期间不要进行这些应用副本的废弃/重建操作,同时,故障恢复协同模块101将故障虚拟机/故障虚拟机的应用副本信息发送至虚拟机恢复作业排序模块102,以使虚拟机恢复作业排序模块102根据故障虚拟机/故障虚拟机的应用副本信息计算出故障虚拟机的迁移优先级,然后按优先级对故障虚拟机排序,虚拟机恢复作业排序模块102将排序的结果返回给故障恢复协同模块101,以使故障恢复协同模块101按照所得到的故障虚拟机顺序依次创建虚拟机的故障迁移任务,并在一个故障虚拟机的故障迁移后,重新启动该故障虚拟机,直到所有故障虚拟机的故障迁移完成,且所有故障虚拟机重新启动完成,虚拟机承载的所有应用副本重新启动完成,至此,故障恢复成功。
图4是根据一示例性实施例示出一种云平台中的服务器故障恢复方法的流程图。该云平台中的服务器故障恢复方法可应用于图1或图2所示的实施环境,并由该实施环境中的控制器100具体执行,或是由图2中的故障恢复协同模块101和虚拟机恢复作业排序模块102共同,应该理解的是,该方法也可以是用于其他的示例性实施环境,并由其它实施环境中的设备具体执行,本实施例不对该方法所适用的实施环境进行限制。
如图4所示,在一示例性实施例中,该方法可以包括步骤S410至步骤S450,详细介绍如下:
步骤S410:获取云平台中发生故障的故障服务器以及对应故障服务器上的故障虚拟机。
本实施例中的云平台为物理服务器-虚拟机-容器三层结构,多个物理服务器可构成服务器集群,服务器集群上运行着虚拟机,而虚拟机上同时承载着云原生应用和非云原生应用。
当存在某个服务器故障时,该故障服务器上的虚拟机会受影响无法正常运行,即变成故障虚拟机,而故障虚拟机上的应用副本也会随之受影响,无法正常运行提供服务。
控制器或故障恢复协同模块中可设有监控系统,该监控系统用于检测云平台是否发生服务器故障,当然,也可以是云平台中设有监控系统,当云平台的监控系统检测到服务器故障时,则发送提示至控制器或故障恢复协同模块,以提示控制器或故障恢复协同模块进行云平台中的服务器故障恢复操作。
当检测到云平台中服务器发生故障时,则通过虚拟机管理系统确定故障服务器以及故障服务器上故障虚拟机,云平台中服务器发生故障时,可能存在一个或多个服务器发生故障,此时定位发生故障的故障服务器,一个故障服务器上可能存在一个或多个虚拟机,以此定位故障服务器上的所有虚拟机为故障虚拟机。
步骤S430:根据不同故障虚拟机上的应用副本数据确定各故障虚拟机的恢复优先级。
在确定故障虚拟机后,各故障虚拟机中承载着云原生应用和非云原生应用,此时可基于各故障虚拟机中应用副本数据确定各故障虚拟机的恢复优先级。
具体地,应用副本数据包括各虚拟机中云原生应用和非云原生应用各自的数量,并分别为云原生应用和非云原生应用确定各自的权重,以此计算每个故障虚拟机的恢复优先级。
其中云原生应用和非云原生应用确定各自的权重可通过经验参数得到,且故障虚拟机中承载的非云原生应用的副本数量越多则恢复优先级越高,故障虚拟机承载的非云原生应用的副本数量越多则恢复优先级越高。
当然,由于云平中的容器管理系统在服务器故障后,目前的虚拟机和容器各自的故障恢复流程之间缺少协同机制,一般两套流程被各自触发,即云原生应用直接放弃受影响的应用副本,然后在其他节点上重新创建,而虚拟机管理系统对故障虚拟机进行故障迁移,此时容器的恢复流程会与虚拟机故障迁移流程同时进行,从而使相当一部分操作将变成无效操作。例如虚拟机完成恢复后即可让承载的应用副本恢复运作,但容器管理系统却会废弃掉这些副本并去重新创建。如此就会出现一边被恢复一边被丢弃的情况,这给云平台的管理上带来了多方面的复杂性和困难,会导致整个恢复流程的资源浪费和效率低下。
因此,本实施例中在确定故障虚拟机后,在进行故障虚拟机的故障迁移之前,还通过发送指令阻止容器管理系统触发应用副本重建的动作,即控制云平中的容器管理系统不进行故障恢复的动作。
步骤S450:基于各故障虚拟机的恢复优先级依次进行对应故障虚拟机的故障迁移。
在得到各故障虚拟机的恢复优先级后,按恢复优先级的先后顺序对所有故障虚拟机进行排序,并根据排序结果依次创建虚拟机的故障迁移任务,当一个故障虚拟机的故障迁移任务完成,则重新起动该故障虚拟机,以使该故障虚拟机正常运转,保证该故障虚拟机上的应用正常运行。
如此,根据排序结果依次进行故障虚拟机的故障迁移,直到所有故障虚拟机的故障迁移完成,且所有故障虚拟机重新启动完成,虚拟机承载的所有应用副本重新启动完成,至此,故障恢复成功。
本实施例中,对故障虚拟机的故障迁移可通过多种方式实现,如确定备用服务器或没有故障的服务器的地址,将故障虚拟机迁移到备用服务器或没有故障的服务器上;或如启用故障服务器上可用区内的云服务器和云硬盘等资源,以确保故障虚拟机中业务正常运行等。
本实施例提出的服务器故障恢复方式,基于同时承载云原生应用和非云原生应用的混合式云平台这个具体场景的特性,提出针对性的恢复优先级,使得恢复优先级高的故障虚拟机先进行优化,使得应用副本数量多、非云原生应用数量多的故障虚拟机优先优化,以此减少虚拟机故障对虚拟机上的应用造成的影响,提高故障恢复效率。
图5是图4所示实施例中步骤S430在一示例性实施例中的流程图。如图5所示,在一示例性实施例中,该根据不同故障虚拟机上的应用副本数据确定各故障虚拟机的恢复优先级的过程可以包括步骤S510至步骤S530,详细介绍如下:
步骤S510:提取不同故障虚拟机上的云原生应用副本数量以及非云原生应用副本数量。
虚拟机同时承载着云原生应用和非云原生应用的情况下,这两类应用在需要恢复的紧急程度上一般是存在明显差异的,云原生应用普遍实现了高可用特性;而非云原生应用并不保证这一点(甚至存在单点生效风险),非云原生应用停止运作造成的影响往往更明显,其需恢复运作的紧急程度也往往更高,应优先被恢复。因此不同虚拟机中应用副本数据不同,该虚拟机的恢复优先级也应不同,但现存的服务器故障恢复方式无法实现这种优先级。
因此,本实施例中,通过提取不同故障虚拟机上的云原生应用副本数量以及非云原生应用副本数量,以此确定不同故障虚拟机的恢复优先级。
确定云原生应用副本数量以及非云原生应用副本数量可通过云平台上的容器管理系统进行提取得到。
步骤S530:基于各故障虚拟机的云原生应用副本数量以及非云原生应用副本数量计算对应故障虚拟机的恢复优先级。
本实施例中,以非云原生应用副本数量越多则恢复优先级越高、故障虚拟机承载的非云原生应用副本数量越多则恢复优先级越高为准则,结合各故障虚拟机内的云原生应用副本数量以及非云原生应用副本数量计算对应故障虚拟机的恢复优先级。
本实施例中,基于虚拟机中云原生应用和非云原生应用的运行特征,通过统计各故障虚拟机的云原生应用副本数量以及非云原生应用副本数量,以此确定不同虚拟机的恢复优先级,从而使得优先级高的虚拟机优先进行故障恢复,提高故障恢复的效率。
图6是图5所示实施例中步骤S530在一示例性实施例中的流程图。如图5所示,在一示例性实施例中,该基于各故障虚拟机的云原生应用副本数量以及非云原生应用副本数量计算对应故障虚拟机的恢复优先级的过程可以包括步骤S610至步骤S630,详细介绍如下:
步骤S610:分别为云原生应用副本以及非云原生应用副本分配对应的权重。
本实施例中,基于云原生应用副本以及非云原生应用副本的特征,为云原生应用副本以及非云原生应用副本分别分配各自的权重,该权重的分配可基于非云原生应用副本数量越多则恢复优先级越高、故障虚拟机承载的非云原生应用副本数量越多则恢复优先级越高这一准则得到,且权重的具体数值可通过经验参数得到。
步骤S630:根据云原生应用副本数量、非云原生应用副本数量、云原生应用副本以及非云原生各自的权重计算各故障虚拟机的恢复优先级。
本实施例中,可通过以下公式计算故障虚拟机的恢复优先级:
pvm1=ct∈vm1·wt+ccn∈vm1·wcn
其中,pvm1为故障虚拟机vm1的恢复优先级,ct∈vm1为vm1承载的非云原生应用副本的数量,wt为非云原生应用副本的权重,ccn∈vm1为vm1承载的云原生应用副本的数量,wcn为云原生应用副本的权重。
在一具体实施例中,其中wt和wcn为经验数值,如可设定为:wt=10和wcn=1。
本实施例中进行故障虚拟机的恢复优先级计算过程可在图1中的控制器中进行,也可在图2中的虚拟机恢复作业排序模块中完成。
本实施例中通过为云原生应用副本以及非云原生应用副本分配对应的权重,以此基于不同云原生应用副本数量、非云原生应用副本数量可计算到对应虚拟机的恢复优先级,以此为故障虚拟机的恢复先后顺序提供参考数据,提高故障虚拟机恢复的效率。
图7是根据一示例性实施例示出的一种云平台中的服务器故障恢复装置的结构示意图。如图7所示,在一示例性实施例中,该装置包括:
故障信息获取模块710,配置为获取云平台中发生故障的故障服务器以及对应故障服务器上的故障虚拟机;
恢复优先级获取模块730,配置为根据不同故障虚拟机上的应用副本数据确定各故障虚拟机的恢复优先级;
故障迁移模块750,配置为基于各故障虚拟机的恢复优先级依次进行对应故障虚拟机的故障迁移。
本实施例所提出的云平台中的服务器故障恢复装置可在云平台中的服务器故障时高效完成故障虚拟机的故障迁移。
在一实施例中,云平台中的服务器故障恢复装置还包括:
指令发送模块,配置为发送控制指令,以使故障虚拟机上的应用副本在故障虚拟机恢复期间不进行操作。
在一实施例中,恢复优先级获取模块包括:
应用副本数量获取单元,配置为提取不同故障虚拟机上的云原生应用副本数量以及非云原生应用副本数量;
恢复优先级获取单元,配置为基于各故障虚拟机的云原生应用副本数量以及非云原生应用副本数量计算对应故障虚拟机的恢复优先级。
在一实施例中,恢复优先级获取单元包括:
权重分配板块,配置为分别为云原生应用副本以及非云原生应用副本分配对应的权重;
恢复优先级获取板块,配置为根据云原生应用副本数量、非云原生应用副本数量、云原生应用副本以及非云原生各自的权重计算各故障虚拟机的恢复优先级。
在一实施例中,恢复优先级获取单元通过以下方式获取故障虚拟机的恢复优先级:
pvm1=ct∈vm1·wt+ccn∈vm1·wcn
其中,pvm1为故障虚拟机vm1的恢复优先级,ct∈vm1为vm1承载的非云原生应用副本的数量,wt为非云原生应用副本的权重,ccn∈vm1为vm1承载的云原生应用副本的数量,wcn为云原生应用副本的权重。
在一实施例中,故障迁移模块包括:
目标地址获取单元,配置为在云平台中确定备用服务器的目标地址;
第一迁移单元,配置为基于各故障虚拟机的恢复优先级依次创建不同故障虚拟机的故障迁移任务,以使对应故障虚拟机基于目标地址迁移至备用服务器。
在一实施例中,故障迁移模块包括:
恢复列表获取单元,配置为基于各故障虚拟机的恢复优先级先后顺序对故障虚拟机进行排序,得到恢复列表;
第二迁移单元,配置为基于恢复列表以此创建对应故障虚拟机的故障迁移任务,以使各故障虚拟机依次完成故障迁移。
需要说明的是,上述实施例所提供的云平台中的服务器故障恢复装置与上述实施例所提供的云平台中的服务器故障恢复方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。
本申请的实施例还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行时,使得电子设备实现上述各个实施例中提供的云平台中的服务器故障恢复方法。
图8示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图8示出的电子设备的计算机系统800仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图8所示,计算机系统800包括中央处理单元(Central Processing Unit,CPU)801,其可以根据存储在只读存储器(Read-Only Memory,ROM)802中的程序或者从储存部分808加载到随机访问存储器(Random Access Memory,RAM)803中的程序而执行各种适当的动作和处理,例如执行上述实施例中的方法。在RAM 803中,还存储有系统操作所需的各种程序和数据。CPU 801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(Input/Output,I/O)接口805也连接至总线804。
以下部件连接至I/O接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分807;包括硬盘等的储存部分808;以及包括诸如LAN(Local Area Network,局域网)卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至I/O接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入储存部分808。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理单元(CPU)1001执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
本申请的另一方面还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如前的云平台中的服务器故障恢复方法。该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的,也可以是单独存在,而未装配入该电子设备中。
本申请的另一方面还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各个实施例中提供的云平台中的服务器故障恢复方法。
上述内容,仅为本申请的较佳示例性实施例,并非用于限制本申请的实施方案,本领域普通技术人员根据本申请的主要构思和精神,可以十分方便地进行相应的变通或修改,故本申请的保护范围应以权利要求书所要求的保护范围为准。
Claims (10)
1.一种云平台中的服务器故障恢复方法,其特征在于,包括:
获取所述云平台中发生故障的故障服务器以及对应故障服务器上的故障虚拟机;
根据不同故障虚拟机上的应用副本数据确定各故障虚拟机的恢复优先级;
基于各故障虚拟机的恢复优先级依次进行对应故障虚拟机的故障迁移。
2.根据权利要求1所述的方法,其特征在于,在所述获取所述云平台中发生故障的故障服务器以及对应故障服务器上的故障虚拟机之后,所述方法还包括:
发送控制指令,以使所述故障虚拟机上的应用副本在所述故障虚拟机恢复期间不进行操作。
3.根据权利要求1所述的方法,其特征在于,所述根据不同故障虚拟机上的应用副本数据确定各故障虚拟机的恢复优先级,包括:
提取不同故障虚拟机上的云原生应用副本数量以及非云原生应用副本数量;
基于各故障虚拟机的云原生应用副本数量以及非云原生应用副本数量计算对应故障虚拟机的恢复优先级。
4.根据权利要求3所述的方法,其特征在于,所述基于各故障虚拟机的云原生应用副本数量以及非云原生应用副本数量计算对应故障虚拟机的恢复优先级,包括:
分别为所述云原生应用副本以及所述非云原生应用副本分配对应的权重;
根据所述云原生应用副本数量、所述非云原生应用副本数量、所述云原生应用副本以及所述非云原生各自的权重计算各故障虚拟机的恢复优先级。
5.根据权利要求3所述的方法,其特征在于,所述基于各故障虚拟机的云原生应用副本数量以及非云原生应用副本数量计算对应故障虚拟机的恢复优先级,包括:
pvm1=ct∈vm1·wt+ccn∈vm1·wcn
其中,pvm1为故障虚拟机vm1的恢复优先级,ct∈vm1为vm1承载的非云原生应用副本的数量,wt为非云原生应用副本的权重,ccn∈vm1为vm1承载的云原生应用副本的数量,wcn为云原生应用副本的权重。
6.根据权利要求1所述的方法,其特征在于,所述基于各故障虚拟机的恢复优先级依次进行对应故障虚拟机的故障迁移,包括:
在所述云平台中确定备用服务器的目标地址;
基于各故障虚拟机的恢复优先级依次创建不同故障虚拟机的故障迁移任务,以使对应故障虚拟机基于所述目标地址迁移至所述备用服务器。
7.根据权利要求1所述的方法,其特征在于,所述基于各故障虚拟机的恢复优先级依次进行对应故障虚拟机的故障迁移,包括:
基于各故障虚拟机的恢复优先级先后顺序对故障虚拟机进行排序,得到恢复列表;
基于所述恢复列表以此创建对应故障虚拟机的故障迁移任务,以使各故障虚拟机依次完成故障迁移。
8.一种云平台中的服务器故障恢复终端,其特征在于,包括:
故障信息获取模块,配置为获取所述云平台中发生故障的故障服务器以及对应故障服务器上的故障虚拟机;
恢复优先级获取模块,配置为根据不同故障虚拟机上的应用副本数据确定各故障虚拟机的恢复优先级;
故障迁移模块,配置为基于各故障虚拟机的恢复优先级依次进行对应故障虚拟机的故障迁移。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个计算机程序,当所述一个或多个计算机程序被所述一个或多个处理器执行时,使得所述电子设备实现如权利要求1-7中的任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行权利要求1-7中的任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210919147.5A CN115292003A (zh) | 2022-08-01 | 2022-08-01 | 服务器故障恢复方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210919147.5A CN115292003A (zh) | 2022-08-01 | 2022-08-01 | 服务器故障恢复方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115292003A true CN115292003A (zh) | 2022-11-04 |
Family
ID=83826937
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210919147.5A Pending CN115292003A (zh) | 2022-08-01 | 2022-08-01 | 服务器故障恢复方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115292003A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116302680A (zh) * | 2023-01-15 | 2023-06-23 | 北京志凌海纳科技有限公司 | 一种降低超融合系统故障影响的恢复系统及方法 |
CN116643906A (zh) * | 2023-06-01 | 2023-08-25 | 北京首都在线科技股份有限公司 | 云平台故障的处理方法、装置、电子设备及存储介质 |
-
2022
- 2022-08-01 CN CN202210919147.5A patent/CN115292003A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116302680A (zh) * | 2023-01-15 | 2023-06-23 | 北京志凌海纳科技有限公司 | 一种降低超融合系统故障影响的恢复系统及方法 |
CN116302680B (zh) * | 2023-01-15 | 2024-01-23 | 北京志凌海纳科技有限公司 | 一种降低超融合系统故障影响的恢复系统及方法 |
CN116643906A (zh) * | 2023-06-01 | 2023-08-25 | 北京首都在线科技股份有限公司 | 云平台故障的处理方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107526659B (zh) | 用于失效备援的方法和设备 | |
CN115292003A (zh) | 服务器故障恢复方法、装置、电子设备及存储介质 | |
US9727358B2 (en) | Failover detection and treatment in checkpoint systems | |
Koslovski et al. | Reliability support in virtual infrastructures | |
CN108270726B (zh) | 应用实例部署方法及装置 | |
EP3462671B1 (en) | Virtual network function resource management method and device | |
CN103414712B (zh) | 一种分布式虚拟桌面管理系统和方法 | |
CN109117252B (zh) | 基于容器的任务处理的方法、系统及容器集群管理系统 | |
CN111338774A (zh) | 分布式定时任务调度系统及计算装置 | |
CN109871384B (zh) | 基于PaaS平台进行容器迁移的方法、系统、设备和存储介质 | |
CN112948063B (zh) | 云平台的创建方法、装置、云平台以及云平台实现系统 | |
EP3471337B1 (en) | Charging methods and devices | |
CN113886089A (zh) | 一种任务处理方法、装置、系统、设备及介质 | |
US20220179711A1 (en) | Method For Platform-Based Scheduling Of Job Flow | |
CN114064217B (zh) | 一种基于OpenStack的节点虚拟机迁移方法及装置 | |
CN110019475B (zh) | 数据持久化处理方法、装置及系统 | |
CN114090179A (zh) | 有状态服务的迁移方法、装置及服务器 | |
CN107168774B (zh) | 一种基于本地存储的虚拟机迁移方法及系统 | |
CN111506388B (zh) | 容器性能探测方法、容器管理平台及计算机存储介质 | |
CN115277398A (zh) | 一种集群的网络配置方法和装置 | |
CN108984105B (zh) | 对网络存储设备中的复制任务进行分配的方法和设备 | |
US20140380089A1 (en) | Method and apparatus for recovering failed disk in virtual machine | |
CN111858079B (zh) | 分布式锁迁移方法、装置及电子设备、存储介质 | |
US11269615B2 (en) | Automatically orchestrating deployments of software-defined storage stacks | |
US11113106B2 (en) | Coordinating distributed task execution |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |