一种业务容灾方法及系统的制作方法

文档序号:7981144阅读:316来源:国知局
一种业务容灾方法及系统的制作方法
【专利摘要】本发明公开了一种业务容灾方法及系统,检测到主机上有业务发生故障时,向该故障主机发起故障业务卸载请求;并根据维护的各主机的状态,寻找满足容灾条件的主机作为故障业务的目的主机,将故障业务加载到该目的主机上。采用本发明,可以最大限度的利用物理资源,减少运营商对业务的依赖,缩减成本,同时提高设备利用率和电信业务的稳定安全,减少故障率。
【专利说明】一种业务容灾方法及系统
【技术领域】
[0001]本发明涉及通讯业务【技术领域】,更具体地,涉及一种业务容灾方法及系统。
【背景技术】
[0002]目前部分运营商规模较小,同时多业务运营;或者运营商规模很大,业务新推出处于成长期时,对于硬件需求很小,在满足需求的状况下,一台物理主机上可以加载多个业务节点,以使不同的用户运行多个业务。
[0003]由于此种情况下,上线业务的设备使用率都被大大提高,必然要求作为稳定性储备的热备容灾机器也能获得更高的利用率。
[0004]传统的安全模式是双机模式(即1+1),通常用到的容灾模式采用N+m模式(I < m< =N,N为该系统的增值业务数目,m为热备主机数目)。目前,平台的业务发生故障后,存在可靠性不够,恢复时过于依赖人为操作等问题。
[0005]综上所述,如果一台热备容灾主机可以对应多个业务进行容灾,则可以大大提升设备复用率,降低昂贵的设备投入,以有限的成本大大提升系统的可靠性。同时,需要屏蔽业务类型差异,在容灾机制上视为相同类型,对业务类型不做限制,减少机制的复杂性。

【发明内容】

