如何设置docker swarm中的manager节点,不执行任何的task?
2023-09-11 14:14:16 时间
在刚创建好的一个docker swarm集群中,manager节点虽然具备管理的角色,但是,还是允许task在上面运行的,那么如果就让manager节点,干一个活,就是管理,调度的任务,不让其执行任何的具体任务,不干活,该如何设置?
下面,先来看下,swarm中集群的节点信息:
[root@nccztsjb-node-07 ~]# docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS ENGINE VERSION
mjktd9is5xd8d4el2awrqby5k * nccztsjb-node-07 Ready Active Leader 20.10.17
u87i9artgcnyki0osp9gvylu3 nccztsjb-node-08 Ready Active 20.10.17
z1x3ufsdxekrt6w5n37m7azfe nccztsjb-node-09 Ready Active 20.10.17
zbsfhbwjlit8f650bqvcbtkhl nccztsjb-node-10 Ready Active 20.10.17
[root@nccztsjb-node-07 ~]#
标记起来的,就是manger节点:
在这个管理节点上,运行着service的一个服务:
[root@nccztsjb-node-07 ~]# docker service ps nginx
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS
n9hpnz1djx1f nginx.mjktd9is5xd8d4el2awrqby5k 172.20.58.152/middleware/nginx:1.21.4 nccztsjb-node-07 Running Running 20 hours ago *:8080->80/tcp,*:8080->80/tcp
z26ktqqsbj6x nginx.u87i9artgcnyki0osp9gvylu3 172.20.58.152/middleware/nginx:1.21.4 nccztsjb-node-08 Running Running 20 hours ago *:8080->80/tcp,*:8080->80/tcp
m77cm6zvkq82 nginx.z1x3ufsdxekrt6w5n37m7azfe 172.20.58.152/middleware/nginx:1.21.4 nccztsjb-node-09 Running Running 20 hours ago *:8080->80/tcp,*:8080->80/tcp
3o0s4dekfl2v nginx.zbsfhbwjlit8f650bqvcbtkhl 172.20.58.152/middleware/nginx:1.21.4 nccztsjb-node-10 Running Running 20 hours ago *:8080->80/tcp,*:8080->80/tcp
[root@nccztsjb-node-07 ~]#
下面,就是关键了,让这个manager节点,不再执行任何的具体的task······
将manager节点,驱逐 (drain)
[root@nccztsjb-node-07 ~]# docker node update --availability drain mjktd9is5xd8d4el2awrqby5k
mjktd9is5xd8d4el2awrqby5k
[root@nccztsjb-node-07 ~]#
节点的可用性(AVAILABILITY)更新为Drain状态,上面的task也被终止了
新建service
OK,上面的过程显示,已有的task已经终止了,新建的service是否还会在这个节点上调度呢?
docker service create \
--replicas 6 \
--name redis \
--update-delay 10s \
--update-parallelism 2 \
172.20.58.152/middleware/redis:3.0.6
新部署的service,其中的task是没有在这个节点上运行的:
更为重要的是,不知道你注意了没有,当在manager上执行docker service命令的时候,依然可以进行任务的创建、调度等工作,也就是说,manager角色的作用还是在的!
只是,不执行具体的task了。
读到这里,你明白了没有?
- 如果有你任何的问题,欢迎留言······
相关文章
- Docker入门之七Dockerfile
- 【Docker】容器与系统时间同步
- [Angular CLI] Build application without remove dist folder for Docker Volume
- Docker - Docker加速器(国内镜像)的配置及使用
- docker搭建Hadoop 3节点及N节点集群完整教程
- docker搭建hadoop 3节点集群:镜像使用现成的,不用另做
- 容器服务中的节点失效时Docker容器重新调度介绍
- 【华为云实战开发】2.Docker镜像部署怎么玩才酷炫?
- Docker图形界面管理之Portainer
- 使用 nginx autoindex docker镜像 fancyindex 管理 公司内部的 下载资源
- 020-docker镜像UnionFS、Docker镜像加载原理、分层的镜像与容器、结合docker命令理解镜像
- y25.第二章 Docker从入门到精通 -- docker镜像制作和管理(七)
- y23.第二章 Docker从入门到精通 -- docker 的资源限制(五)
- 错误纠正:关于 docker 镜像被关闭后恢复的问题
- 【云原生之Docker实战】使用docker部署kooteam在线团队协作工具
- 【云原生之Docker实战】使用Docker部署nginx管理工具nginxWebUI
- 【云原生之Docker实战】安装docker镜像分析工具Dive
- 【云原生之Docker实战】使用docker部署kodbox私有云
- Docker容器管理总结
- docker-compose安装yapi接口文档工具——筑梦之路
- docker 导出多个镜像合并成一个tar
- Docker----执行docker pull 下载镜像时报dial tcp: lookup registry-1.docker.io on 192.168.1.1:53: no such host错
- Docker学习笔记17:docker实例之安装 Node.js、PHP、MySQL、Tomcat、Python、Redis、MongoDB、Apache
- docker overlay2存储驱动简介
- 【Docker系列】3.docker-compose安装redis