[发明专利]一种分布式数据库指定节点缩容方法有效
申请号: | 202110233661.9 | 申请日: | 2021-03-03 |
公开(公告)号: | CN112925852B | 公开(公告)日: | 2022-04-12 |
发明(设计)人: | 夏博涵;储佳祥;张士威;陈善君 | 申请(专利权)人: | 浪潮云信息技术股份公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/21;G06F9/455 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 姜鹏 |
地址: | 250100 山东省济南市高*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 数据库 指定 节点 方法 | ||
本发明涉及云技术平台领域,具体提供了一种分布式数据库指定节点缩容方法,其特征在于,通过修改statefulset的级联属性以及管理数据库节点pod的持久存储卷,完成指定数据库节点的数据迁移并缩容。与现有技术相比,本发明通过修改kubernetes的配置以及对于数据库pod的存储管理,解决了将任意一个分布式数据库节点缩容的需求,具有良好的推广价值。
技术领域
本发明涉及云技术平台领域,具体提供一种分布式数据库指定节点缩容方法。
背景技术
Kubernetes是一个开源的、用于管理云平台中多个主机上的容器化的应用,它提供了应用部署、规划、更新、维护的一种机制,让部署容器化的应用简单并且高效。Kubernetes是通过部署容器方式实现的,每个容器之间互相隔离,每个容器有自己的文件系统,容器之间进程不会相互影响,能区分计算资源。相对于虚拟机,容器能快速部署,由于容器与底层设施、机器文件系统解耦的,所以它能在不同云、不同版本操作系统间进行迁移。
在Kubernetes中,我们可以创建多个容器,每个容器里面运行一个应用实例,然后通过内置的负载均衡策略,实现对这一组应用实例的管理、发现、访问,而这些细节都不需要运维人员去进行复杂的手工配置和处理。Pod指的是Kubernetes集群中的应用负载,pod运行在节点上。Pod由一个或者多个容器组成,它们共享容器存储、网络和容器运行配置项。Pod中的容器总是被同时调度,有共同的运行环境。StatefulSet保证了在所有时间内,都有特定数量的Pod副本正在运行,且这些Pod应用提供了有状态的服务。Kubernetes可以对其中被管理的容器化应用的副本数,根据容器内CPU或内存的使用量,自动进行增加或减少,从而实现扩容或缩容的调度。
在现有技术中,使用Kubernetes对分布式数据库节点缩容时,只支持缩容索引最大的数据库节点。
发明内容
本发明是针对上述现有技术的不足,提供一种实用性强的分布式数据库指定节点缩容方法。
本发明解决其技术问题所采用的技术方案是:
一种分布式数据库指定节点缩容方法,通过修改statefulset的级联属性以及管理数据库节点pod的持久存储卷,完成指定数据库节点的数据迁移并缩容。
进一步的,具体的步骤为:
S1、将分布式数据库节点部署在pod中;
S2、判断卸载pod后分布式数据库节点的数量;
S3、判断pod是否持有statefulset中最大的索引号;
S4、完成指定节点缩容操作。
进一步的,在步骤S1中,在Kubernetes集群中,pod是应用负载,将每一个分布式数据库节点部署在一个pod中,并用Statefulset统一管理这些pod。
进一步的,在步骤S2中,首先通过服务器的IP找到当前机器上部署的所有pod,判断卸载掉这些pod后,分布式数据库节点的数量。
作为优选,判断卸载pod后,分布式数据库节点的数量是否不少于3个,如果满足则继续缩容,否则重新选择要缩容的数据库节点。
进一步的,在步骤S3中,如果有多个数据库节点要缩容,每次也只执行一个数据库节点的缩容流程,并重复这个步骤直到所有节点完成缩容。
对筛选出的pod,首先查找它们在数据库中对应的节点ID,将这些数据库节点上的数据执行迁移操作。
进一步的,迁移完成后,判断pod是否持有statefulset中最大的索引号,若是,则直接修改statefulset中的replica数量完成缩容。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮云信息技术股份公司,未经浪潮云信息技术股份公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110233661.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于多点压感的可编程交互模组
- 下一篇:一种使用便捷的塑料制品包装箱