Docker搭建跨主机PXC集群

简介
新的项目由于特殊的原因并不能使用rancher编排管理docker容器,只能使用常规的docker容器环境,其中就涉及到部署MySQL数据库的集群;在以前的思路中最为常见的就是MySQL主从,MySQL读写分离,但最近发现有了一种新的MySQL集群部署方式PXC;简而言之PXC集群没有主次之分,都是读写,部分从属关系,都是负载节点,至少三个节点以上;至于优缺点以后在实际运用中慢慢验证。

配置环境
系统:Centos 7.6 X86
软件:docker 19.03
镜像:percona/percona-xtradb-cluster:5.6
跨主机插件:overlay

重要步骤
1.创建docker跨主机网络环境
详情可以见传送门

2.创建第一个节点

docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=123456 --privileged=true --name=pxc-node1 --net=dbpxc percona/percona-xtradb-cluster:5.6

CLUSTER_NAME—集群名称,后续新加入节点都要保持一致
XTRABACKUP_PASSWORD—集群同步的密码,后续新加入节点都要保持一致
关于网络设置以及持续化存储可以根据实际情况修改

3.加入节点

docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=123456 -e CLUSTER_JOIN=pxc-node1 --privileged=true --name=pxc-node2 --net=dbpxc percona/percona-xtradb-cluster:5.6

CLUSTER_JOIN—加入第一个节点的集群之中,请注意这个地方请填写pxc-node1的IP地址,不然其他的节点是无法通过docker名称寻找到真正的节点信息。

4.测试是否成功开启集群
在一个节点创建一个数据库,查看另外的节点是否会同步
Docker搭建跨主机PXC集群

上一篇:PXC集群参数之wsrep_on


下一篇:Docker 创建 PXC 高可用集群并配置 Harpoxy 负载均衡