Swarm搭建 Docker集群

一、环境准备

1、准备服务器如下:

172.19.230.69 node1

172.19.230.70 node2

172.19.230.64 node3

2、修改主机名:

hostnamectl set-hostname node1

3、关闭防火墙

systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动

4、修改docker监听端口

vi /lib/systemd/system/docker.service

修改前,如下图

在ExecStart加入: -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock(注意空格,避免docker 无法启动)

修改后,如下图

5、重启docker服务

systemctl daemon-reload ##使配置文件生效
systemctl restart docker

二、Swarm安装和集群创建

1、Swarm镜像下载

分别在机器上安装swarm

docker pull swarm

2、初始化Swarm

docker swarm init --advertise-addr 172.19.230.69

上面命令执行后,该机器自动加入到swarm集群。这个会创建一个集群token,获取全球唯一的 token,作为集群唯一标识。后续将其他节点加入集群都会用到这个token值。

其中,--advertise-addr参数表示其它swarm中的worker节点使用此ip地址与manager联系。命令的输出包含了其它节点如何加入集群的命令。

3、添加集群节点

在node2 机器执行node1生成的token

docker swarm join
--token SWMTKN-1-2yqqs7si5hpht6sk4y5xnxr18n81qsinh2wu3h09ayqpr7xfzz-9kbnqhbq54uev7sa1h5xha1gk
172.19.230.69:2377

4、查看集群节点

docker node list

三、问题点

如果节点进行变化,强制移除执行命令: docker swarm leave --force

查看是否移除成功:docker node list

其他操作:

swarm join-token :可以查看或更换join token。
docker swarm join-token worker:查看加入woker的命令。
docker swarm join-token manager:查看加入manager的命令
docker swarm join-token --rotate worker:重置woker的Token。
docker swarm join-token -q worker:仅打印Token。
原文地址:https://www.cnblogs.com/qk523/p/11248688.html