一种MySQL实例状态处理方法及装置与流程

文档序号:31849062发布日期:2022-10-19 00:33阅读:58来源:国知局
一种MySQL实例状态处理方法及装置与流程
一种mysql实例状态处理方法及装置
技术领域
1.本发明涉及云计算技术领域,具体提供一种mysql实例状态处理方法及装置。


背景技术:

2.随着kubernetes技术为代表的容器技术的发展,可以很方便的将应用迁移到kubernetes平台上,关系型数据库mysql产品作为基础组件需要迁移到kubernetes上,提供稳定、可用的服务。然而,关系型数据库mysql部署在kubernetes资源上,现有技术只能监听kubernetes资源的状态,无法实时判断关系型数据库mysql产品的实例状态。状态更新不及时,不能正确的操作关系型数据库mysql实例,进而缩短了关系型数据库mysql产品提供服务的时间。


技术实现要素:

3.本发明是针对上述现有技术的不足,提供一种实用性强的mysql实例状态处理方法。
4.本发明进一步的技术任务是提供一种设计合理,安全适用的mysql实例状态处理装置。
5.本发明解决其技术问题所采用的技术方案是:
6.一种mysql实例状态处理方法,在kubernetes平台上创建名为mysqlcluster自定义资源,用来存放mysql实例的集群信息,所述mysqlcluster自定义资源包括mysqlclusterspec和mysqlclusterstatus两部分;
7.创建关系型数据库mysql的就绪探针,用来实时检测mysql服务状态,当mysql服务发生异常后就绪探针可以实时生成事件,进行声明式配置架构,分别为事件监听、事件转发和事件处理。
8.进一步的,所述mysqlclusterspec中定义了mysql实例的参数和用户参数;
9.所述mysqlclusterstatus定义了mysql实例状态,还定义了message字段,用来存储失败状态下的报错信息。
10.进一步的,所述就绪探针包括:
11.(a)、监测mysql服务状态的脚本;
12.(b)、第一次执行就绪探针的等待时间,周期性执行的间隔时间,就绪探针执行的超时时间。
13.进一步的,在所述事件监听时,创建一个基于kubernetes pod的watcher监听队列,使用声明式配置进行监听mysql实例资源的事件,包括就绪探针生成的事件;
14.根据资源的label标签筛选出关系型数据库mysql产品实例的事件。
15.进一步的,在时间转发中,
16.(1)根据事件的不同类型执行相应动作;
17.(2)解析当前事件信息,获取实例中每个容器的状态,获取事件的message;
18.(3)获取当前mysql实例的自定义资源的mysqlcluster的信息,获得当前实例的运行状态;
19.(4)依据容器状态和mysqlcluster状态进行事件的转发。
20.进一步的,在所述事件处理中,事件分发到不同事件处理器,包括实例操作成功处理器、实例操作失败处理器和实例容灾切换处理器。
21.进一步的,在所述实例操作成功处理器中,创建mysql实例成功和mysql实例磁盘扩容成功、重启mysql实例成功的逻辑处理,修改自定义资源mysqlcluster的状态来保存操作成功的状态和元数据信息。
22.进一步的,在实例操作失败处理器创建mysql实例失败和mysql实例磁盘扩容失败、重启mysql实例的逻辑处理,修改自定义资源mysqlcluster的状态来保存操作失败的状态,将报错信息存到message字段里。
23.进一步的,在实例容灾切换处理器中mysql集群异常修复,当mysql主节点异常时,进行主从间的切换。
24.一种mysql实例状态处理装置,包括:至少一个存储器和至少一个处理器;
25.所述至少一个存储器,用于存储机器可读程序;
26.所述至少一个处理器,用于调用所述机器可读程序,执行一种mysql实例状态处理方法。
27.本发明的一种mysql实例状态处理方法及装置和现有技术相比,具有以下突出的有益效果:
28.本方法可以快速准确监测关系型数据库mysql产品的实例状态,在实例状态与当前实例状态不一致时及时进行mysql实例的实例状态更新,操作成功后及时对外提供访问权限,进而提高关系型数据库mysql产品提供服务的时间。
附图说明
29.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
30.附图1是一种mysql实例状态处理方法中实例操作成功状态的流程示意图。
具体实施方式
31.为了使本技术领域的人员更好的理解本发明的方案,下面结合具体的实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例都属于本发明保护的范围。
32.下面给出一个最佳实施例:
33.如图1所示,本实施例中的一种mysql实例状态处理方法,在kubernetes平台上创建名为mysqlcluster自定义资源(customresourcedefinition),用来存放mysql实例的集群信息,mysqlcluster自定义资源包括mysqlclusterspec和mysqlclusterstatus两部分。
34.mysqlclusterspec包括:
35.定义了一些mysql实例的参数,比如cpu、内存、磁盘等系统参数;
36.还定义了account、password等用户参数。
37.mysqlclusterstatus包括:
38.定义了mysql实例状态,包括创建成功、创建失败、重启成功、重启失败、扩容成功、扩容失败、删除成功、删除失败等状态;
39.还定义了message字段,用来存储失败状态下的报错信息。
40.创建关系型数据库mysql的就绪探针,用来实时检测mysql服务状态,当mysql服务发生异常后就绪探针可以实时生成事件。就绪探针包括:
41.(a)、监测mysql服务状态的脚本;
[0042]-/bin/sh
[0043][0044]-"-c"
[0045]-mysql-h localhost-u${account}-p${password}-e"select1"
[0046]
使用mysql命令登录到本地的mysql服务,执行"select 1"成功则证明mysql服务启动成功。
[0047]
(b)、第一次执行就绪探针的等待时间,周期性执行的间隔时间,就绪探针执行的超时时间。
[0048]
进行声明式配置架构,分别为事件监听、事件转发和事件处理。
[0049]
事件监听包括:
[0050]
创建一个基于kubernetes pod的watcher监听队列,使用声明式配置进行监听mysql实例资源的事件,包括就绪探针生成的事件;根据资源的label标签筛选出关系型数据库mysql产品实例的事件。
[0051]
事件转发包括:
[0052]
(1)根据事件的不同类型(add/update/delete/error)执行相应动作;
[0053]
(2)解析当前事件信息,获取实例中每个容器的状态,获取事件的message;
[0054]
(3)获取当前mysql实例的自定义资源的mysqlcluster的信息,获得当前实例的运行状态;
[0055]
(4)依据容器状态和mysqlcluster状态进行事件的转发,比如当前mysql实例状态是创建中,容器状态是全部ready,可以判断是当前mysql实例创建成功,应该将该事件转发到实例操作成功处理器。
[0056]
事件处理包括:
[0057]
事件分发到不同事件处理器,包括实例操作成功处理器、实例操作失败处理器和实例容灾切换处理器;
[0058]
操作成功处理器主要负责创建mysql实例成功和mysql实例磁盘扩容成功、重启mysql实例成功等逻辑的处理,修改自定义资源mysqlcluster的状态来保存操作成功的状态和元数据信息。
[0059]
操作失败处理器主要负责创建mysql实例失败和mysql实例磁盘扩容失败、重启mysql实例等逻辑的处理,修改自定义资源mysqlcluster的状态来保存操作失败的状态,将
报错信息存到message字段里。
[0060]
实例容灾切换处理器主要负责mysql集群异常修复,当mysql主节点异常时,进行主从间的切换。
[0061]
综上,mysql实例的就绪探针和所在kubernetes资源变动发出事件,事件监听器监听到事件后,由事件转发器转发到相对应的事件处理器,实时修改mysql实例的实例状态,修改自定义资源mysqlcluster的状态,并在massage留存异常信息。
[0062]
基于上述方法,一种mysql实例状态处理装置,包括:至少一个存储器和至少一个处理器;
[0063]
所述至少一个存储器,用于存储机器可读程序;
[0064]
所述至少一个处理器,用于调用所述机器可读程序,执行一种mysql实例状态处理方法。
[0065]
上述具体的实施方式仅是本发明具体的个案,本发明的专利保护范围包括但不限于上述具体的实施方式,任何符合本发明的一种mysql实例状态处理方法及装置权利要求书的且任何所述技术领域普通技术人员对其做出的适当变化或者替换,皆应落入本发明的专利保护范围。
[0066]
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1