docker的swarm高可用集群的搭建

在三台虚拟机上安装docker
安装包下载,提取码ggc9

开启服务
server1为主节点
server2,3为工作节点

  • ############################1.开启swarm

server1上初始化swarm

docker swarm init

在这里插入图片描述
在server2,3上开启docker后都复制这个到shell

docker swarm join --token SWMTKN-1-0wdqnyzef4f7xn5tlf2drbwhgchfoj5hzxiar1d7li0py3xdzj-cnj5nrah9d1i5a7s5hrtw7sw3 172.25.16.1:2377

在这里插入图片描述
server1上查看节点信息

docker node ls

在这里插入图片描述
所有server上添加nginx镜像
一些封装好的docker镜像,提取码e4yf

cd ~/images/
docker load -i nginx.tar

在这里插入图片描述
在server1上查看网卡设备名
在这里插入图片描述
创建服务

docker service create --name web --publish 80:80 --replicas 3 nginx

在这里插入图片描述
安装这个服务可以查看桥接

yum install bridge-utils -y

在这里插入图片描述
查看网络服务状态

docker service ps web

在这里插入图片描述
写一个发布页文件复制到容器里
docker1
在这里插入图片描述
docker2
在这里插入图片描述
docker3
在这里插入图片描述
测试

for i in {1..10}; do curl 172.25.16.1;done

在这里插入图片描述
修改集群数量
测试

docker service scale web=6
for i in {1..10}; do curl 172.25.16.1;done

在这里插入图片描述
因为新的节点没有写发布页,所以会出现nginx的默认发布页,这是正常的。
也可以缩减
在这里插入图片描述

  • #############################################2.图形化监控
    导入镜像
cd images/
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.16.1:8080
在这里插入图片描述

  • ###################################3.自动化更新镜像
    三个节点都导入httpd镜像
cd ~/images
docker load -i httpd.tar

输入命令更新
含义是docker服务更新
更新镜像为httpd
更新间隔为5s
更新节点个数为3
目标docker服务为web

docker service update --image httpd:latest --update-delay 5s --update-parallelism 3 web

在这里插入图片描述真机浏览器连接172.25.16.1:8080
此时nginx已经变为httpd
在这里插入图片描述

  • ######################################4.测试高可用
    在server2上停止docker服务
    真机浏览器连接172.25.16.1:8080
    在这里插入图片描述
    可见此时已经自动把节点分配到server3上
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值