首先 能够用ContOS虚拟机 克隆 5个虚拟机,注意(克隆主机必须装了Docker,克隆后,克隆机都会有Docker)node
配置 网络web
克隆CentOS虚拟机 docker
最后和到以下结果网络
打开2377端口 tcp
firewall-cmd --zone=public --add-port=2377/tcp --permanentui
重启防火墙spa
firewall-cmd --reload.net
而后进入CentOS 7 64位3d
初始化 Swarmcode
sudo docker swarm init --advertise-addr 192.168.0.102:2377 --listen-addr 192.168.0.102:2377
A: (初始化后Swarm后能够经过 docker swarm join-token worker 查看Swarm的Token信息 )
上图下箭头便是添加功能节点命令,代码以下:
sudo docker swarm join --token SWMTKN-1-1fmeankvtj5x8483gsxuhgwvhrdt2yt6japzopemjcucv8ykit-4xj0shobna3bu2u1tk377z2ch 192.168.0.102:2377 --advertise-addr 192.168.0.105:2377 --listen-addr 192.168.0.105:2377
B: 查看添管理能节点命令
docker swarm join-token manager
上图下箭头便是添加管理节点命令 (注意 先关闭添加管理节点机器的防火墙,否则可能不成功),代码以下:
sudo docker swarm join --token SWMTKN-1-1fmeankvtj5x8483gsxuhgwvhrdt2yt6japzopemjcucv8ykit-4xj0shobna3bu2u1tk377z2ch 192.168.0.102:2377 --advertise-addr 192.168.0.104:2377 --listen-addr 192.168.0.104:2377
能够经过Docker info查看相关信息
添加管理节点 (注意 先关闭104的
防火墙,否则可能不成功)
先登入另外一台虚拟机
关闭防火墙
systemctl stop firewalld
添加管理节点
sudo docker swarm join --token SWMTKN-1-1fmeankvtj5x8483gsxuhgwvhrdt2yt6japzopemjcucv8ykit-4xj0shobna3bu2u1tk377z2ch 192.168.0.102:2377 --advertise-addr 192.168.0.104:2377 --listen-addr 192.168.0.104:2377
添加功能节点
sudo docker swarm join --token SWMTKN-1-1fmeankvtj5x8483gsxuhgwvhrdt2yt6japzopemjcucv8ykit-4xj0shobna3bu2u1tk377z2ch 192.168.0.102:2377 --advertise-addr 192.168.0.105:2377 --listen-addr 192.168.0.105:2377
建立Swarm Service
这里的five是我用.net Core建立的Image,如今我要用这个境像建立5个Swarm Servie容器
sudo docker service create --name myfiveweb -p 8080:5000 --replicas 5 five
查看Swarm Service 运行状况
docker service ls
详情
docker service ps myfiveweb
查看Docker 节点信息
docker node ls
若是报 docker node ls错:
Error response from daemon: rpc error: code = Unknown desc = The swarm does not have a leader. It's possible that too few managers are online. Make sure more than half of the managers are online.
解决方法:
docker swarm init --force-new-cluster
提高为管理节点命令
sudo docker node promote fhdpncl3ay8vl5ogmbdh42ia8
将管理节点降级
docker node demote 0nbt 降级
删了节点
先在节点机器上执行
sudo docker swarm leave --force
而后再Swarm主管理机上执行
docker node rm ablwad6b 删除