System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请实施例涉及计算机,尤其涉及节点管理方法和装置。
技术介绍
1、分布式集群系统一般包括主节点(master)、工作节点(slave)和负责分布式协调服务的监控节点。master是整个集群的大脑,负责元数据管理、工作节点负载均衡、集群状态监控等。slave负责数据存储和读写请求。监控节点维护分布式系统中各节点的健康状态管理和故障通知
2、分布式集群系统中各个工作节点启动时将自身的健康状态注册到分布式协调服务中,并通过定期心跳机制向监控上报自己的健康状态,以此向集群系统报告自己可继续提供服务。
3、然而,相关技术中分布式集群系统中工作节点可能因为处理一些正常事件而无法及时向监控节点上报自己的健康状态,而因为心跳超时而被从集群中摘除,导致分布式集群系统可用性和稳定性降低。
4、为此,如何避免分布式集群系统中工作节点被错误摘除是本领域技术人员亟需解决的问题之一。
技术实现思路
1、本申请实施例提供了节点管理方法和装置,能够避免分布式集群系统中工作节点被错误摘除。为达到上述目的,本申请实施例采用如下技术方案:
2、第一方面,本申请实施例了一种节点管理方法,该方法包括:首先监控节点与工作节点集群中的第一工作节点建立心跳会话。然后上述监控节点获取上述第一工作节点的目标事件状态。之后若上述监控节点与上述第一工作节点之间的心跳会话建立超时,且上述第一工作节点执行目标事件超时,则上述监控节点确定上述第一工作节点为异常节点。其中,上述目标事件状态用于指
3、相关技术中,监控节点通过工作节点的心跳会话状态判断工作节点是否异常,但工作节点会因为处理一些正常事件而无法及时向监控节点返回心跳响应,而被监控节点误判为异常工作节点。而在本申请实施例提供的方法中,监控节点通过工作节点的心跳会话状态和事件状态共同判断工作节点是否异常,在监控节点与第一工作节点之间的心跳会话建立超时,且上述第一工作节点执行目标事件超时才确定第一工作节点为异常节点。这样就可以避免工作节点因为处理一些垃圾回收(gc)、负载均衡(rebalance)等正常事件而无法及时向监控节点返回心跳响应而被误判为异常工作节点,由此避免了分布式集群系统中工作节点被错误摘除。
4、在一种可能的实现方式中,上述方法还可以包括:若上述监控节点与上述第一工作节点之间的心跳会话建立超时,但上述第一工作节点执行目标事件未超时,则上述监控节点确定上述第一工作节点为正常节点。
5、可以看出,本申请实施例提供的方法在上述监控节点与上述第一工作节点之间的心跳会话建立超时,不会将工作节点判定位异常工作节点直接摘除,而是进一步判断工作节点的目标事件是否超时。这样就可以避免工作节点因为处理一些垃圾回收(gc)、负载均衡(rebalance)等正常事件而无法及时向监控节点返回心跳响应而被误判为异常工作节点,由此避免了分布式集群系统中工作节点被错误摘除。
6、在一种可能的实现方式中,上述监控节点可以部署协调服务(zookeeper)以获取上述第一工作节点的目标事件信息;然后上述监控节点根据上述目标事件信息确定上述第一工作节点的目标事件状态。其中,上述目标事件信息包括上述第一工作节点执行目标事件的运行时长和上述第一工作节点执行目标事件的时长阈值。
7、例如,若上述目标事件的运行时长大于上述目标事件的时长阈值,则上述监控节点确定上述目标事件超时。反之,若上述目标事件的运行时长小于上述目标事件的时长阈值,则上述监控节点确定上述目标事件未超时。
8、可以看出,本申请实施例提供的方法可以通过部署协调服务(zookeeper)以获取工作节点执行目标事件的运行时长和工作节点执行目标事件的时长阈值判断工作节点执行目标事件是否超时并根据工作节点执行目标事件是否超时作为异常工作节点的二次判断条件。相较于仅通过工作节点的心跳会话状态判断工作节点是否异常,可以避免工作节点因为处理一些垃圾回收(gc)、负载均衡(rebalance)等正常事件而无法及时向监控节点返回心跳响应而被误判为异常工作节点,由此避免了分布式集群系统中工作节点被错误摘除。
9、在一种可能的实现方式中,上述方法还可以包括:若上述第一工作节点为异常节点,则上述监控节点向上述工作节点集群中的第二工作节点发送迁移信息,上述迁移信息用于指示上述第二工作节点替代上述第一工作节点来提供服务。
10、可以理解的是,第一工作节点异常说明第一工作节点可能无法再向与其连接的客户端设备提供服务,因此需要将其提供的服务迁移至工作节点集群中状态正常的工作节点中,由此保障了与第一工作节点连接的客户端设备服务的可靠性。
11、第二方面,本申请实施例了一种节点管理装置,所述装置包括:会话模块、事件模块和确定模块。所述会话模块,用于与工作节点集群中的第一工作节点建立心跳会话。所述事件模块,用于获取所述第一工作节点的目标事件状态,所述目标事件状态用于指示所述第一工作节点执行目标事件是否超时,所述目标事件包括垃圾回收gc和负载均衡rebalance中的至少一项。所述确定模块,用于若与所述第一工作节点之间的心跳会话建立超时,且所述第一工作节点执行目标事件超时,则确定所述第一工作节点为异常节点。
12、在一种可能的实现方式中,所述确定模块还用于:若与所述第一工作节点之间的心跳会话建立超时,但所述第一工作节点执行目标事件未超时,则确定所述第一工作节点为正常节点。
13、在一种可能的实现方式中,所述事件模块具体用于:部署协调服务zookeeper以获取所述第一工作节点的目标事件信息,所述目标事件信息包括所述第一工作节点执行目标事件的运行时长和所述第一工作节点执行目标事件的时长阈值;根据所述目标事件信息确定所述第一工作节点的目标事件状态。
14、在一种可能的实现方式中所述确定模块还用于:若所述第一工作节点为异常节点,则向所述工作节点集群中的第二工作节点发送迁移信息,所述迁移信息用于指示所述第二工作节点替代所述第一工作节点来提供服务。
15、第三方面,本申请实施例还提供一种节点管理装置,该节点管理装置包括:至少一个处理器,当所述至少一个处理器执行程序代码或指令时,实现上述第一方面或其任意可能的实现方式中所述的方法。
16、可选地,该节点管理装置还可以包括至少一个存储器,该至少一个存储器用于存储该程序代码或指令。
17、第四方面,本申请实施例还提供一种芯片,包括:输入接口、输出接口、至少一个处理器。可选地,该芯片还包括存储器。该至少一个处理器用于执行该存储器中的代码,当该至少一个处理器执行该代码时,该芯片实现上述第一方面或其任意可能的实现方式中所述的方法。
18、可选地,上述芯片还可以为集成电路。
19、第五方面,本申请实施例还提供一种计算机可读存储介质,本文档来自技高网...
【技术保护点】
1.一种节点管理方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1或2所述的方法,其特征在于,所述监控节点获取所述第一工作节点的目标事件状态,包括:
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述方法还包括:
5.一种节点管理装置,其特征在于,所述装置包括:会话模块、事件模块和确定模块;
6.根据权利要求5所述的装置,其特征在于,所述确定模块还用于:
7.根据权利要求5或6所述的装置,其特征在于,所述事件模块具体用于:
8.根据权利要求5至7中任一项所述的装置,其特征在于,所述确定模块还用于:
9.一种节点管理装置,包括至少一个处理器和存储器,其特征在于,所述至少一个处理器执行存储在存储器中的程序或指令,以使得所述节点管理装置实现上述权利要求1至4中任一项所述的方法。
10.一种计算设备集群,其特征在于,包括至少一个计算设备,每个计算设备包括处理器和存储器;
11.一种包含指令的计算机程序
12.一种计算机可读存储介质,其特征在于,包括计算机程序指令,当所述计算机程序指令由计算设备集群执行时,所述计算设备集群执行如权利要求1至4中任一项所述的方法。
...【技术特征摘要】
1.一种节点管理方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1或2所述的方法,其特征在于,所述监控节点获取所述第一工作节点的目标事件状态,包括:
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述方法还包括:
5.一种节点管理装置,其特征在于,所述装置包括:会话模块、事件模块和确定模块;
6.根据权利要求5所述的装置,其特征在于,所述确定模块还用于:
7.根据权利要求5或6所述的装置,其特征在于,所述事件模块具体用于:
8.根据权利要求5至7中任一项所述的装置,其特征在于,所述...
【专利技术属性】
技术研发人员:王抗战,吕红,
申请(专利权)人:华为云计算技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。