mysql 虚拟化_一种虚拟化部署mysql高可用系统的制作方法

本发明介绍一种虚拟化部署MySQL高可用系统,通过用户选择模块和虚拟机模块简化了部署过程,提供了多种高可用方案,包括一主多备、二主多备、Percona XtraDB Cluster和MySQL Cluster方案,利用虚拟化接口实现自动化部署,提高部署效率并方便后期维护。
摘要由CSDN通过智能技术生成

a7b08686eddbb93cf71979bb85fdc33c.gif

本发明涉及网络架构部署领域,具体的说是一种虚拟化部署mysql高可用系统。

背景技术:

mysql是一种关系型数据库管理系统,是当下最流行的关系型数据库管理系统之一,尤其在web应用方面,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择mysql作为网站数据库,作为网站数据库,其后台存储有大量的重要数据,且时刻都进行着数据访问交换,因此一个稳定的环境至关重要,但在实际使用中,由于各种人为或非人为因素,不可避免的会发生服务器崩溃或数据被侵入篡改,造成不可挽回的损失,为防止这种情况的发生,网站需要具有高可用性,即当其中一个服务器节点失效,可将访问流量迅速转移至备用服务器,从而不影响用户体验。但搭建一个具有高可用性的服务器,所需要的搭建环境复杂,步骤繁琐,用户在部署高可用环境中花费大量时间,极大拖后了用户的工作效率。

中国专利文献cn109981351a公开了一种私有云部署方法,该方法包括步骤如下:s1、依托于linux系统搭建管理集群:依托于linux中的centosubuntu的发布版本,构建kubernetes集群,通过kubernetes实现应用的高可用;s2、引用开源工具搭建ci/cd流程,发布自身镜像:创建出适合kubernetes集群环境运行的程序包,将需要运行的应用打包成能运行在kubernetes集群环境中的镜像;s3、引用开源发布工具搭建私有镜像仓库,管理自己的镜像安装包;s4、搭建私有helm仓库,管理镜像发布包;s5、私有集群运行镜像,提供服务,该专利实现了对容器的管理,发布、维护私有云应用,对数据的的安全性和私密性提供了可靠保障,但该专利中的搭建方法无法解决如何高效部署高可用环境,自动化程度较低,无法实现简单化部署。

中国专利文献cn110460670a公开了一种基于terraform及ansible的应用集群架构自动化部署方法,该专利通过对terraform及ansible进行封装,实现基础设施架构及应用架构自动化部署及架构的版本管理功能。用户将基础设施架构及应用架构部署方案,通过代码形式进行保存,并通过版本仓库进行管理;再次进行环境部署时,可以直接通过代码形式,进行环境的搭建,不再需要手动的进行人工部署,降低了出错的概率;并且支持多线程操作,可以同时部署多个集群架构,快速方便;支持横向扩展,各节点间无相互依赖关系,极大提高部署效率,但该专利仍需要用户对搭建环境进行编程,自动化搭建效率较低,且不便于后期维护。

技术实现要素:

针对上述现有技术中存在的问题,本发明公布了一种虚拟化部署mysql高可用系统,帮助用户解决部署mysql高可用环境,减去用户在重复各种配置环境消耗时间,实现简单化部署,同时便于后期进行维护。

本发明所公开的具体的技术方案如下:一种虚拟化部署mysql高可用系统,包括:

用户选择模块,用于供用户选择部署mysql高可用配置方案;

虚拟机模块,用于提供完整的计算机系统环境;

web后台模块,依据客户选择的配置方案,对虚拟机模块进行安装组件以及配置组件操作;

接口调用模块,调用各种组件的接口,以保证用户和web后台对虚拟机进行操作;

所述web后台模块包括方案配置模块、任务生成模块、虚拟化接口模块、监控模块和消息模块,所述方案配置模块用于提供用户选择部署mysql高可用方案;所述任务生成模块用于将用户选择的方案生成任务;所述虚拟化接口模块集成各种方案的组件接口;所述监控模块用于实时监控mysql、虚拟机及虚拟化接口的状态;所述消息模块用于将各组件的状态及系统状态及时发送显示给用户。

进一步的,所述mysql高可用方案包括一主多备高可用方案、二主多备高可用方案、perconaxtradbcluster集群方案(简称pxc集群)和mysqlcluster集群方案。

进一步的,所述虚拟化接口包括vmware接口、openstack接口和kvm接口。

进一步的,所述消息模块通过邮件、短信或语言的方式发送消息给用户。

进一步的,所述web模块设有有交互页面,所述交互页面包括有创建、关闭、删除、重启和系统状态。

进一步的,所述一主多备高可用方案包括客户端、对外访问接口、keepalived服务、两组haproxy、一组mysql主服务器和多组mysql备用服务器,所述客户端通过对外访问接口连接到keepalived服务,所述keepalived服务提供高可用性,作为两组haproxy的高可用,所述mysql主服务器与多组mysql备用服务器之间数据同步,且所述mysql主服务器与mysql备用服务器均分别与两组haproxy连接。

