一种高可用数据库的管理方法和管理系统技术方案

技术编号:33462865 阅读:14 留言:0更新日期:2022-05-19 00:43
本发明专利技术公开了一种高可用数据库的管理方法和管理系统,属于数据库管理技术领域,所述管理方法包括:创建或修改描述信息;根据所述描述信息,创建、修改或删除自定义资源;监听所述自定义资源,并生成配置资源;根据所述配置资源管理数据库集群。通过描述信息,对数据库的配置信息和部署信息进行统一描述,利于对自定义资源的统一管理和部署,通过自定义资源对数据库进行统一管理,防止由于大量内部资源配置造成的错误操作。置造成的错误操作。置造成的错误操作。

【技术实现步骤摘要】
一种高可用数据库的管理方法和管理系统


[0001]本专利技术涉及数据库管理
,具体涉及一种高可用数据库的管理方法和管理系统。

技术介绍

[0002]自定义资源(Custom Resource)是对Kubernetes API的扩展,可以通过动态注册的方式在运行中的集群内或出现或消失,集群管理员可以独立于集群更新定制资源。一旦某定制资源被安装,用户可以使用kubectl来创建和访问其中的对象,就像他们为pods这种内置资源所做的一样。
[0003]Kubernetes是目前主流的云原生容器平台,支持通用的无状态应用、有状态应用等工作负载运行在之上。对于MYSQL等数据库可以以有状态应用的方式进行运行。Operator是Kubernetes的扩展软件,在Kubernetes上可以通过自动化来处理重复的任务。Operator模式会封装编写的任务自动化代码。Kubernetes的Operator模式概念使得无需修改Kubernetes自身的代码,通过定制控制器管理一个及其以上的定制资源,实现扩展集群的功能。
[0004]随着业务量的上升,针对多个内部资源的改动会越来越多,采用自定义资源可以将用户所需要的配置属性集中到单个资源中进行统一管理,避免错误的更改导致数据库的崩溃。

技术实现思路

