CN116260827A - 一种集群中领导者的选举方法、选举系统及相关装置 - Google Patents
一种集群中领导者的选举方法、选举系统及相关装置 Download PDFInfo
- Publication number
- CN116260827A CN116260827A CN202310076879.7A CN202310076879A CN116260827A CN 116260827 A CN116260827 A CN 116260827A CN 202310076879 A CN202310076879 A CN 202310076879A CN 116260827 A CN116260827 A CN 116260827A
- Authority
- CN
- China
- Prior art keywords
- node
- leader
- cluster
- election
- standby
- 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
- 238000000034 method Methods 0.000 title claims abstract description 48
- 230000010076 replication Effects 0.000 claims description 23
- 238000004891 communication Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 10
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 8
- 230000001360 synchronised effect Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 3
- 239000000306 component Substances 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 239000008358 core component Substances 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
- H04L67/1051—Group master selection mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0663—Performing the actions predefined by failover planning, e.g. switching to standby network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种集群中领导者的选举方法,包括:确定所述集群中的主节点和备节点;利用数据同步链路执行所述主节点和所述备节点之间的数据同步;确定所述数据同步中的节点角色,并根据所述节点角色执行领导者选举,并在确定领导者后更新领导租约时间。本申请通过建立主节点和备节点之间的数据同步链路,确保集群节点对应控制平面的数据一致,在此基础上,根据节点的节点角色执行领导者选举,令集群控制平面在双节点环境仍保持高可用,实现了双节点有限资源环境下集群管理高可用。本申请还提供一种集群中领导者的选举系统、计算机可读存储介质和服务器,具有上述有益效果。
Description
技术领域
本申请涉及存储设备领域,特别涉及一种集群中领导者的选举方法、选举系统及相关装置。
背景技术
在云计算时代,随着微服务和容器化的普及,越来越多的公司将其服务迁移至K8S集群(Kubernetes的简称,是Google开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理)中,通过Kubernetes可以实现简单且高效的部署容器化。
控制平面为一组用于Kubernetes集群管理的核心组件,它们之间的任意一个组件不可用,都可能造成用户的请求无法得到及时处理,业务可能因此受到影响。为此,在Kubernetes集群同时开启多组控制平面,可以通过某种选举机制选出一组控制平面作为领导者提供服务。但由于K8S的集群控制平面高可用复杂度较高,受限于资源限制,因此如何执行K8S领导者选举是本领域技术人员亟需解决的技术问题。
发明内容
本申请的目的是提供一种集群中领导者的选举方法、选举系统、计算机可读存储介质和服务器,能够实现有限资源下的双节点领导者选举以及集群管理高可用。
为解决上述技术问题,本申请提供一种集群中领导者的选举方法,具体技术方案如下:
确定所述集群中的主节点和备节点;
利用数据同步链路执行所述主节点和所述备节点之间的数据同步;
确定所述数据同步中的节点角色,并根据所述节点角色执行领导者选举,并在确定领导者后更新领导租约时间。
可选的,确定所述集群中的主节点和备节点之前,还包括:
建立节点之间的控制平面心跳链路;
则确定所述集群中的主节点和备节点包括:
根据所述控制平面心跳链路的链路通信状态确定所述主节点和所述备节点。
可选的,利用数据同步链路执行所述主节点和所述备节点之间的数据同步之前,还包括:
分别在所述主节点和所述备节点上部署分布式块设备复制模块;
根据分布式块设备复制模块构建所述数据同步链路;其中,所述数据同步链路与所述控制平面心跳链路分别绑定同一节点的不同网卡。
可选的,分别在所述主节点和所述备节点上部署分布式块设备复制模块之后,还包括:
基于所述分布式块设备复制模块的目录部署所述集群的数据库。
可选的,根据所述节点角色执行领导者选举包括:
所述主节点通过所述控制平面心跳链路向所述备节点发送状态信息,并在所述状态信息发送后由所述主节点上的第一领导者选举模块更新领导者租约时间;
在所述备节点接收到所述状态信息后,由所述备节点上的第二领导选举模块确认所述主节点的领导角色,维持所述备节点的控制平面服务为等待状态。
可选的,所述主节点通过所述控制平面心跳链路向所述备节点发送状态信息包括:
所述主节点利用网络套接字控制所述控制平面心跳链路向所述备节点周期性发送状态信息。
可选的,若所述备节点在预设时间内未接收到所述状态信息,还包括:
所述备节点升级为新主节点,同时所述主节点成为新备节点;
所述第一领导者选举模块检测到所述主节点的节点角色变更后,重新选取领导者,并终止所述领导者租约时间。
本申请还提供一种集群中领导者的选举系统,包括:
节点确定模块,用于确定所述集群中的主节点和备节点;
数据同步模块,用于利用数据同步链路执行所述主节点和所述备节点之间的数据同步;
领导者选举模块,用于确定所述数据同步中的节点角色,并根据所述节点角色执行领导者选举,并在确定领导者后更新领导租约时间。
基于上述实施例,作为优选的实施例,还包括:
心跳连接模块,用于建立节点之间的控制平面心跳链路;
则节点确定模块为用于根据所述控制平面心跳链路的链路通信状态确定所述主节点和所述备节点的模块。
基于上述实施例,作为优选的实施例,还包括:
同步链路构建模块,用于分别在所述主节点和所述备节点上部署分布式块设备复制模块;根据分布式块设备复制模块构建所述数据同步链路;其中,所述数据同步链路与所述控制平面心跳链路分别绑定同一节点的不同网卡。
基于上述实施例,作为优选的实施例,还包括:
数据库部署模块,用于基于所述分布式块设备复制模块的目录部署所述集群的数据库。
基于上述实施例,作为优选的实施例,领导者选举模块包括:
领导者选举单元,设于主节点,用于通过所述控制平面心跳链路向所述备节点发送状态信息,并在所述状态信息发送后更新领导者租约时间;以及在所述备节点接收到所述状态信息后,由所述备节点上的第二领导选举模块确认所述主节点的领导角色,维持所述备节点的控制平面服务为等待状态。
基于上述实施例,作为优选的实施例,领导者选举单元包括:
状态信息发送子单元,用于利用网络套接字控制所述控制平面心跳链路向所述备节点周期性发送状态信息。
基于上述实施例,作为优选的实施例,还包括:
节点更新模块,用于若所述备节点在预设时间内未接收到所述状态信息所述备节点升级为新主节点,同时所述主节点成为新备节点;所述第一领导者选举模块检测到所述主节点的节点角色变更后,重新选取领导者,并终止所述领导者租约时间。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的方法的步骤。
本申请还提供一种服务器,包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如上所述的方法的步骤。
本申请提供一种集群中领导者的选举方法,包括:确定所述集群中的主节点和备节点;利用数据同步链路执行所述主节点和所述备节点之间的数据同步;确定所述数据同步中的节点角色,并根据所述节点角色执行领导者选举,并在确定领导者后更新领导租约时间。
本申请通过建立主节点和备节点之间的数据同步链路,确保集群节点对应控制平面的数据一致,在此基础上,根据节点的节点角色执行领导者选举,令集群控制平面在双节点环境仍保持高可用,实现了双节点有限资源环境下集群管理高可用。
本申请还提供一种集群中领导者的选举系统、计算机可读存储介质和服务器,具有上述有益效果,此处不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例所提供的一种集群中领导者的选举方法的流程图;
图2为本申请实施例所提供的一种集群中领导者的选举系统结构示意图;
图3为本申请实施例所提供的一种服务器的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参考图1,图1为本申请实施例所提供的一种集群中领导者的选举方法的流程图,该方法包括:
S101:确定所述集群中的主节点和备节点;
本步骤旨在确定集群中的主节点和备节点,在此对于如何确定主节点和备节点不作限定,其可以直接指定主节点和备节点,也可以根据预设的主节点选举机制确定节点中的主节点和相应的备节点。例如可以在集群执行初始化时直接指定双节点其中之一为主节点,另一节点自然为备节点。
当然主节点和备节点在集群中的作用并不相同,因此,可以根据实际节点的节点工作状态确定主节点和备节点。
一种可行的方式是,在确定集群中主节点和备节点前,可以先建立节点之间的控制平面心跳链路,用于实现节点之间的心跳连接。该控制平面心跳链路可以为双链路,以实现备节点对主节点运行状态的感知和监控。在建立控制平面心跳链路后,可以设置各节点的节点角色,即指定主节点和备节点。
S102:利用数据同步链路执行所述主节点和所述备节点之间的数据同步;
本步骤旨在执行主节点和备节点之间的数据同步。在此对于采用何种数据同步链路不作限定,一种可行的实施方式中,可以分别在主节点和备节点上设置DRBD(Distributed Replicated Block Device)模块,即分布式块设备复制模块,用于实现主节点和备节点之间的数据同步。更为优选的执行方式中,可以事先在主节点和备节点上部署分布式块设备复制模块,同时令集群数据库基于分布式块设备复制模块的目录进行部署,如此有利于确保主节点的数据能够实时同步至备节点。在建立分布式块设备复制模块后,可以会直接根据分布式块设备复制模块构建数据同步链路,即通过两个节点上各自包含的分布式块设备复制模块构建数据同步链路。
作为一种优选的实施例,若在上一步骤中建立了节点之间的控制平面心跳链路,则主节点利用网络套接字通过控制平面心跳链路不断向备节点发送信息,备节点接受主节点返送来信息,即可确认主节点控制平面正常运行。
S103:确定所述数据同步中的节点角色,并根据所述节点角色执行领导者选举,并在确定领导者后更新领导租约时间。
本步骤旨在根据节点角色执行领导者选举,通常而言主节点对应的控制平面作为领导者控制平面。即根据各节点的节点角色确定领导者。同时,在确定领导者后,需要更新领导租约时间。在每一次确定领导者后,以及主节点和备节点建立心跳连接时,均可以更新领导租约时间。换言之,领导租约时间一方面可以确保主节点控制平面的领导者身份有效期,另一方面,避免由于主节点异常时其依旧保持领导者控制平面的身份影响集群的正常运行。
在此对于领导租约时间的具体时长不作限定,容易理解的是,该领导租约时间可以与主节点与备节点之间建立心跳连接的周期时长相适配,即领导租约时间可以大于主节点和备节点之间建立心跳连接的周期时长。
在本实施例中,为了避免链路之间的互相干扰,所建立的控制平面心跳链路以及数据同步链路可以分别绑定主节点和备节点上的不同网卡,即控制平面链路和数据同步链路相互独立,互不干扰。
本申请实施例通过建立主节点和备节点之间的数据同步链路,确保集群节点对应控制平面的数据一致,在此基础上,根据节点的节点角色执行领导者选举,令集群控制平面在双节点环境仍保持高可用,实现了双节点有限资源环境下集群管理高可用。
在上述实施例的基础上,作为优选的实施例,下文对领导者选举过程进行具体说明,可以事先在主节点以及备节点上分别配置第一领导者选举模块和第二领导者选举模块,则具体的过程可以如下:
主节点通过控制平面心跳链路向备节点发送状态信息,并在状态信息发送后由主节点上的第一领导者选举模块更新领导者租约时间;
在备节点接收到状态信息后,由备节点上的第二领导选举模块确认主节点的领导角色,维持备节点的控制平面服务为等待状态。
无论是第一领导者选举模块还是第二领导者选举模块,均可以起到监控节点之间的心跳连接。例如,第一领导者选举模块可以监控主节点是否发送心跳信息至备节点,而第二领导者选举模块可以监控是否接收到主节点发送的心跳信息。每次发送心跳信息后,即可利用第一领导者选举模块更新领导者租约时间。可以看出,领导者租约时间可由第一领导者选举模块所管控,也可以直接存于第一领导者选举模块之中。而第二领导者选举模块由于位于备节点上,则在接收到心跳信息后,可以确认主节点继续保持领导者控制平面的角色,此时可以继续维持备节点的控制平面为等待状态。
则此时本申请实施例对应的完整执行过程可以如下:
第一步、确定所述集群中的主节点和备节点;
第二步、利用数据同步链路执行所述主节点和所述备节点之间的数据同步;
第三步、确定所述数据同步中的节点角色,并根据所述节点角色执行领导者选举;
第四步、主节点通过控制平面心跳链路向备节点发送状态信息,并在状态信息发送后由主节点上的第一领导者选举模块更新领导者租约时间;
第五步、在备节点接收到状态信息后,由备节点上的第二领导选举模块确认主节点的领导角色;
第六步、在确定领导者后更新领导租约时间,维持备节点的控制平面服务为等待状态。
在此对于主节点通过控制平面心跳链路向备节点发送状态信息不作限定,一种可行的方式中,主节点可以利用网络套接字控制控制平面心跳链路向备节点周期性发送状态信息。
可以看出,无论是第一领导者选举模块还是第二领导者选举模块,一方面可以用于监控心跳连接,另一方面用于确认其所在节点的控制平面的角色状态。一旦出现异常,将及时对所在节点的控制平面进行角色调整。
下文以心跳连接异常作为一种典型的异常方式,对出现异常时,主节点和备节点对应控制平面角色变化的过程进行说明:
若备节点在预设时间内未接收到状态信息,备节点升级为新主节点,同时主节点成为新备节点,同时第一领导者选举模块检测到主节点的节点角色变更后,重新选取领导者,并终止领导者租约时间。
在此对于预设时长不作限定,其至少应超过一个心跳连接周期时长。例如若心跳连接时长为5秒,即主节点需要每隔5秒向备节点发送心跳连接,则相应的该预设时长可以为30秒或者40秒等。此时原主节点和备节点的身份对调,即备节点升级为新主节点,主节点成为新备节点。需要注意的是,身份对调适用于双节点的应用场景。若是针对两个以上的多节点,此时可以改根据主节点选举机制重新进行主节点的选举。
在重新确定主节点后,对应的新主节点的控制平面作为领导者控制平面,此时位于新主节点上的第二领导者选举模块需要确认自身所在节点的控制平面为领导者控制平面,同时更新领导者租约时间。若新备节点的控制平面无异常,新备节点上的第一领导者选举模块则需要将新备节点对应的控制平面维持在等待状态。
下文对于本申请的一种具体应用过程进行描述,该具体应用过程中,以Kubernetes集群为例进行说明:
第一步、对于Kubernetes集群中两个节点,指定其中之一为主节点,另一节点为备节点,主节点与备节点建立控制平面心跳链路,检测两节点联通状态,维护两个节点主备角色唯一性;
第二步、在两节点上部署分布式块设备复制模块,K8S数据库基于分布式块设备复制模块的目录部署,确保主节点数据实时同步至备节点;
第三步、将控制平面心跳链路与基于分布式块设备复制模块的数据同步链路分别绑定到主节点和备节点上的不同的网卡上,并进行连通;
第四步、部署K8S集群,主节点和备节点同时初始化控制平面,启动控制平面所有核心组件,并同时初始化自身对应的第一领导者选举模块以及第二领导者选举模块,无论是第一领导者选举模块还是第二领导者选举模块,均起到以下作用:
4a、领导者选举装置监控节点上控制平面心跳链路;
4b、领导者选举装置根据节点角色更新领导者租约或结束领导者租期选举新的领导者;
第五步、主节点通过控制平面心跳链路,每隔5秒向备节点发送执行心跳连接的状态信息,备节点接收主节点的状态信息;主节点的第一领导者选举模块更新领导者租约时间,备节点的第二领导者选举模块确认主节点领导角色,维持备节点控制平面服务为等待状态;
第六步、若备节点持续40秒未接收主节点心跳信息,检测数据同步链路状态,确认数据目录联通;
6a、备节点升级为新主节点,原主节点因失去数据目录联通,出让主节点角色,成为新备节点;
6b、第一领导者选举模块和第二领导者选举模块均检测到节点角色变更,重新选取领导者,新主节点获得领导者租约,更新领导者租约时间;新备节点,也即原主节点的领导者控制平面转为等待服务状态,第一领导者选举模块确认新的领导者控制平面。
可见,本申请实施例使得Kubernetes集群控制平面在双节点环境仍保持高可用,扩展了Kubernetes集群在有限资源环境使用性,通过在各节点配置领导者选举模块,采用DRBD数据同步技术,实现Kubernetes集群管理高可用,进而实现了双节点有限资源环境下Kubernetes集群管理高可用。
本申请实施例通过建立控制平面心跳链路,可以根据链路通信状态,自定义操作变更节点角色,确保主节点与备节点唯一性。同时利用DRBD技术实现两节点间数据同步,确保K8S集群控制平面数据一致。还在节点上设置领导者选举模块,用于识别所在节点角色,并根据节点角色实现领导者选举,实现K8S集群领导者选举机制,更新领导租约时间。同时将心跳链路与数据同步链路分别绑定两节点不同网卡,有效避免链路间相互干扰。
下面对本申请实施例提供的集群中领导者的选举系统进行介绍,下文描述的选举系统与上文描述的集群中领导者的选举方法可相互对应参照。
参见图2,图2为本申请实施例所提供的一种集群中领导者的选举系统结构示意图,本申请还提供一种集群中领导者的选举系统,包括:
节点确定模块,用于确定所述集群中的主节点和备节点;
数据同步模块,用于利用数据同步链路执行所述主节点和所述备节点之间的数据同步;
领导者选举模块,用于确定所述数据同步中的节点角色,并根据所述节点角色执行领导者选举,并在确定领导者后更新领导租约时间。
本申请实施例通过建立主节点和备节点之间的数据同步,在此基础上,根据节点的节点角色执行领导者选举,令集群控制平面在双节点环境仍保持高可用,实现了双节点有限资源环境下集群管理高可用。
基于上述实施例,作为优选的实施例,还包括:
心跳连接模块,用于建立节点之间的控制平面心跳链路;
则节点确定模块为用于根据所述控制平面心跳链路的链路通信状态确定所述主节点和所述备节点的模块。
基于上述实施例,作为优选的实施例,还包括:
同步链路构建模块,用于分别在所述主节点和所述备节点上部署分布式块设备复制模块;根据分布式块设备复制模块构建所述数据同步链路;其中,所述数据同步链路与所述控制平面心跳链路分别绑定同一节点的不同网卡。
基于上述实施例,作为优选的实施例,还包括:
数据库部署模块,用于基于所述分布式块设备复制模块的目录部署所述集群的数据库。
基于上述实施例,作为优选的实施例,领导者选举模块包括:
领导者选举单元,设于主节点,用于通过所述控制平面心跳链路向所述备节点发送状态信息,并在所述状态信息发送后更新领导者租约时间;以及在所述备节点接收到所述状态信息后,由所述备节点上的第二领导选举模块确认所述主节点的领导角色,维持所述备节点的控制平面服务为等待状态。
基于上述实施例,作为优选的实施例,领导者选举单元包括:
状态信息发送子单元,用于利用网络套接字控制所述控制平面心跳链路向所述备节点周期性发送状态信息。
基于上述实施例,作为优选的实施例,还包括:
节点更新模块,用于若所述备节点在预设时间内未接收到所述状态信息所述备节点升级为新主节点,同时所述主节点成为新备节点;所述第一领导者选举模块检测到所述主节点的节点角色变更后,重新选取领导者,并终止所述领导者租约时间。
本申请还提供了一种计算机可读存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请还提供了一种服务器,可以包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时,可以实现上述实施例所提供的方法的步骤。当然所述服务器还可以包括各种网络接口,电源等组件。请参见图3,图3为本申请实施例所提供的一种服务器的结构示意图,本实施例的服务器可以包括:处理器2101和存储器2102。
可选的,该服务器还可以包括通信接口2103、输入单元2104和显示器2105和通信总线2106。
处理器2101、存储器2102、通信接口2103、输入单元2104、显示器2105、均通过通信总线2106完成相互间的通信。
在本申请实施例中,该处理器2101,可以为中央处理器(Central ProcessingUnit,CPU),特定应用集成电路,数字信号处理器、现成可编程门阵列或者其他可编程逻辑器件等。
该处理器可以调用存储器2102中存储的程序。具体的,处理器可以执行上文的实施例中服务器所执行的操作。
存储器2102中用于存放一个或者一个以上程序,程序可以包括程序代码,所述程序代码包括计算机操作指令,在本申请实施例中,该存储器中至少存储有用于实现以下功能的程序:
确定所述集群中的主节点和备节点;
利用数据同步链路执行所述主节点和所述备节点之间的数据同步;
确定所述数据同步中的节点角色,并根据所述节点角色执行领导者选举,并在确定领导者后更新领导租约时间。
在一种可能的实现方式中,该存储器2102可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、以及至少一个功能所需的应用程序等;存储数据区可存储根据计算机的使用过程中所创建的数据。
此外,存储器2102可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件或其他易失性固态存储器件。
该通信接口2103可以为通信模块的接口,如GSM模块的接口。
本申请还可以包括显示器2105和输入单元2104等等。
图3所示的服务器的结构并不构成对本申请实施例中服务器的限定,在实际应用中服务器可以包括比图3所示的更多或更少的部件,或者组合某些部件。
本申请所提供的一种服务器同样可以实现上文任一实施例所描述的步骤,也可具有相应的技术效果,此处不再赘述。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例提供的系统而言,由于其与实施例提供的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种集群中领导者的选举方法,其特征在于,包括:
确定所述集群中的主节点和备节点;
利用数据同步链路执行所述主节点和所述备节点之间的数据同步;
确定所述数据同步中的节点角色,并根据所述节点角色执行领导者选举,并在确定领导者后更新领导租约时间。
2.根据权利要求1所述的选举方法,其特征在于,确定所述集群中的主节点和备节点之前,还包括:
建立节点之间的控制平面心跳链路;
则确定所述集群中的主节点和备节点包括:
根据所述控制平面心跳链路的链路通信状态确定所述主节点和所述备节点。
3.根据权利要求1所述的选举方法,其特征在于,利用数据同步链路执行所述主节点和所述备节点之间的数据同步之前,还包括:
分别在所述主节点和所述备节点上部署分布式块设备复制模块;
根据分布式块设备复制模块构建所述数据同步链路;其中,所述数据同步链路与所述控制平面心跳链路分别绑定同一节点的不同网卡。
4.根据权利要求3所述的选举方法,其特征在于,分别在所述主节点和所述备节点上部署分布式块设备复制模块之后,还包括:
基于所述分布式块设备复制模块的目录部署所述集群的数据库。
5.根据权利要求1所述的选举方法,其特征在于,根据所述节点角色执行领导者选举包括:
所述主节点通过所述控制平面心跳链路向所述备节点发送状态信息,并在所述状态信息发送后由所述主节点上的第一领导者选举模块更新领导者租约时间;
在所述备节点接收到所述状态信息后,由所述备节点上的第二领导选举模块确认所述主节点的领导角色,维持所述备节点的控制平面服务为等待状态。
6.根据权利要求5所述的选举方法,其特征在于,所述主节点通过所述控制平面心跳链路向所述备节点发送状态信息包括:
所述主节点利用网络套接字控制所述控制平面心跳链路向所述备节点周期性发送状态信息。
7.根据权利要求5所述的选举方法,其特征在于,若所述备节点在预设时间内未接收到所述状态信息,还包括:
所述备节点升级为新主节点,同时所述主节点成为新备节点;
所述第一领导者选举模块检测到所述主节点的节点角色变更后,重新选取领导者,并终止所述领导者租约时间。
8.一种集群中领导者的选举系统,其特征在于,包括:
节点确定模块,用于确定所述集群中的主节点和备节点;
数据同步模块,用于利用数据同步链路执行所述主节点和所述备节点之间的数据同步;
领导者选举模块,用于确定所述数据同步中的节点角色,并根据所述节点角色执行领导者选举,并在确定领导者后更新领导租约时间。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7任一项所述的集群中领导者的选举方法的步骤。
10.一种服务器,其特征在于,包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如权利要求1-7任一项所述的集群中领导者的选举方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310076879.7A CN116260827A (zh) | 2023-01-31 | 2023-01-31 | 一种集群中领导者的选举方法、选举系统及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310076879.7A CN116260827A (zh) | 2023-01-31 | 2023-01-31 | 一种集群中领导者的选举方法、选举系统及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116260827A true CN116260827A (zh) | 2023-06-13 |
Family
ID=86678692
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310076879.7A Pending CN116260827A (zh) | 2023-01-31 | 2023-01-31 | 一种集群中领导者的选举方法、选举系统及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116260827A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116980346A (zh) * | 2023-09-22 | 2023-10-31 | 新华三技术有限公司 | 基于云平台的容器管理方法及装置 |
-
2023
- 2023-01-31 CN CN202310076879.7A patent/CN116260827A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116980346A (zh) * | 2023-09-22 | 2023-10-31 | 新华三技术有限公司 | 基于云平台的容器管理方法及装置 |
CN116980346B (zh) * | 2023-09-22 | 2023-11-28 | 新华三技术有限公司 | 基于云平台的容器管理方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101947851B1 (ko) | Smb2 스케일아웃 기법 | |
CN111368002A (zh) | 一种数据处理方法、系统、计算机设备和存储介质 | |
JP2009514282A (ja) | 高い利用可能性を有するネットワークシステム | |
US20080244552A1 (en) | Upgrading services associated with high availability systems | |
CN111858045A (zh) | 一种多任务gpu资源调度方法、装置、设备及可读介质 | |
CN111045745A (zh) | 管理配置信息的方法和系统 | |
EP4050850A1 (en) | Service upgrading method, device and system | |
JP2022179423A (ja) | マスタースレーブアーキテクチャのota差分更新方法とシステム | |
CN110391940A (zh) | 服务地址的响应方法、装置、系统、设备和存储介质 | |
CN116260827A (zh) | 一种集群中领导者的选举方法、选举系统及相关装置 | |
CN112069154A (zh) | etcd分布式数据库自动运维方法及相关装置 | |
CN115373905B (zh) | 一种主备副本间的租约转移方法、装置以及设备 | |
CN102577249B (zh) | 动态寻址主机的连接的实例组 | |
CN116346834A (zh) | 一种会话同步方法、装置、计算设备及计算机存储介质 | |
CN105939384A (zh) | 网络请求处理方法及系统 | |
CN114598711B (zh) | 一种数据迁移方法、装置、设备及介质 | |
CN116132530A (zh) | 一种基于Netty框架应用Raft算法实现MQTT Broker服务器的方法 | |
US11290318B2 (en) | Disaster recovery of cloud resources | |
CN114153655A (zh) | 容灾系统创建方法、容灾方法、装置、设备及介质 | |
CN116860382A (zh) | 基于容器的微服务集群实现的方法及装置 | |
Ramasamy et al. | Hacm: high availability control method in container-based microservice applications over multiple clusters | |
JP2009245118A (ja) | アプリケーションサービス提供システム、及び方法、並びにアプリケーション移行方法 | |
CN111338647A (zh) | 一种大数据集群管理方法和装置 | |
CN114422567B (zh) | 数据请求的处理方法、装置、系统、计算机设备及介质 | |
CN116414915A (zh) | 分布式数据库集群的管控方法、装置和数据库管控平台 |
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 |