修改hostname
hostnamectl set-hostname [新名字]
192.168.0.213主机创建一个集群
[root@localhost ~]# docker swarm init --advertise-addr 192.168.0.213
docker swarm join --token SWMTKN-1-2plmrviitdn9mo13qseiuepltj0uu3lowqnkjzrvdszqelze74-4ef5oj11yry1aalwo2zhplnr7 192.168.0.213:2377
其他主机centos7上的docker加入集群
docker swarm join --token SWMTKN-1-2plmrviitdn9mo13qseiuepltj0uu3lowqnkjzrvdszqelze74-4ef5oj11yry1aalwo2zhplnr7 192.168.0.213:2377
在管理节点上将所有的工作节点提升为管理节点,防止挂掉一台,还能正常运行
docker node promote xcynkq4ihatobd0dnhug6hkzy
(降级为work方法 docker node demote )
创建服务
docker service create --name web app4
docker service create --name web -d -p 12536:22 -d -p 8986:80 -d -p 23523:3306 -d -p 21526:6379 -d -p 8976:8080 -d -p 32685:2181 app4
给服务暴露端口
docker service update --publish-add 42352:22 --publish-add 8758:80 --publish-add 3985:3306 --publish-add 32565:6379 --publish-add 8966:8080 --publish-add 23252:2181 web
负载均衡,将应用设置为3个工作节点,达到高可用,一台出问题,其他服务器还可以用
docker service scale web=3
工作节点排除manager,manager只作为管理节点
上图中manager也运行了一个服务,将manager排除在外
docker node update --availability drain manager
# node update : 更改节点状态
# --availability : 三种状态
active: 正常
pause:挂起
drain:排除
查看管理节点的token
docker swarm join-token manager
强制离开集群
docker swarm leave --force
查看当前swarm状态
docker info