[0006]本发明解决的技术问题是提供一种业务容灾方法及系统,可以最大限度的利用物理资源,减少运营商对业务的依赖,缩减成本,同时提高设备利用率和电信业务的稳定安全,减少故障率。
[0007]为解决上述技术问题,本发明提供了一种业务容灾方法,
[0008]检测到主机上有业务发生故障时,向该故障主机发起故障业务卸载请求;
[0009]并根据维护的各主机的状态,寻找满足容灾条件的主机作为所述故障业务的目的主机,将所述故障业务加载到所述目的主机上。
[0010]进一步地,通过主机状态链表维护所述各主机的状态,所述主机状态链表中保存的主机的状态包括:
[0011]空闲(free),主机上无业务运行;
[0012]使用(used),主机上有业务运行,但未达到主机上能支持的最大业务数;
[0013]锁定(locking),主机上加载的业务已达到能支持的最大业务数,或者,主机上正在进行业务加载或者业务卸载操作。
[0014]进一步地,所述满足容灾条件,是指:
[0015]所述主机的状态为free或者used。
[0016]进一步地,所述满足容灾条件,还包括:
[0017]所述主机上不存在所述将要加载的所述故障业务。
[0018]进一步地,根据主机的资源及运算能力将主机上的资源划分多个业务资源位的最大业务数不超过该主机上的业务资源位。[0019]进一步地,当所述故障主机上有多个业务发生故障时,进行多个故障业务串行容灾处理:对所述多个故障业务按既定规则进行排序,对所述序列中的故障业务逐个进行容灾;
[0020]当所述故障主机上所有业务均发生故障时,对所有故障业务进行多个故障业务串行容灾处理;或者,寻找free状态的、且业务资源位不少于所述故障业务数的目的主机,如果寻找到,则将所有故障业务并行容灾到该目的主机上,否则,对所有故障业务进行多个故障业务串行容灾处理。
[0021]进一步地,所述方法还包括:
[0022]根据容灾进行的结果对所述主机状态链表中所述故障主机及所述目的主机的状态进行更新。
[0023]进一步地,在容灾过程中,所述目的主机上加载业务时,
[0024]如果所述目的主机处于free链表,则在完成业务加载后,将所述目的主机的状态从free链表转移至used链表;
[0025]如果所述目的主机处于used链表且未达到能支持的最大业务数,则在完成业务加载后,当所述目的主机上加载的业务达到最大业务数时,则将所述目的主机的状态从used链表转移至locking链表。
[0026]进一步地,在容灾过程中,所述故障主机上卸载业务时,
[0027]卸载业务成功后,判断所述故障主机上是否还有业务,如果还有业务,则所述故障主机保持在used链表中;如果所述故障主机上没有其他业务,则将所述故障主机从used链表转移至free链表。
[0028]进一步地,所述方法还包括:
[0029]在进行业务加载或者业务卸载过程中,将主机切换到locking链表;
[0030]在完成业务加载或者业务卸载过程后,将王机从locking链表释放出来。
[0031]本发明还提供了一种业务容灾系统,所述系统包括:
[0032]配置管理数据库服务器,用于维护各主机的状态,及管理相关配置信息;
[0033]自动部署模块,用于对业务进行加载或者卸载;
[0034]调度中心,用于检测到主机上有业务发生故障时,通知所述自动部署模块向所述故障主机发起故障业务卸载请求;并根据各主机的状态,寻找满足设定的容灾条件的主机作为所述故障业务的目的主机,并通知所述自动部署模块将所述故障业务加载到所述目的主机上。
[0035]进一步地,所述系统还包括web运维管理中心,
[0036]所述web运维管理中心用于,用户界面化操作,连接并读写操作所述配置管理数据库服务器,展示各主机的状态,以及,当主机上有业务发生故障后进行相关告警。
[0037]进一步地,所述配置管理数据库服务器,用于通过主机状态链表维护所述各主机的状态。
[0038]所述主机状态链表中保存的主机的状态包括:空闲(free),主机上无业务运行;使用(used),主机上有业务运行,但未达到主机上能支持的最大业务数;锁定(locking),主机上加载的业务已达到能支持的最大业务数,或者,主机上正在进行业务加载或者业务卸载操作;[0039]所述调度中心设定的容灾条件,至少包括:所述主机的状态为free或者used ;或者还包括:所述主机上不存在所述将要加载的所述故障业务。
[0040]进一步地,所述配置管理数据库服务器还用于,根据容灾进行的结果对所述主机状态链表中的所述故障主机及所述目的主机的状态进行更新。
[0041]采用本发明,至少具有如下有益效果:热备容灾主机/服务器可以划分多个逻辑意义上的业务资源位并提供给多个业务进行容灾,只需有限的物理主机数量,便可以实现在小业务量情况下的有效负荷分担,降低单点故障发生几率,有着较强的经济性和便利性;并且,通过多个业务资源位,屏蔽了不同类型主机的资源差异;其容灾模式与传统的N+m容灾模式相比较,可以在N值相同情况下使得m值控制的更小,比如m= I即可对应解决N =3的情况;同时,提升了容灾机制的健壮性,当由于网络、设备等因素造成业务容灾并发生容灾失败情况,该机制在一定时间内尝试进行多次容灾,直到容灾成功,在故障主机上,针对单业务故障和多业务故障都能有效运作实现容灾。
【专利附图】

