集群成员状态震荡防止方法和装置制造方法及图纸

技术编号:19515246 阅读:22 留言:0更新日期:2018-11-21 10:13
本申请提供了集群成员状态震荡防止方法和装置。本申请中,即使网络设备满足加入集群的条件时,网络设备也不立即加入集群,而是先判断指定存储介质是否记录了本设备的设备状态信息,当判断指定存储介质记录本设备的设备状态信息且当依据本设备的设备状态信息中记录的集群成员时间确定本设备延时加入集群时,计算延时时间,并在延时所述延时时间后加入所述集群,这显然能够防止集群成员反复加入、退出导致的集群成员状态震荡,进而缓解了集群成员状态震荡给集群中主Leader带来的平滑配置和运行数据等压力,避免了因为集群成员状态震荡而对正常业务的影响。

【技术实现步骤摘要】
集群成员状态震荡防止方法和装置
本申请涉及网络通信技术,特别涉及集群成员状态震荡防止方法和装置。
技术介绍
集群,是一种提高性能、降低成本、提高扩展性和可靠性的技术。在集群中,集群成员的角色主要分为Leader角色和Member角色。其中,集群中担任Leader角色的成员至少有两台,担任Member角色的成员数量可选。为便于描述,将集群中担任Leader角色的成员称为Leader,将集群中担任Member角色的成员称为Member。在集群中,Leader会参与选举,以最终选出一个Leader作为主Leader,其他作为备Leader,主Leader负责集群的管理和业务的协调等工作。当主Leader故障时,备Leader会重新执行选举过程以选出一个新的主Leader接替体原来的主Leader的工作。在应用中,因为网络环境不稳定、集群成员比如备Leader或Member故障等,常出现集群成员比如备Leader或Member反复加入、退出集群的情况,这种情况称为集群成员状态震荡。当出现集群成员状态震荡时,集群中的主Leader需要反复处理集群成员加入、退出事件。而一般情况下,集群成员的加入,需要主Leader平滑自身的配置和运行数据。如此,当出现集群成员状态震荡时,主Leader会消耗大量资源在因集群成员反复加入而引起的平滑配置和运行数据上,这使得主Leader没有足够的资源处理正常业务,导致正常业务受到影响。
技术实现思路
本申请提供了集群成员状态震荡防止方法和装置,以防止集群成员状态震荡。本申请提供的技术方案包括:一种集群成员状态震荡防止方法,该方法应用于网络设备,包括:在本设备满足加入集群的条件时,先判断指定存储介质是否记录了本设备的设备状态信息,如果否,加入所述集群并在指定存储介质记录本设备的设备状态信息;其中,本设备的设备状态信息至少包括集群成员时间,所述集群成员时间为本设备加入集群的时间;如果是,当依据本设备的设备状态信息中记录的集群成员时间确定本设备延时加入集群时,计算延时时间,并在所述延时时间后加入所述集群。一种集群成员状态震荡防止装置,该装置应用于网络设备,包括:判断单元,用于在本设备满足加入集群的条件时,先判断指定存储介质是否记录了本设备的设备状态信息,集群处理单元,用于在所述判断单元的判断结果为否时,加入所述集群并在指定存储介质记录本设备的设备状态信息;其中,本设备的设备状态信息至少包括集群成员时间,所述集群成员时间为本设备加入集群的时间;在所述判断单元的判断结果为是时,若依据本设备的设备状态信息中记录的集群成员时间确定本设备延时加入集群,计算延时时间,并在所述延时时间后加入所述集群。由以上技术方案可以看出,本申请中,即使网络设备满足加入集群的条件时,网络设备也不立即加入集群,而是先判断指定存储介质是否记录了本设备的设备状态信息,当判断指定存储介质记录本设备的设备状态信息且当依据本设备的设备状态信息中记录的集群成员时间确定本设备延时加入集群时,计算延时时间,并在所述延时时间后加入所述集群,这显然能够防止集群成员反复加入、退出导致的集群成员状态震荡,进而缓解了集群成员状态震荡给集群中主Leader带来的平滑配置和运行数据等压力,避免了因为集群成员状态震荡而对正常业务的影响。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。图1为本申请提供的方法流程图;图2为本申请提供的步骤101实现流程图;图3为本申请提供的步骤103中确定本设备延时加入集群的实现流程图;图4为本申请提供的步骤103中计算延时时间的流程图;图5为本申请提供的装置结构示意图。具体实施方式为避免集群成员状态震荡给集群中主Leader带来的平滑配置和运行数据等压力,本申请提供了集群成员状态震荡防止方法。为了使本申请更加清楚,下面通过附图和实施例对本申请提供的方法进行描述:参见图1,图1为本申请提供的方法流程图。该方法应用于网络设备。作为一个实施例,这里的网络设备可为运行在服务器上的控制器,比如为虚拟应用融合架构控制器(VCFC:VirtualConvergedFrameworkController)。如图1所示,该流程可包括以下步骤:步骤101,在本设备满足加入集群的条件时,先判断指定存储介质是否记录了本设备的设备状态信息,如果否,执行步骤102,如果是,执行步骤103。在具体实现时,本步骤101中判断指定存储介质是否记录了本设备的设备状态信息有很多实现形式,下文图2所示流程举例示出了其中一种实现形式。这里暂不赘述,下文会详细描述。需要说明的是,在本申请中,集群可通过集群工具比如分布式协助服务(Zookeeper)实现,基于此,这里的指定存储介质可为运行在服务器上的Zookeeper。步骤102,加入所述集群并在指定存储介质记录本设备的设备状态信息;其中,本设备的设备状态信息至少包括集群成员时间,所述集群成员时间为本设备加入集群的时间。本步骤102是在判断出指定存储介质未记录本设备的设备状态信息的前提下执行的。这里,指定存储介质未记录本设备的设备状态信息,其意味着之前很长一段时间本设备是没有加入集群,如此,即使此时直接立刻加入集群,其也不会产生集群成员状态震荡,因此,本申请中,当判断出指定存储介质未记录本设备的设备状态信息,如步骤102描述,直接加入所述集群。需要说明的是,本步骤102中,本设备的设备状态信息包括的集群成员时间可为当前加入集群的系统时间。作为一个实施例,本申请中,本设备的设备状态信息还可进一步包括本设备的设备标识、本设备在集群中的状态(具体是新加入集群)等,本申请并不具体限定。步骤103,当依据本设备的设备状态信息中记录的集群成员时间确定本设备延时加入集群时,计算延时时间,并在所述延时时间后加入所述集群。本步骤103是在判断出指定存储介质记录本设备的设备状态信息的前提下执行的。这里,指定存储介质记录本设备的设备状态信息,其意味着之前本设备已加入集群,如此,此时若直接立刻加入集群,有可能会产生集群成员状态震荡,因此,本申请中,需要依据本设备的设备状态信息中记录的集群成员时间判断本设备是否延时加入集群。作为一个实施例,当依据本设备的设备状态信息中记录的集群成员时间确定本设备延时加入集群,则如步骤103描述,计算延时时间,并在所述延时时间后加入所述集群,这里在所述延时时间后加入所述集群的目的就是防止本设备反复加入集群产生集群成员状态震荡。需要说明的是,本申请中,为便于判断本设备后续再加入集群是否产生集群成员状态震荡,步骤103中,在所述延时时间后加入所述集群进一步可包括:将本设备加入集群的时间作为集群成员时间记录至本设备的设备状态信息中。作为另一个实施例,本申请中,当依据本设备的设备状态信息中记录的集群成员时间确定本设备不延时加入集群,则说明尽管之前本设备已加入集群,但有可能本设备之前加入集群的时间很早,即使此时本设备直接立刻加入集群,也不会产生集群成员状态震荡,因此,本申请中,当依据本设备的设备状态信息中记录的集群成员时间确定本设备不延时加入集群时,本设备直接立刻加入所述集群。需要说明的是,这里,在本设备直接立刻加入所述集群之前,可进一步本文档来自技高网...

