一种基于制造技术

技术编号:39846615 阅读:7 留言:0更新日期:2023-12-29 16:44
本发明专利技术公开了一种基于

【技术实现步骤摘要】
一种基于raft算法数据库双节点模式下的高可用系统


[0001]本专利技术涉及数据库系统领域,尤其涉及一种基于
raft
算法数据库系统的双节点模式下数据库高可用的实现方案


技术介绍

[0002]raft
算法是一种分布式一致性算法,可以保证多个节点之间的数据一致性

在数据库中,
raft
算法可以应用于分布式数据库的实现中,确保多个节点之间的数据同步和一致性,保障集群系统的高可靠性

使用
raft
算法的数据库,如
TiDB、CockroachDB、ETCD、Consul
等均广泛地应用于各种开发开源

生产软件系统中

[0003]但由于算法原理约束,
raft
算法推荐系统节点个数为奇数,即2个节点和1个节点的系统最大故障节点容忍个数是一样的,双节点组网下单个节点故障时剩余的节点无法保障系统数据恢复,导致使用
raft
算法数据库的系统普遍需要使用3个及以上节点搭建高可靠系统

例如,一种在中国专利文献上公开的“基于
raft
的高可用分布式任务调度方法和设备”,其公告号
CN115840631A
,方法包括实时扫描数据库的命令表,获取待执行的流程的命令,转化为
DAG
,将
DAG
中入度为0的任务节点对应的任务提交到待派发任务队列中;计算执行服务器的执行负载,得到最优执行服务器,将待派发任务队列中的任务发送至最优执行服务器;响应于任务执行结果,更新
DAG
,判断更新后的
DAG
中是否存在入度为0的任务节点,流程执行结束

[0004]但在电信和边缘计算领域,双节点系统可兼顾可靠性保障和成本控制,是很多运营商的推荐组网,
raft
算法数据库系统不能很好地适应该场景


技术实现思路

[0005]本专利技术主要解决现有技术
raft
算法数据库系统在双节点模式下不能支持高可用的问题;提供一种基于
raft
算法数据库双节点模式下的高可用系统,引入
HA
模块,通过软件监控掌握对端节点状态,为集群决策出主节点,某一时刻运行
vip

virtual ip ,虚
IP
)和数据库实例的唯一节点对外提供数据库服务

[0006]本专利技术的上述技术问题主要是通过下述技术方案得以解决的:一种基于
raft
算法数据库双节点模式下的高可用系统,包括:双节点之间通过多心跳网络组网通信;单个节点中包括:硬盘空间,包括部署有操作系统的第一本地盘和存放共享数据的第二本地盘;
HA
模块,为系统划分主备节点,实时监测对端节点状态,在单节点故障时自动切换;双节点中的主节点的数据库实例处于运行状态,为系统提供服务,另一个节点的数据库实例处于未运行状态

[0007]通过系统分区使用共享存储实现节点间数据库共享,引入
HA
模块为系统划分主备
节点,可实时监测对端节点状态,保障单节点故障时实现自动切换,继续对外提供业务服务的方式,支持了双节点模式的集群高可用,规避了
raft
算法要求奇数节点(不少于三个)才能支持高可靠的局限,可节约成本

[0008]作为优选,所述的多心跳网络包括:管理网,集群通信,保障集群管理和集群稳定性,在节点间交换集群管理报文;存储网,保障第二本地盘上的共享数据通信;节点间通过存储网实时进行数据同步;保障节点间数据库数据一致性

同时提供高带宽服务保障低延时的存储数据访问服务,提高系统性能

[0009]HA
心跳网,在节点间相互监测对方工作状态,判断对端节点是否进入异常,系统是否需要进行主备切换

[0010]实际部署时,推荐分别采用三张不同网卡部署三个网络,从硬件层面提升系统可靠性,也可根据实际情况简化组网,支持一个网卡被多个网络复用,如
HA
网和存储网可共用同一张网卡和网络地址配置进行工作

