[发明专利]一种集群选举设计方法在审
申请号: | 201310436866.2 | 申请日: | 2013-09-24 |
公开(公告)号: | CN103491168A | 公开(公告)日: | 2014-01-01 |
发明(设计)人: | 范明彬;张在贵 | 申请(专利权)人: | 浪潮电子信息产业股份有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 250014 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 集群 选举 设计 方法 | ||
技术领域
本发明涉及计算机技术领域,具体涉及一种集群选举设计方法。
技术背景
集群技术是一种较新的技术,通过集群技术,可以在付出较低成本的情况下获得在性能、可靠性、灵活性方面的相对较高的收益。
就目前应用来说,集群技术主要分为两类:高可用性集群和高性能集群。高可用性集群的主要功能就是提供不间断的服务,有许多应用程序必须一天二十四小时地不停运转,如所有的web服务器、工业控制器、ATM、远程通讯转接器、医学与军事检测仪以及股票处理机等。对这些应用程序而言,暂时的停机都会导致数据的丢失和灾难性的后果。
高性能集群通过将多台机器连接起来同时处理复杂的计算问题。模拟星球附近的磁场、预测龙卷风的出现、定位石油资源的储藏地等情况都需要对大量的数据进行处理。传统的处理方法是使用超级计算机来完成计算工作,但是超级计算机的价格比较昂贵,而且可用性和扩展性不够强,因此集群成为了高性能计算领域瞩目的焦点。
无论是高可用性集群,还是高性能集群,都要求在任务运行过程中服务不中断,提供完整高可用服务,而在多个集群节点之间,需要一个leader节点来监控集群中各个节点的状态,并做实时调整。而选举方法就显得格外重要。
发明内容
本发明要解决的技术问题是:在多个集群节点之间,选举一个leader节点。
本发明所采用的技术方案为:一种集群选举设计方法,在选举过程中,每个节点都可以发起选举并回复其他节点的选举请求,当一个processor发起一次选举时,所有的节点则为该节点的acceptors(同时也可作为processor发起选举),当acceptors接收到processor发送的选举请求后,acceptors判断本身id(a_id)与processor的id(p_id)大小,若a_id小于p_id,则该acceptor则重新发起一次选举,若a_id大于p_id,则回复ack,表示同意processor为leader节点。若超过半数的acceptors回复ack,则该processor则成为新的leader。若发起选举超过5秒,仍未有半数的人回复ack,且没有新的leader产生,则该processor节点将重新发起一次选举,直至新的leader产生为止。
一种集群选举设计方法的实现步骤:
(1)node1(id为0)发起一个选举前,首先遍历自己的quorum数组,发现其存放的id,,确定对应的对应node2、node3……。
(2)node1向node2、node3……节点发起一个选举P,epoch设置为1。
(3)node2、node3……接收到node1发起的选举请求后,首先对比自身epoch与node1发来的epoch,若比其小,则继续比较id大小,发现node1的id比较小,说明node1的优先级比较高,则回复ack。若a_id小于p_id,则由该节点重新发起一次选举。
(4)node1接收到ack后,加上自身的ack,计算收到的ack数目,经过判断其值大于quorum长度的二分之一,将epoch加1(修改为2),连同获得选举消息(V)一起发给node2、node3……。node1成为新的leader,并完成此次选举。
(5)node2、node3……接收到node1发来的epoch和获胜消息,确认node1为新的leader,并结束此次选举。
注:Processors:提出选举请求,即选举的发起者。该角色每次只能发起一个选举请求。
Acceptors:请求的接受者,即接受processors提出的请求,并作回应。每次只能接受一个选举请求。
在选举过程中,每个节点可能会同时担任这两个角色。
id: 整形数,集群中每个节点的唯一识别符,不得重复,id越小其成为leader的概率越高。
epoch:整形数,发起每次选举的唯一标示,若epoch为奇数,则集群正在进行选举,若为偶数,则选举结束。小于自身epoch的选举为过期选举。
quorum:数组,存放节点id的有效列表,列表中的节点存在且处于运行状态。
本发明的有益效果为:本发明所提出基于集群节点间的选举算法,实现集群节点之间的leader选举,并在leader失效后,重新发起新的选举。保证了集群的高可用服务,提高了集群的持续工作能力。
附图说明
图1为一个3个节点的选举流程图。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮电子信息产业股份有限公司,未经浪潮电子信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310436866.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种粘性土壤中大规格乔木的种植方法
- 下一篇:光伏组件吊接线盒实验装置及方法