【附图说明】
[0042]此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0043]图1为本发明实施例的业务容灾系统的示意图;
[0044]图2为本发明实施例的但主机多业务自动容灾方法的处理流程示意图。
【具体实施方式】
[0045]本实施方式提出一种在单物理主机上进行多业务自动容灾的方法,采用如下技术方案:
[0046]检测到主机上有业务发生故障时,向所述故障主机发起故障业务卸载请求;
[0047]并根据维护的各主机的状态,为所述故障业务寻找满足容灾条件的目的主机,将所述故障业务容灾到所述目的主机上。
[0048]其中,所述主机状态链表中保存有各主机的状态,所述主机的状态包括:
[0049]free (空闲),主机上无业务运行;
[0050]used (使用),主机上有业务运行,但未达到能支持的最大业务数;
[0051]locking(锁定);主机上加载的业务达到能支持的最大业务数,或者,正在进行加载或者卸载操作。
[0052]其中,所述的能支持的最大业务数包括:运行、调度、容灾等的业务数。
[0053]其中,所述满足容灾条件,是指:
[0054]所述目的主机的状态为free,或者为used。
[0055]此外,在加载业务时,判断当前主机是否处于free或used链表,如果处于free链表、或者处于used链表且未达到能支持的最大业务数,则允许加载业务;否则,不允许加载业务。
[0056]进一步地,在加载业务时,如果主机处于free链表,则在完成业务加载后,将主机的状态从free链表转移至used链表;
[0057]如果处于used链表且未达到能支持的最大业务数,则在完成业务加载后,当主机上加载的业务达到最大业务数时,则将主机的状态从used链表转移至locking链表。
[0058]此外,上述方法,还包括:
[0059]卸载业务成功后,判断主机上是否还有业务,如果还有业务,则保持在used链表中;如果没有其他业务,则从used链表转移至free链表。
[0060]此外,上述方法,还包括:
[0061]在进行业务加载或者业务卸载过程中,将主机切换到locking链表;
[0062]在完成业务加载或者业务卸载过程后,将王机从locking链表释放出来。
[0063]本发明中,为描述的方便,首先定义几个名称:
[0064]业务资源位:在不影响业务性能情况下,一个物理主机上最多可运行的业务数量即定义为该主机上逻辑意义的业务资源位。
[0065]一般根据物理主机的资源和运算能力等估算可同时运行的业务节点数目,其中决定因素是主机各资源的短板。目前pc server/blade server单个物理主机建议不超过3个业务节点。
[0066]容灾也是针对物理主机上的逻辑资源位来进行,最多容灾业务数目不能超过该主机上的业务资源位。
[0067]另外,不建议在同一物理主机上加载重复的业务。
[0068]卸载:针对业务进行,包括停止业务、删除版本、删除用户、删除模块运行IP。
[0069]加载:针对业务进行,包括增加模块运行IP、增加用户、上传版本、启动业务。
[0070]下电:针对物理主机服务器进行,即断电操作power off。下电重启后可以清除加载业务时增加的浮动IP,使得业务主机回到初始状态。
[0071]上电:针对物理主机服务器进行,即启动操作power on。
[0072]本发明的自动容灾模式是在物理主机可以运行几个业务的前提下,针对物理主机上的逻辑资源位来进行,最多容灾业务数目不能超过该主机上的业务资源位。另外不建议在同一物理主机上加载重复的业务。具体包括以下几个关键点:
[0073]关键点1:
[0074]设置若干关于物理主机状态的链表dree/used/locking,且物理主机的状态会根据容灾进行的结果进行更新。
[0075]1、加载业务时,判断物理主机是否处于free或used链表,如果处于free链表允许加载业务,如果处于used链表且未达到能支持的最大业务数允许加载业务,若不满足以上条件不允许加载业务。
[0076]2、卸载业务成功后,判断物理主机上是否还有业务,如果还有业务则保持在used链表中,如果没有其他业务则从used转移至free链表。
[0077]也即,物理主机上只要存在业务就保持在used链表。
[0078]3、为防止在同一个物理主机上同时进行操作导致操作异常(如多个管理员同时加载业务),要求手动加载和手动卸载操作过程中,都需要先将物理节点切换到locking链表,处于locking状态的主机不允许做其他操作。同时,要求针对一个物理主机在某个时间只能做一种操作;多个业务的加载也是按顺序进行。操作完后可以从locking状态释放出来。
[0079]此外,如果该物理主机上加载的业务达到最大业务节点数目,也加入locking链表,不能操作。
[0080]关键点2:
[0081]增加关于主机的状态标志位参数ifServDisaMode,I表明正在容灾,业务不可用,O表示正常状态;参数DisaStatus表明业务在容灾中所处的流程,在容灾过程中,业务的状态随时变更。具体示例见下表1所示:
[0082]表1主机及业务状态参数示例表
【权利要求】
1.一种业务容灾方法,其特征在于, 检测到主机上有业务发生故障时,向该故障主机发起故障业务卸载请求; 并根据维护的各主机的状态,寻找满足容灾条件的主机作为所述故障业务的目的主机,将所述故障业务加载到所述目的主机上。
2.如权利要求1所述的方法,其特征在于, 通过主机状态链表维护所述各主机的状态,所述主机状态链表中保存的主机的状态包括: 空闲(free),主机上无业务运行; 使用(used),主机上有业务运行,但未达到主机上能支持的最大业务数; 锁定(locking),主机上加载的业务已达到能支持的最大业务数,或者,主机上正在进行业务加载或者业务卸载操作。
3.如权利要求2所述的方法,其特征在于,所述满足容灾条件,是指: 所述主机的状态为free或者used。
4.如权利要求3所述的方法,其特征在于, 所述满足容灾条件,还包括: 所述主机上不存在所述将要加载的所述故障业务。
5.如权利要求2、3或4所述的方法,其特征在于, 根据主机的资源及运算能力将主机上的资源划分多个业务资源位的最大业务数不超过该主机上的业务资源位。
6.如权利要求5所述的方法,其特征在于, 当所述故障主机上有多个业务发生故障时,进行多个故障业务串行容灾处理:对所述多个故障业务按既定规则进行排序,对所述序列中的故障业务逐个进行容灾; 当所述故障主机上所有业务均发生故障时,对所有故障业务进行多个故障业务串行容灾处理;或者,寻找free状态的、且业务资源位不少于所述故障业务数的目的主机,如果寻找到,则将所有故障业务并行容灾到该目的主机上,否则,对所有故障业务进行多个故障业务串行容灾处理。
7.如权利要求2所述的方法,其特征在于,所述方法还包括: 根据容灾进行的结果对所述主机状态链表中所述故障主机及所述目的主机的状态进行更新。
8.如权利要求2或7所述的方法,其特征在于,在容灾过程中,所述目的主机上加载业务时, 如果所述目的主机处于free链表,则在完成业务加载后,将所述目的主机的状态从free链表转移至used链表; 如果所述目的主机处于used链表且未达到能支持的最大业务数,则在完成业务加载后,当所述目的主机上加载的业务达到最大业务数时,则将所述目的主机的状态从used链表转移至locking链表。
9.如权利要求2或7所述的方法,其特征在于,在容灾过程中,所述故障主机上卸载业务时, 卸载业务成功后,判断所述故障主机上是否还有业务,如果还有业务,则所述故障主机保持在used链表中;如果所述故障主机上没有其他业务,则将所述故障主机从used链表转移至free链表。
10.如权利要求2所述的方法,其特征在于,所述方法还包括: 在进行业务加载或者业务卸载过程中,将主机切换到locking链表; 在完成业务加载或者业务卸载过程后,将主机从locking链表释放出来。
11.一种业务容灾系统,其特征在于,所述系统包括: 配置管理数据库服务器,用于维护各主机的状态,及管理相关配置信息; 自动部署模块,用于对业务进行加载或者卸载; 调度中心,用于检测到主机上有业务发生故障时,通知所述自动部署模块向所述故障主机发起故障业务卸载请求;并根据各主机的状态,寻找满足设定的容灾条件的主机作为所述故障业务的目的主机,并通知所述自动部署模块将所述故障业务加载到所述目的主机上。
12.如权利要求11所述的系统,其特征在于,所述系统还包括web运维管理中心, 所述web运维管理中心用于,用户界面化操作,连接并读写操作所述配置管理数据库服务器,展示各主机的状态,以及,当主机上有业务发生故障后进行相关告警。
13.如权利要求11或12所述的系统,其特征在于, 所述配置管理数据库服务·器,用于通过主机状态链表维护所述各主机的状态; 所述主机状态链表中保存的主机的状态包括:空闲(free),主机上无业务运行;使用(used),主机上有业务运行,但未达到主机上能支持的最大业务数;锁定(locking),主机上加载的业务已达到能支持的最大业务数,或者,主机上正在进行业务加载或者业务卸载操作; 所述调度中心设定的容灾条件,至少包括:所述主机的状态为free或者used ;或者还包括:所述主机上不存在所述将要加载的所述故障业务。
14.如权利要求13所述的系统,其特征在于, 所述配置管理数据库服务器还用于,根据容灾进行的结果对所述主机状态链表中的所述故障主机及所述目的主机的状态进行更新。
【文档编号】H04L12/24GK103580883SQ201210250235
【公开日】2014年2月12日 申请日期:2012年7月19日 优先权日:2012年7月19日
【发明者】赵庆春, 张玲东, 郭亚梅, 王绘, 孙雷 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1