【技术保护点】
1.一种集群成员状态震荡防止方法,其特征在于,该方法应用于网络设备,包括:在本设备满足加入集群的条件时,先判断指定存储介质是否记录了本设备的设备状态信息,如果否,加入所述集群并在指定存储介质记录本设备的设备状态信息;其中,本设备的设备状态信息至少包括集群成员时间,所述集群成员时间为本设备加入集群的时间;如果是,当依据本设备的设备状态信息中记录的集群成员时间确定本设备延时加入集群时,计算延时时间,并在所述延时时间后加入所述集群。

【技术特征摘要】
1.一种集群成员状态震荡防止方法,其特征在于,该方法应用于网络设备,包括:在本设备满足加入集群的条件时,先判断指定存储介质是否记录了本设备的设备状态信息,如果否,加入所述集群并在指定存储介质记录本设备的设备状态信息;其中,本设备的设备状态信息至少包括集群成员时间,所述集群成员时间为本设备加入集群的时间;如果是,当依据本设备的设备状态信息中记录的集群成员时间确定本设备延时加入集群时,计算延时时间,并在所述延时时间后加入所述集群。2.根据权利要求1所述的方法,其特征在于,所述依据本设备的设备状态信息中记录的集群成员时间确定本设备延时加入集群包括:计算当前系统时间与本设备的设备状态信息中最近记录的集群成员时间之差D;若所述D小于预设的成员状态稳定时间阈值T,则确定本设备延时加入集群。3.根据权利要求1所述的方法,其特征在于,所述计算延时时间包括:确定本设备的设备状态信息中已记录的集群成员时间的数量N;对所述N进行设定运算得到延时时间。4.根据权利要求3所述的方法,其特征在于,所述对N进行设定运算得到延时时间包括:将N与指定时间T0进行相乘,得到M1;将所述M1进行求平方运算得到M2;将所述M2确定为所述延时时间。5.根据权利要求1所述的方法,其特征在于,所述在所述延时时间后加入所述集群进一步包括:将本设备加入集群的时间作为集群成员时间记录至本设备的设备状态信息中。6.根据权利要求1所述的方法,其特征在于,在判断指定存储介质记录了本设备的设备状态信息之后,若依据本设备的设备状态信息中记录的集群成员时间确定本设备不延时加入集群,则该方法进一步包括:从指定存储介质删除本设备的设备状态信息;加入所述集群并在指定存储介质重新记录本设备的设备状态信息,重新记录的本设备的设备状态信息...

【专利技术属性】
技术研发人员:王汉
申请(专利权)人:新华三技术有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1