swarm使用
server1 2 3 安装好docker
docker network rm mac_net1 删掉没用网络
server1
docker swarm init
server2 3
docker swarm join --token SWMTKN-1-09trdon7fqn41f2n9y21ce47jnt4e8b63quqvubrnqfiy470eg-cxodahazph6br1gwm7gzztucq 172.25.11.1:2377
server1
docker node ls
[[email protected] ~]# docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS ENGINE VERSION
39zp7zw06n1rslzvtsxviqjnq * server1.example.com Ready Active Leader 18.06.1-ce
hb4j7x1yu4a40ahtcocn5w7li server2 Ready Active 18.06.1-ce
tzhpszakws2hkgwplg9w6cvlw server3 Ready Active 18.06.1-ce
server1
自建网络系统可以解析
docker network create -d overlay my_net1
docker service create --name web --network my_net1 --publish 80:80 --replicas 30 nginx
下面是使用自代网桥
docker service create --name web --publish 80:80 --replicas 3 nginx
[[email protected] ~]# docker service ls
ID NAME MODE REPLICAS IMAGE PORTS
vxrdx3kum3yp web replicated 3/3 nginx:latest *:80->80/tcp
yum install -y bridge-utils
[[email protected] ~]# brctl show
bridge name bridge id STP enabled interfaces
docker0 8000.024204e7493f no veth0f01b5c
vethe3b9c72
vethe5e8102
docker_gwbridge 8000.0242c57bf5a2 no veth26d89ae
vetha92f97b
server 1 2 3 写文件
echo web1>index.html
docker cp index.html ID号:/usr/share/nginx/html
docker service scale web=6 拉申六个容器
for i in {1..10};do curl 172.25.11.1;done
[[email protected] ~]# for i in {1..10};do curl 172.25.11.1;done
web6
web1
web3
web2
web5
web4
web6
web1
web3
web2
加入监控server1
docker load -i visualizer.tar
docker service create --name=viz --publish=8080:8080/tcp --constraint=node.role==manager --mount=type=bind,src=/var/run/docker.sock,dst=/var/run/docker.sock dockersamples/visualizer
172.25.11.1:8080
docker service rm web
版本更新
docker save rhel7:v1 > rhel7.tar
每个节点都需要 但是如果有自己的仓库就不要了,仓库建立之前博客有
docker load -i rhel7.tar
server1
docker service update --image rhel7:v1 --update-delay 5s --update-parallelism 5 web
[[email protected] ~]# docker service update --image rhel7:v1 --update-delay 5s --update-parallelism 5 web
image rhel7:v1 could not be accessed on a registry to record
its digest. Each node will access rhel7:v1 independently,
possibly leading to different nodes running different
versions of the image.
web
overall progress: 6 out of 6 tasks
1/6: running
2/6: running
3/6: running
4/6: running
5/6: running
6/6: running
verify: Service converged
每隔5s更新一次 每次更新5个