Docker-------swarm

什么是docker swarm :

Swarm是Docker官方提供的一款集群管理工具,其主要作用是把若干台Docker主机抽象为一个整体,并且通过一个入口统一管理这些Docker主机上的各种Docker资源。Swarm和Kubernetes比较类似,但是更加轻,具有的功能也较kubernetes更少一些。

这里写图片描述

docker swarm的配置过程:

1.需要三个7.3的虚拟机,分别安装:

docker-engine-17.03.1.ce-1.el7.centos.x86_64.rpm
docker-engine-selinux-17.03.1.ce-1.el7.centos.noarch.rpm

这里写图片描述
2.在三台虚拟机上打开docker

systemctl start docker

3.在server1上安装yum install bash-* -y (为了补齐docekr命令,退出登陆再重新连接)
4.在server1上做初始化

docker swarm init

这里写图片描述
5.在server2和server3上做初始化,是为了加入server1的集群中

docker swarm join \
>     --token SWMTKN-1-0pj2s26ve6l8ta4el4tn4zas7wrduj7tymhtm7tndm9hvuezgt-ezq5b03psqfie889g8t5myskx \
>     172.25.1.1:2377

这里写图片描述
1.在server1上导入nginx的镜像并创建集中管理

docker load -i nginx.tar(server2和server3也要做)
# 加载nginx的docker镜像
docker service  create --name nginx --publish 80:80 --replicas 3 nginx

docker service ps nginx    # 保证server1,2,3上均有running的nginx

这里写图片描述
2.在server1上加上监控

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  westos.org/visualizer

3.查看监控和节点是否在线

docker service ls

这里写图片描述
4.在浏览器输入172.25.1.1:8080
这里写图片描述
5.修改nginx的默认发布目录

echo server2 > index.html
  docker container cp index.html nginx.2.mspvtxdy97vfcw4swue0k4pf3:/usr/share/nginx/html

这里写图片描述
6.测试高可用:
这里写图片描述
6.批量修改swarm中的服务
1.在server1,2,3上上导入新的镜像
docker load -i game2048.tar

2.确定更新频率,每次更新几个服务

docker service update --image game2048 --update-parallelism 3 --update-delay 10s nginx

在浏览器中查看,发现会以我们设定的更新频率完成所有更新…

猜你喜欢

转载自blog.csdn.net/jay_youth/article/details/81985231