成都网站建设设计

将想法与焦点和您一起共享

mysql集群怎么部署的 mysql集群原理详解

MySQL之galera集群部署

1. 准备环境

创新互联主要业务有网站营销策划、网站制作、做网站、微信公众号开发、小程序设计、H5场景定制、程序开发等业务。一次合作终身朋友,是我们奉行的宗旨;我们不仅仅把客户当客户,还把客户视为我们的合作伙伴,在开展业务的过程中,公司还积累了丰富的行业经验、网络营销推广资源和合作伙伴关系资源,并逐渐建立起规范的客户服务和保障体系。 

2. 安装Galera(每台都需要安装)

删除原版本mysql

配置yum源

安装

如果是本地安装,注意安装顺序

特别注意:

3. 修改密码

4. 每台机器创建用于数据同步的用户

5. 配置Galera Replication

galera1配置

galera2配置

galera3配置

galera4配置

6. 重启服务:每台机器

7. 查看端口

8. 测试

Kubernetes 部署 Mysql 8

mysql可以以docker的形式在集群内部署,也可以安装在集群之外,以服务的形式部署到集群内。

(1)、如果是在集群内部署,可以启动一个ReplicationController,用以对mysql pod进行监控,并同时启动一个Service,用以集群访问。

(2)、如果mysql是安装在集群之外,那么可以启动一个Endpoint和Service,将mysql引入集群之中。

下面分别对这两种方式进行部署。

创建mysql-rc.yaml和mysql-svc.yaml,分别如下:

mysql-rc.yaml

mysql-svc.yaml

在mysql-rc.yaml中,image参数可以指定mysql的版本,如8.0.11、5.7.22等。这里省略了,表示用latest。另外,可以指定镜像库,这里使用阿里云镜像库,在安装docker时进行了配置。env参数指定了mysql的root密码。

在mysql-svc.yaml中,targetPort表示mysql pod中mysql窗口的目标端口,默认为3306,type类型为NodePort,表示将映射到本地端口,本地端口为nodePort: 30306。

接下来启动ReplicationController和Service,执行以下命令:

启动后可以查看mysql部署在了哪个node上,执行以下命令可以查看:

(6)、退出mysql和容器,执行quit;退出mysql,按ctrl+p后,再按ctrl+q从容器中返回node主机。

设置好mysql后,可以远程连接node中的mysql,node的ip为127.0.0.1,映射的端口为30306,可以用navicat工具连接到这个myql。

容器化 | 在 KubeSphere 中部署 MySQL 集群

本文将演示如何在 KubeSphere[1] 上部署 RadonDB MySQL on Kubernetes 2.1.2 ,快速实现高可用的 MySQL on K8s。

若已在 KubeSphere 部署过历史版本 Operator,可以选择如下方式更新到最新版本。

可任选一个 RadonDB MySQL 配置示例[5] 部署,或自定义配置部署。

以 mysql_v1alpha1_mysqlcluster.yaml 模版为例,创建一个 RadonDB MySQL 集群。

注意

未指定项目时,集群将被默认安装在 kubesphere-controls-system 项目中。若需指定项目,安装命令需添加 --namespace=project_name 。

预期结果

预期结果

在 demo-project 项目中,查看 RadonDB MySQL 集群状态。

至此,完成在 KubeSphere 中部署 RadonDB MySQL 集群。

[1]:KubeSphere:

[2]:OpenPitrix:

[3]:创建操作:

[4]:项目网关:

[5]:配置示例:


文章标题:mysql集群怎么部署的 mysql集群原理详解
文章路径:http://chengdu.cdxwcx.cn/article/ddssjso.html