Docker

Docker搭建PXC集群

2021-07-28  本文已影响0人  奥斯卡布奇诺

一、拉取镜像

docker pull percona/percona-xtradb-cluster:5.7.21

docker tag percona/percona-xtradb-cluster:5.7.21 pxc

docker rmi percona/percona-xtradb-cluster:5.7.21

二、创建docker集群并创建docker网络

主节点执行:docker swarm init

打印出如下内容后:复制红框内的内容到其他子节点执行

创建docker网络(加粗为网络名称)

docker network create -d overlay --attachable swarm_mysql

三、创建主节点

docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=iking.com -e CLUSTER_NAME=PXC1 -e XTRABACKUP_PASSWORD=iking.com -v pxc1:/var/lib/mysql --privileged --restart=always --net=swarm_mysql --name=pxc1 pxc

说明:

3306端口:数据库访问端口

4444端口:sst全量传输

4567端口:pxc cluster 相互通讯端口

4568端口:ist增量传输

2377端口:用户集群通信

7946端口:容器网络发现

4789端口:容器覆盖网络

pxc1为挂载数据卷,不存在时自动创建:采用docker搭建PXC集群时,不支持文件目录的挂载方式,而只支持数据卷的挂载方式

MYSQL_ROOT_PASSWORD:mysql初始密码

XTRABACKUP_PASSWORD:备份密码

CLUSTER_NAME:集群名称

四、docker数据卷操作

docker volume ls  【查看已有的数据卷】

docker volume create pnv1 【创建一个叫做pnv1的数据卷】

docker volume rm 数据卷名字 【删除某个数据卷】、

docker volume inspect pnv1  【查看某个数据卷详情】

五、创建从节点

docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=iking.com -e CLUSTER_NAME=PXC1 -e XTRABACKUP_PASSWORD=iking.com -e CLUSTER_JOIN=pxc1 -v pxc2:/var/lib/mysql --privileged --restart=always --net=swarm_mysql --name=pxc2 pxc

建议创建至少2个从节点,如果只是1主1从,当主挂掉后,从无法使用

上一篇 下一篇

猜你喜欢

热点阅读