[0005]针对现有技术中存在的上述技术问题,本专利技术提供一种高可用数据库的管理方法和管理系统,通过描述信息对数据库部署或管理进行统一描述,并根据描述信息对数据库进行管理,简化数据库管理,防止错误的操作
[0006]本专利技术公开了一种高可用数据库的管理方法,所述管理方法包括:创建或修改描述信息;根据所述描述信息,创建、修改或删除自定义资源;监听所述自定义资源,并生成配置资源;根据所述配置资源管理数据库集群。
[0007]优选的,所述描述信息包括以下任一信息或它们的组合:
[0008]数据库配置信息、实例创建策略、升级策略、主从策略、选主策略和复制策略。
[0009]优选的,数据库故障恢复的方法包括:
[0010]通过Operator监听数据库的实例;
[0011]判断主实例是否发生故障;
[0012]若是,根据所述选主策略,选择一个正常实例作为主实例;
[0013]修改复制策略,将数据复制指向主实例。
[0014]优选的,选择主实例的方法包括:
[0015]访问存活实例,并获取所述实例的延迟状态;
[0016]通过最小化延迟的方式,从存活实例中选择主实例。
[0017]优选的,所述复制策略包括主实例的连接地址、用户名、密码、复制方式;
[0018]主实例的只读策略设置为关,从实例的只读策略设置为开;
[0019]故障实例重连的方法包括:
[0020]检测故障实例;
[0021]判断故障实例是否恢复;
[0022]若是,将恢复的故障实例设置为从实例,并同步复制策略。
[0023]优选的,所述配置资源包括以下任一资源或它们的组合:
[0024]配置文件、有状态应用、存储卷的资源对象和服务发现对象;
[0025]实例创建的方法包括:
[0026]根据所述创建策略,创建有状态应用;
[0027]根据有状态应用的创建事件,创建容器资源;
[0028]根据所述配置文件,对所述容器资源进行配置,获得数据库实例。
[0029]优选的,升级的方法包括:
[0030]创建升级策略,所述升级策略的升级描述信息包括:数据库配置更新、容器集群部署配置更新和数据库版本更新;
[0031]根据所述升级描述信息,生成或修改自定义资源;
[0032]通过Operator监听所述自定义资源,并更新配置文件;
[0033]根据所述配置文件,对数据库、容器或集群进行升级。
[0034]优选的,实例卸载的方法包括:
[0035]删除实例相应的自定义资源;
[0036]通过Operator监听自定义资源的删除事件,并删除相应的配置资源;
[0037]根据配置资源的删除事件,删除实例的容器组。
[0038]本专利技术还提供一种用于实现上述管理方法的管理系统,包括:
[0039]描述信息管理模块、自定义资源管理模块、监听模块和执行模块;
[0040]所述描述信息管理模块用于创建或修改描述信息;
[0041]所述自定义资源管理模块用于根据所述描述信息,创建、修改或删除自定义资源;
[0042]所述监听模块用于监听所述自定义资源,并生成配置资源;
[0043]所述执行模块用于根据所述配置资源管理数据库集群。
[0044]优选的,所述监听模块还用于:
[0045]监听数据库的实例;
[0046]判断主实例是否发生故障;
[0047]若是,根据所述选主策略,选择一个正常实例作为主实例;
[0048]修改复制策略,将数据复制指向主实例。
[0049]与现有技术相比,本专利技术的有益效果为:通过描述信息,对数据库的配置信息和部署信息进行统一描述,利于对自定义资源的统一管理和部署,通过自定义资源对数据库进行统一管理,防止由于大量API造成的错误操作。
附图说明
[0050]图1是本专利技术的高可用数据库的管理方法流程图;
[0051]图2是本专利技术的管理系统逻辑框图。
具体实施方式
[0052]为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术的一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0053]下面结合附图对本专利技术做进一步的详细描述:
[0054]一种高可用数据库的管理方法,如图1所示,所述管理方法包括:
[0055]步骤101:创建或修改描述信息。可以通过文件的方式保存描述信息,如yaml或者json文件;描述信息用于描述数据库管理的属性,例如数据库内部的配置信息:root密码、各类缓存区大小、数据落盘机制等,以及数据库在集群中的相关配置信息:实例数量、硬件资源配额、网络策略、调度策略等。
[0056]步骤102:根据所述描述信息,创建、修改或删除自定义资源。
[0057]步骤103:监听所述自定义资源,并生成配置资源。
[0058]所述配置资源包括以下任一资源或它们的组合:配置文件(Configmap)、有状态应用(Statefulset)、存储卷的资源对象(PVC)和服务发现对象(service)。在一个具体实施例中,利用Operator监听自定义资源。
[0059]步骤104:根据所述配置资源管理容器化的数据库。所述数据库可以是MYSQL数据库,但不限于本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种高可用数据库的管理方法,其特征在于,所述管理方法包括:创建或修改描述信息;根据所述描述信息,创建、修改或删除自定义资源;监听所述自定义资源,并生成配置资源;根据所述配置资源管理数据库集群。2.根据权利要求1所述的管理方法,其特征在于,所述描述信息包括以下任一信息或它们的组合:数据库配置信息、实例创建策略、升级策略、主从策略、选主策略和复制策略。3.根据权利要求2所述的管理方法,其特征在于,数据库故障恢复的方法包括:通过Operator监听数据库的实例;判断主实例是否发生故障;若是,根据所述选主策略,选择一个正常实例作为主实例;修改复制策略,将数据复制指向主实例。4.根据权利要求3所述的管理方法,其特征在于,选择主实例的方法包括:访问存活实例,并获取所述实例的延迟状态;通过最小化延迟的方式,从存活实例中选择主实例。5.根据权利要求4所述的管理方法,其特征在于,所述复制策略包括主实例的连接地址、用户名、密码、复制方式;主实例的只读策略设置为关,从实例的只读策略设置为开;故障实例重连的方法包括:检测故障实例;判断故障实例是否恢复;若是,将恢复的故障实例设置为从实例,并同步复制策略。6.根据权利要求2所述的管理方法,其特征在于,所述配置资源包括以下任一资源或它们的组合:配置文件、有状态应用、存储卷的资源对象和服务发现对象;实例创建的方法包括:根据所述创建策略,创建有状态应用;根据有状态应...

【专利技术属性】
技术研发人员:杨世利陈雪宋阳刘娟洪晓霞熊炜宋鹏裴劼王仁菊杨颖李佳江欣祝吴云松何健
申请(专利权)人:陈雪宋阳刘娟
类型:发明
国别省市:

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

1