栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Docker swarm 安装MySQL集群

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Docker swarm 安装MySQL集群

这里直接采用的是5.7.24版本的MySQL

初始化docker swarm :docker swarm init 正常会显示当前服务器作为leader,然后打印出来加入此docker swarm的token。我这里执行过了,使用docker node ls 可以看到当前集群的节点列表,当前仅有一个Leader。

创建 network

这里创建一个overlay的网络,用于集群间的相互通信: docker network create -d overlay --attachable sharednet

拉取命令:

docker pull percona/percona-xtradb-cluster:5.7.24


修改镜像名称:docker tag

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


新增了一个镜像,Image ID 同原来的一样,这时可以删除掉原来的镜像了。

创建数据卷
docker volume create v1

docker volume create backup

在另一台机器上执行下面命令,加入docker 集群:

docker swarm join --token SWMTKN-1-15334ml6i4lmmedpc3c65o133pfqc2vycok6x5b8xtsnog497e-5w1h8hrrc0lee1l8uqnp7ds86 192.168.104.61:2377


上面的token值,可以在manager机器上查询,也就是docker swarm 的Leader机器上查: docker swarm join-token worker

执行成功后,可在集群的主节点上查看节点情况:docker node ls

可以看到 MANAGER STATUS 列,有一个为Leader,即为当前集群的主节点。

无需在从节点上创建同名network,可直接使用。

在主节点上创建mysql容器:

docker run --restart=always  
    -p 3306:3306  
    -e MYSQL_ROOT_PASSWORD=abc123456  
    -e CLUSTER_NAME=PXC  
    -e XTRABACKUP_PASSWORD=abc123456  
    -v v1:/var/lib/mysql  
    -v backup:/data  
    --privileged=true  
    --name=node1  
    --net=sharednet  
    -d pxc:5.7.24


这时可以使用Navicat 连接主节点上的mysql数据库了。右键连接名称,打开命令列界面,看下MySQL版本:select version();

在从节点上执行:

docker run --restart=always  
    -p 3306:3306   
    -e MYSQL_ROOT_PASSWORD=abc123456   
    -e CLUSTER_NAME=PXC   
    -e XTRABACKUP_PASSWORD=abc123456   
    -e CLUSTER_JOIN=node1   
    -v v1:/var/lib/mysql   
    -v backup:/data   
    --privileged=true   
    --name=node2   
    --net=sharednet   
    -d pxc:5.7.24


测试Navicat 连接从节点MySQL:

在主节点上创建数据库 test-mysql:

这时,刷新从节点MySQL,即可看到从节点也自动创建了改数据库:

如果刷新从节点,数据库没有显示的话,可以先关闭连接,再重新连接。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/333503.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号