进一步的,所述二主多备高可用方案包括客户端、对外访问接口、keepalived服务、两组haproxy、两组mysql主服务器和多组mysql备用服务器,所述客户端通过对外访问接口连接到keepalived服务,所述keepalived服务提供高可用性,作为两组haproxy的高可用,两组mysql主服务器之间数据同步,同时分别与两组haproxy连接,且两组mysql主服务器分别连接多组mysql备用服务器。

进一步的,所述perconaxtradbcluster集群方案(简称pxc集群)包括客户端、对外访问接口、keepalived服务、两组haproxy和pxc集群,所述客户端通过对外访问接口连接到keepalived服务,所述keepalived服务提供高可用性,作为两组haproxy的高可用,所述pxc集群与两组haproxy连接。

进一步的,所述pxc集群包括多组节点,所述节点之间数据同步,且分别与两组haproxy连接。

进一步的,所述mysqlcluster集群方案包括客户端、对外访问接口、keepalived服务、两组haproxy和cluster集群,所述客户端通过对外访问接口连接到keepalived服务,所述keepalived服务提供高可用性,作为两组haproxy的高可用,所述cluster集群与两组haproxy连接。

本发明同现有技术相比,具有如下优点:

1)本发明通过部署多种高可用方案供用户选择,简化部署mysql的步骤,实现自动化部署。

2)本发明通过虚拟机技术,在搭建系统时,自动创建适用的虚拟机环境,解决用户手动搭建各种环境的困扰。

3)本发明提供多种方案选择,减去学习和解决各种方案不同环境配置问题时间。

4)本发明在搭建高可用系统时,可实时监控各组件状态,异常告警。

5)本发明中各种部署方案和虚拟化接口均模块化,用户可根据需要选用不同模块进行搭建,维护人员也方便对各模块进行维护更替。

附图说明

图1是本发明实施例中一种虚拟化部署mysql高可用系统的结构图;

图2是本发明实施例1中一种一主多备高可用方案的结构图;

图3是本发明实施例2中一种二主多备高可用方案的结构图;

图4是本发明实施例3中一种perconaxtradbcluster集群方案的结构图;

图5是本发明实施例4中一种mysqlcluster集群方案的结构图;

具体实施方式

以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的实施例仅用于说明和解释本发明,并不用于限定本发明。

结合图1所示,本发明提供了一种虚拟化部署mysql高可用系统,包括:

用户选择模块,用于供用户选择部署mysql高可用配置方案;

虚拟机模块,用于提供完整的计算机系统环境;

web后台模块,依据客户选择的配置方案,对虚拟机模块进行安装组件以及配置组件操作;

接口调用模块,调用各种组件的接口,以保证用户和web后台对虚拟机进行操作;

所述web后台模块包括方案配置模块、任务生成模块、虚拟化接口模块、监控模块和消息模块,所述方案配置模块用于提供用户选择部署mysql高可用方案;所述任务生成模块用于将用户选择的方案生成任务;所述虚拟化接口模块集成各种方案的组件接口;所述监控模块用于实时监控mysql、虚拟机及虚拟化接口的状态;所述消息模块用于将各组件的状态及系统状态及时发送显示给用户。

所述mysql高可用方案包括一主多备高可用方案、二主多备高可用方案、perconaxtradbcluster集群方案和mysqlcluster集群方案。

所述虚拟化接口包括vmware接口、openstack接口和kvm接口。

所述消息模块通过邮件、短信或语言的方式发送消息给用户。

所述web模块设有有交互页面,所述交互页面包括有创建、关闭、删除、重启和系统状态。

实施例1:

如图2所示,本实施例中采用的mysql高可用方案为一主多备高可用方案,该方案包括客户端、对外访问接口、keepalived服务、两组haproxy、一组mysql主服务器和多组mysql备用服务器,所述客户端通过对外访问接口连接到keepalived服务,所述keepalived服务提供高可用性,作为两组haproxy的高可用,所述mysql主服务器与多组mysql备用服务器之间数据同步,且所述mysql主服务器与mysql备用服务器均分别与两组haproxy连接。

实施例2:

如图3所示,本实施例中采用的mysql高可用方案为二主多备高可用方案,该方案包括客户端、对外访问接口、keepalived服务、两组haproxy、两组mysql主服务器和多组mysql备用服务器,所述客户端通过对外访问接口连接到keepalived服务,所述keepalived服务提供高可用性,作为两组haproxy的高可用,两组mysql主服务器之间数据同步,同时分别与两组haproxy连接,且两组mysql主服务器分别连接多组mysql备用服务器。

实施例3:

如图4所示,本实施例中采用的mysql高可用方案为perconaxtradbcluster集群方案,该方案包括包括客户端、对外访问接口、keepalived服务、两组haproxy和pxc集群,所述客户端通过对外访问接口连接到keepalived服务,所述keepalived服务提供高可用性,作为两组haproxy的高可用,所述pxc集群与两组haproxy连接。

所述pxc集群包括多组节点,所述节点之间数据同步,且分别与两组haproxy连接。

实施例4:

如图5所示,本实施例中采用的mysql高可用方案为mysqlcluster集群方案,该方案包括客户端、对外访问接口、keepalived服务、两组haproxy和cluster集群,所述客户端通过对外访问接口连接到keepalived服务,所述keepalived服务提供高可用性,作为两组haproxy的高可用,所述cluster集群与两组haproxy连接。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均包含在本发明的保护范围之内。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值