本发明专利技术提供了一种实现mysql高可用架构哨兵监控的方法,包括一个管理节点和两个普通节点,三个哨兵节点每隔1分钟对所有高可用实例进行节点状态监控,针对每套高可用实例,管理节点依据三个监控节点返回的该套高可用实例的状态信息进行投票,判定实例是否出现节点宕机;当管理节点发现实例中主节点发生故障时,管理节点统计同一周期内所有实例主节点故障的个数;当正常哨兵节点监控租户区实例的状态时,发现的主节点故障,从节点状态正常,且在同一周期内未发现5个主节点故障情况下,则触发主备切换功能。本发明专利技术所述的实现mysql高可用架构哨兵监控的方法,实现了mysql第一时间准备判断主备状态是否需要切换的功能。备判断主备状态是否需要切换的功能。备判断主备状态是否需要切换的功能。
【技术实现步骤摘要】
一种实现mysql高可用架构哨兵监控的方法
[0001]本专利技术属于数据处理领域,尤其是涉及一种实现mysql高可用架构哨兵监控的方法。
技术介绍
[0002]高可用架构一般有两节点,分为主节点、从节点,在云场景下mysql实例的状态需要及时更新,以便第一时间判断是否需要进行节点服务切换。普通的解决办法各个实例通过开源工具MHA等工具进行监控实现,这种方法在非云场景下可以满足需求,但在复杂的云场景下,网络环境更加复杂,单纯依靠本地的MHA服务是有缺陷的,比如发生了短暂的网络抖动,云场景下成百上千的实例同时发生切换会造成更大的网络拥塞,导致雪崩现象。本专利技术采用一种更加宏观的哨兵监控系统来解决此问题。
技术实现思路
[0003]有鉴于此,本专利技术旨在提出一种实现mysql高可用架构哨兵监控的方法,以解决云场景mysql高可用实例的状态监控问题。
[0004]为达到上述目的,本专利技术的技术方案是这样实现的:
[0005]一种实现mysql高可用架构哨兵监控的方法,包括三个哨兵节点,其中一个哨兵节点作为manager节点,其余两个哨兵节点角色相同,三个节点都会对所有在运行的实例进行状态监控,三个哨兵节点的工作方法如下:
[0006]S1、三个哨兵节点每隔1分钟对所有高可用实例进行节点状态监控,针对每套高可用实例,manager节点依据三个监控节点返回的该套高可用实例的状态信息进行投票,由manager节点根据多数情况决策高可用实例中主节点、从节点运行状态信息,判定实例是否出现节点宕机情况;
[0007]S2、当manager节点发现实例中主节点发生故障时,manager节点统计同一周期内所有实例主节点故障的个数,若主节点故障的个数超过设定阈值时,则认为是网络故障,不会立即执行主备切换功能;连续3个周期都有此情况发生则告警通知运维人员进行排查运行环境问题;
[0008]S3、当正常哨兵节点监控租户区实例的状态时,发现实例的主节点故障,实例的从节点状态正常,且在同一周期内未发现5个主节点故障情况下,则触发主备切换功能。
[0009]进一步的,所述步骤S2中,主节点故障的个数的设定阈值为5个。
[0010]相对于现有技术,本专利技术所述的实现mysql高可用架构哨兵监控的方法具有以下优势:
[0011](1)本专利技术所述的实现mysql高可用架构哨兵监控的方法,实现了mysql第一时间准备判断主备状态是否需要切换的功能。
[0012](2)本专利技术所述的实现mysql高可用架构哨兵监控的方法,避免了因为外部问题导致误判节点状态,导致网络雪崩的问题。
[0013](3)本专利技术所述的实现mysql高可用架构哨兵监控的方法,不依赖实例内部运行的环境,由外部哨兵监控系统轮询,不会因实例所在主机崩溃导致状态无法获取的问题。
附图说明
[0014]构成本专利技术的一部分的附图用来提供对本专利技术的进一步理解,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:
[0015]图1为本专利技术实施例所述的实现mysql高可用架构哨兵监控的方法的流程图。
具体实施方式
[0016]需要说明的是,在不冲突的情况下,本专利技术中的实施例及实施例中的特征可以相互组合。
[0017]在本专利技术的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本专利技术和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本专利技术的限制。此外,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”等的特征可以明示或者隐含地包括一个或者更多个该特征。在本专利技术的描述中,除非另有说明,“多个”的含义是两个或两个以上。
[0018]在本专利技术的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以通过具体情况理解上述术语在本专利技术中的具体含义。
[0019]下面将参考附图并结合实施例来详细说明本专利技术。
[0020]名词解释:
[0021]高可用HA(High Availability)是分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计减少系统不能提供服务的时间。
[0022]MySQL是最流行的关系型数据库管理系统。
[0023]一种实现mysql高可用架构哨兵监控的方法,如图1所示,包括三个哨兵节点,其中一个哨兵节点作为manager节点(即三个监控节点中的管理节点),起到决策的作用,其余两个哨兵节点角色相同,三个节点都会对所有在运行的实例进行状态监控,
[0024]三个哨兵节点的工作方法如下:
[0025]S1、三个哨兵节点每隔1分钟对所有高可用实例进行节点状态监控,针对每套高可用实例,manager节点依据三个监控节点返回的该套高可用实例的状态信息进行投票,由manager节点根据多数情况决策高可用实例中主节点、从节点运行状态信息,判定实例是否出现节点宕机情况;
[0026]S2、当manager节点发现实例中主节点发生故障时,manager节点统计同一周期内所有实例主节点故障的个数,若主节点故障的个数超过5个(此阈值可以根据实际情况调
整),则认为是网络故障,不会立即执行主备切换功能;连续3个周期都有此情况发生则告警通知运维人员进行排查运行环境问题;
[0027]S3、当正常哨兵节点监控租户区实例的状态时,发现实例的主节点故障,实例的从节点状态正常,且在同一周期内未发现5个主节点故障情况下,则触发主备切换功能。
[0028]本方案实现了mysql第一时间准备判断主备状态是否需要切换的功能,避免了因为外部问题导致误判节点状态,导致网络雪崩的问题;同时不依赖实例内部运行的环境,由外部哨兵监控系统轮询,不会因实例所在主机崩溃导致状态无法获取的问题。
[0029]以上所述仅为本专利技术的较佳实施例而已,并不用以限制本专利技术,凡在本专利技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本专利技术的保护范围之内。
本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种实现mysql高可用架构哨兵监控的方法,其特征在于:包括三个哨兵节点,其中一个哨兵节点作为manager节点,其余两个哨兵节点角色相同,三个节点都会对所有在运行的实例进行状态监控,三个哨兵节点的工作方法如下:S1、三个哨兵节点每隔1分钟对所有高可用实例进行节点状态监控,针对每套高可用实例,manager节点依据三个监控节点返回的该套高可用实例的状态信息进行投票,由manager节点根据多数情况决策高可用实例中主节点、从节点运行状态信息,判定实例是否出现节点宕机情况;S2、当manager节点发现实例中...
【专利技术属性】
技术研发人员:秦贞远,
申请(专利权)人:紫光云技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。