数据库集群主节点切换方法技术

技术编号:39828424 阅读:4 留言:0更新日期:2023-12-29 16:05
本发明专利技术提供数据库集群主节点切换方法

【技术实现步骤摘要】
数据库集群主节点切换方法、系统及管控平台


[0001]本专利技术涉及集群管控领域,具体地涉及一种数据库集群主节点切换方法

一种数据库集群主节点切换系统

一种管控平台以及一种计算机可读存储介质


技术介绍

[0002]在数据库集群领域中,关系型数据库主要通过主备双副本实现高可用方式,主库的实时数据通过
wal
日志同步到备库,当主实例异常时,通过
pg_ctl promot
命令执行主备切换,备库升级为主库,继续提供服务

[0003]在现有集群主备切换技术中,通常存在运维步骤多,切换效率低的问题


技术实现思路

[0004]为了解决上述技术缺陷,本专利技术提供数据库集群主节点切换方法

系统及管控平台,所述数据库集群主节点切换方法通过实时判断数据库主节点是否满足触发条件,以及当满足触发条件时自动触发主备切换,保证整个集群的高可用

[0005]本专利技术第一个方面提供一种数据库集群主节点切换方法,包括:
[0006]实时获取数据库集群主节点的运行信息;
[0007]基于数据库集群主节点的运行信息,根据主节点切换触发条件确定当前是否需要进行数据库集群主节点切换;
[0008]在确定需要进行数据库集群主节点切换的情况下,根据选取策略从多个数据库集群备节点中选出数据库集群候选主节点;
[0009]执行数据库集群主节点切换动作,将数据库集群候选主节点作为新的数据库集群主节点数据库集群主节点数据库集群主节点数据库集群主节点数据库集群主节点数据库集群主节点数据库集群候选主节点数据库集群候选主节点数据库集群主节点数据库集群候选主节点

[0010]在本专利技术实施例中,所述数据库集群主节点的运行信息包括:用户指令

主节点心跳信息以及主节点状态信息

[0011]在本专利技术实施例中,所述主节点切换触发条件包括多个触发子条件,多个触发子条件包括:
[0012]第一触发子条件:用户发出主备切换的用户指令;
[0013]第二触发子条件:在基于主节点心跳信息得到心跳丢失的次数超过第一预设阈值时,管控平台查询查询到的主节点状态信息为异常状态的次数超过第二预设阈值;
[0014]第三触发子条件:数据库集群主节点上报的主节点状态信息为异常状态的次数超过第二预设阈值;
[0015]当数据库集群主节点的运行信息满足主节点切换触发条件中的任意一个触发子条件时,确定当前需要进行数据库集群主节点切换

[0016]在本专利技术实施例中,所述异常状态包括:数据库主节点无法
ping
通网络

数据库主
节点主进程不存在以及数据库主节点无法写入

[0017]在本专利技术实施例中,所述选取策略包括:
[0018]第一选取子策略:选取多个数据库集群备节点中恢复时间最短的数据库集群备节点为数据库集群候选主节点;
[0019]第二选取子策略:选取多个数据库集群备节点中执行事件最多的数据库集群备节点为数据库集群候选主节点;
[0020]第三选取子策略:选取多个数据库集群备节点中与数据库主节点相同地域

相同局域网络或相同平面的数据库集群备节点为数据库集群候选主节点;
[0021]其中,所述第一选取子策略的优先级大于第二选取子策略的优先级大于第三选取子策略的优先级

[0022]在本专利技术实施例中,所述执行数据库集群主节点切换动作,将数据库集群候选主节点作为新的数据库集群主节点,包括:
[0023]将数据库集群主节点的节点状态以及数据库集群候选主节点的节点状态更新为节点倒换状态;
[0024]锁定数据库集群主节点;
[0025]将数据库集群候选主节点的节点信息更新至管控平台中并存储;
[0026]采用
promote
的方式将数据库集群候选主节点升主处理,得到新的数据库集群主节点;将旧的数据库集群主节点降备处理,得到新的数据库集群备节点

[0027]在本专利技术实施例中,所述方法还包括:
[0028]在得到新的数据库集群主节点后,修改数据库集群中所有节点的路由信息,并存储所述路由信息;
[0029]更新数据库集群中其他数据库集群备节点的指向配置文件;
[0030]在得到新的数据库集群备节点后,更新新的数据库集群备节点的节点状态;
[0031]解锁数据库集群主节点

