发明名称 基于仲裁磁盘的高可用系统不间断运行方法
摘要 本发明揭示了一种通过磁盘进行信息交互的技术使高可用系统可以不间断运行的方法。本发明针对具有共享存储设备的多节点高可用集群系统,在共享存储上划定一小块空间作为仲裁磁盘使用。高可用的各节点可以同时读写仲裁磁盘。各节点的仲裁磁盘守护进程将节点的状态信息写入仲裁磁盘,并对所有节点在仲裁磁盘中保存的信息进行检测,在节点故障和出现网络分区时,从正常工作节点中智能选举整个集群的主控节点,使集群系统恢复到正常工作状态,从而避免高可用系统脑裂发生,保证高可用系统不间断正常运行。
申请公布号 CN102402395B 申请公布日期 2014.07.16
申请号 CN201010283228.8 申请日期 2010.09.16
申请人 中标软件有限公司 发明人 兰雨晴;王阳利;梁昕;刘涛;张永军;刘明;姚超;夏颖
分类号 G06F3/06(2006.01)I;G06F15/167(2006.01)I;H04L29/08(2006.01)I 主分类号 G06F3/06(2006.01)I
代理机构 北京汇智英财专利代理事务所(普通合伙) 11301 代理人 潘光兴
主权项 一种基于仲裁磁盘的高可用系统不间断运行方法,运用于有共享存储设备的多节点集群中,其特征在于:包括一个仲裁磁盘,集群中每个节点能够同时读写该仲裁磁盘,且在每个节点上运行的仲裁磁盘守护进程把各节点的信息写入该仲裁磁盘上与各节点对应的节点信息区域,并对所有节点在仲裁磁盘中保存的信息进行检测,在节点故障和出现网络分区时,该仲裁磁盘守护进程选举节点连接个数最多的网络分区的控制节点作为整个集群的主控节点,使其获得仲裁权,从而实现以节点连接个数最多的网络分区代表集群对外提供服务;其中所述选举节点连接个数最多的网络分区的控制节点作为主控节点的步骤包括:在选举之前,运行于各节点上的仲裁磁盘守护进程从仲裁磁盘中读取各节点信息,各节点信息经处理后放入节点信息结构数组中,由仲裁磁盘守护进程检查各节点信息结构数组中的内容,判断每个节点所在网络分区的节点连接个数是否达到节点总数的半数以上,若是,表明有超半数节点心跳连接,则由仲裁磁盘守护进程给集群发送取消磁盘仲裁权的消息;如果判断每个节点所在网络分区的节点连接个数没有达到节点总数的半数以上,表明集群中没有超半数节点有心跳连接,此时由仲裁磁盘守护进程选举有磁盘仲裁状态的网络分区,有磁盘仲裁状态的网络分区是该网络分区中节点连接个数最多。
地址 200030 上海市番禺路1028号1006-1010室