[0011]作为优选,所述的
HA
模块包括:虚
IP
管理单元,为双节点集群选择主节点,管理节点虚
IP
的设置

清除

修改和切换;系统初始化时为虚
IP
发放数据库证书,保障数据库实例与节点实
IP
解耦;主备切换时不影响数据库访问

[0012]心跳探测单元,周期性监测多心跳网络的互通性判断对端节点是否处于正常工作状态

[0013]heartbeat
心跳监测通过网络链路或串口进行,而且支持冗余链路,节点间相互发送报文来告诉对方自己当前的状态,如果在指定的时间内未收到对方发送的报文,那么就认为对方失效,这时需启动资源接管模块来接管运行在对方主机上的资源或者服务,
heartbeat
心跳监测决定集群中哪个节点运行虚
IP。
[0014]作为优选,还包括:
DRBD
观测单元,观测本节点的
DBRD
状态,与虚
IP
管理单元联动,选择系统的主节点为
DRBD
主角色,对端节点为
DRBD
备角色;使用主节点的本地存储(第二本地盘)提供数据库服务,提升系统性能

将系统进行磁盘划分,区分操作系统盘和共享存储盘,节点间共享存储盘的数据实时同步,保障系统数据一致,不需要引入额外的外挂数据库系统或共享存储系统,只需要为节点新增硬盘或独立划分一块磁盘分区即可满足要求,在实际局点中易操作

易部署,客户接受度高

[0015]数据库观测单元,同虚
IP
管理单元联动,使数据库实例始终只运行在主节点上;发生主备切换时,终止原来主节点的数据库服务,在新的主节点拉起数据库实例;
HA
配置管理单元,进行
HA
相关配置管理

包括增删改查等操作,
HA
配置主要包括多心跳网络网卡信息


IP、

IP
信息,心跳监测周期和断连时间阈值配置等

[0016]引入
DRBD、heartbeat
等多个开源成熟组件,
DRBD
观测单元


IP
管理模块等实现简单,只需要基于开源组件实现监测,不需要实现复杂的文件共享


IP...

【技术保护点】

【技术特征摘要】
1.
一种基于
raft
算法数据库双节点模式下的高可用系统,其特征在于,包括:双节点之间通过多心跳网络组网通信;单个节点中包括:硬盘空间,包括部署有操作系统的第一本地盘和存放共享数据的第二本地盘,节点间存放共享数据的第二本地盘的数据实时同步;
HA
模块,为系统划分主节点和备节点,将节点虚
IP
与数据库实例绑定,将数据库实例与节点实
IP
解耦;实时监测对端节点状态,在单节点故障时自动切换;双节点中的主节点的数据库实例处于运行状态,为系统提供服务,另一个节点的数据库实例处于未运行状态
。2.
根据权利要求1所述的一种基于
raft
算法数据库双节点模式下的高可用系统,其特征在于,所述的多心跳网络包括:管理网,集群通信,在节点间交换集群管理报文;存储网,保障第二本地盘上的共享数据通信;节点间通过存储网实时进行数据同步;
HA
心跳网,在节点间相互监测对方工作状态,判断对端节点是否进入异常,系统是否需要进行主备切换
。3.
根据权利要求1或2所述的一种基于
raft
算法数据库双节点模式下的高可用系统,其特征在于,所述的
HA
模块包括:虚
IP
管理单元,为双节点集群选择主节点,管理节点虚
IP
的设置

清除

修改和切换;系统初始化时为虚
IP
发放数据库证书,将数据库实例与节点实
IP
解耦;心跳探测单元,周期性监测多心跳网络的互通性判断对端节点是否处于正常工作状态
。4.
根据权利要求3所述的一种基于
raft
算法数据库双节点模式下的高可用系统,其特征在于,还包括:
DRBD
观测单元,观测本节点的
DBRD
状态,与...

【专利技术属性】
技术研发人员:金敏玉孙希才孙小平陈影吴小倩王燕张德张慧敏
申请(专利权)人:华信咨询设计研究院有限公司
类型:发明
国别省市:

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

1