[0032]本专利技术第二个方面提供一种数据库集群主节点切换系统,包括:
[0033]获取模块,用于实时获取数据库集群主节点的运行信息;
[0034]判断模块,用于基于数据库集群主节点的运行信息,根据主节点切换触发条件确定当前是否需要进行数据库集群主节点切换;
[0035]选取模块,用于在确定需要进行数据库集群主节点切换的情况下,根据选取策略从多个数据库集群备节点中选出数据库集群候选主节点;
[0036]主备切换模块,用于执行数据库集群主节点切换动作,将数据库集群候选主节点作为新的数据库集群主节点

[0037]本专利技术第三个方面提供一种数据库管控平台,包括:
[0038]存储器;
[0039]处理器;以及
[0040]计算机程序;
[0041]其中,所述计算机程序存储在存储器中,并被配置为由处理器执行以实现如上所述的数据库集群主节点切换方法

[0042]本专利技术第四个方面提供一种计算机可读存储介质,其上存储有计算机程序,所述
计算机程序被处理器执行以实现如上所述的数据库集群主节点切换方法

[0043]本专利技术通过实时判断数据库集群主节点的运行信息是否满足主节点切换触发条件,当满足主节点触发条件时,根据选取策略从多个数据库集群备节点中选出取数据库集群候选主节点,自动执行主备切换,通过实时判断是否满足触发条件能快速判断出主节点异常,当满足触发条件时,自动执行主备切换,快速更换处于异常状态的主节点;通过快速判断主节点异常以及快速切换主节点,解决了现有技术中主备切换运维步骤多,切换效率低的问题

数据库管控平台通过设置实时检测主节点异常状态是否触发条件以及自动切换主备节点这两个进程,即可实现数据库集群主节点的自动切换,保障了整个分布式集群的高可用性

[0044]本专利技术技术方案的其它特征和优点将在下文的具体实施方式部分予以详细说明

附图说明
[0045]此处所说明的附图用来提供对本专利技术的进一步理解,构成本专利技术的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定

在附图中:
[0046]图1是本专利技术实施例提供本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种数据库集群主节点切换方法,其特征在于,包括:实时获取数据库集群主节点的运行信息;基于数据库集群主节点的运行信息,根据主节点切换触发条件确定当前是否需要进行数据库集群主节点切换;在确定需要进行数据库集群主节点切换的情况下,根据选取策略从多个数据库集群备节点中选出数据库集群候选主节点;执行数据库集群主节点切换动作,将数据库集群候选主节点作为新的数据库集群主节点
。2.
根据权利要求1所述的数据库集群主节点切换方法,其特征在于,所述数据库集群主节点的运行信息包括:用户指令

主节点心跳信息以及主节点状态信息
。3.
根据权利要求2所述的数据库集群主节点切换方法,其特征在于,所述主节点切换触发条件包括多个触发子条件,多个触发子条件包括:第一触发子条件:用户发出主备切换的用户指令;第二触发子条件:在基于主节点心跳信息得到心跳丢失的次数超过第一预设阈值时,管控平台查询到的主节点状态信息为异常状态的次数超过第二预设阈值;第三触发子条件:数据库集群主节点上报的主节点状态信息为异常状态的次数超过第二预设阈值;当数据库集群主节点的运行信息满足主节点切换触发条件中的任意一个触发子条件时,确定当前需要进行数据库集群主节点切换
。4.
根据权利要求3所述的数据库集群主节点切换方法,其特征在于,所述异常状态包括:数据库主节点无法
ping
通网络

数据库主节点主进程不存在以及数据库主节点无法写入
。5.
根据权利要求1所述的数据库集群主节点切换方法,其特征在于,所述选取策略包括:第一选取子策略:选取多个数据库集群备节点中恢复时间最短的数据库集群备节点为数据库集群候选主节点;第二选取子策略:选取多个数据库集群备节点中执行事件最多的数据库集群备节点为数据库集群候选主节点;第三选取子策略:选取多个数据库集群备节点中与数据库主节点相同地域

相同局域网络或相同平面的数据库集群备节点为数...

【专利技术属性】
技术研发人员:蒋吉明平雷程震朱小骏张延生朱志成邱爽
申请(专利权)人:国能信息技术有限公司
类型:发明
国别省市:

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

1