[发明专利]基于swarm的数据库服务持久化方法及系统有效
申请号: | 201910049793.9 | 申请日: | 2019-01-18 |
公开(公告)号: | CN109918359B | 公开(公告)日: | 2022-03-29 |
发明(设计)人: | 李东;洪少佳 | 申请(专利权)人: | 华南理工大学 |
主分类号: | G06F16/21 | 分类号: | G06F16/21;G06F16/25;H04L67/1097;H04L9/40 |
代理公司: | 广州粤高专利商标代理有限公司 44102 | 代理人: | 何淑珍;江裕强 |
地址: | 510640 广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 swarm 数据库 服务 持久 方法 系统 | ||
1.一种基于swarm的数据库服务持久化方法,包括对单数据库和数据库集群的持久化方法, 其特征在于,对单个数据库的持久化方法,包括以下步骤:
S1、基于虚拟路由冗余协议的高可用软件keepalived基础上构建数据库镜像;
S2、创建单个数据库参数,并进行解析,创建的参数包括:有状态服务集标志、网络名字、网络驱动、数据库名字、数据库服务名字、数据库服务端口、数据库副本数、数据库启动命令、数据库停止命令、块设备大小、块读写权限、块设备名字、vip地址、入口访问服务名字、入口访问服务端口;
S3、按照解析的参数创建分布式存储系统ceph块设备:根据S2解析的参数调用ceph的api创建分布式存储系统块设备,创建的参数包括块大小、块名字、块对应的池pool和块读写权限,而且只创建一个块设备,供步骤S4的数据库容器挂载;
S4、按照解析参数创建数据库容器以及挂载分布式存储系统块设备;创建数据库容器会根据步骤S2创建的参数自动生成keepalived.conf配置文件和启动数据库脚本以及停止数据库脚本,步骤S4使用的参数包括数据库服务名字、数据库服务端口、数据库启动命令、数据库停止命令、网络名字、网络驱动、vip地址,步骤S4的容器使用数据卷插件rexray挂载分布式存储系统块设备;按照解析参数创建数据库容器以及挂载分布式存储系统块设备,包括以下步骤:
S4-1、创建主数据库容器挂载分布式存储系统块设备;
S4-2、创建备数据库容器挂载与主数据容器挂载的同一个分布式存储系统块设备;
主数据库容器和备数据库容器各自的keepalived服务会检查自身的权重,权重值高的容器启动数据库服务,权重值低的容器停止数据库服务,同一时间只有主数据库容器或者备数据库容器其中一个容器运行数据库服务;
S5、按照解析参数创建代理服务器nginx入口访问数据库容器;按照解析参数创建代理服务器入口访问容器,会自动生成nginx.conf配置文件,同时对主数据库和备数据库提供代理转发,除非主数据库宕机,代理服务器入口访问容器会将请求全部转发到备数据库,否则都是转发到主数据库;
对数据库集群的持久化方法,包括以下步骤:
L1、创建数据库集群参数,并进行解析,创建的参数包括:有状态服务集标志、网络驱动、网络名字、数据库服务名字、数据库服务端口、数据库副本数、数据库启动命令、数据库停止命令、块设备大小、块读写权限、块设备名字、vip地址、入口访问服务名字、入口访问服务端口参数;
L2、按照解析参数创建分布式存储系统块设备;
L3、注册数据库集群入口访问服务;
L4、按照解析参数创建代理服务器入口访问数据库集群容器;按照解析参数创建代理服务器入口访问容器,其中包括统一配置管理工具confd服务和代理服务器;
confd服务定期获取信息,该信息包括etcd中入口服务名字、入口服务端口、数据库服务名字、数据库端口,并检查etcd存储的键值对是否发生变化,如果发生变化,根据代理服务器启动的配置模板重新生成新的代理服务器启动的配置nginx.conf,然后通知代理服务器重新加载新的nginx.conf配置文件;
代理服务器对数据库集群提供负载均衡和提供入口访问,如果代理转发一次失败,隔10s之后再尝试一次;
L5、注册数据库服务;注册数据库服务包括以下步骤:
L5-1、向键值对数据存储系统注册数据库容器名字;
L5-2、向键值对数据存储系统注册数据库容器端口;
只要注册的数据库容器和入口访问服务名字是相同的,注册的数据库容器就会添加到代理服务器负载均衡列表中,所以如果对数据库集群进行扩容,只需要注册到相同的入口访问服务名字即可;
步骤L6按照解析参数创建数据库容器以及挂载分布式存储系统块设备,其中分布式存储系统块设备挂载到名字相同的数据库容器,数据库容器和ceph块设备的命名格式均为:数据库名字-{1,2,3...},数据库集群有若干个分布式存储系统块设备,步骤L6的容器使用rexray数据卷插件挂载分布式存储系统块设备;
L6、按照解析参数创建数据库容器以及挂载分布式存储系统块设备。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南理工大学,未经华南理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910049793.9/1.html,转载请声明来源钻瓜专利网。