Docker Swarm 日常管理
前提:基础Docker Swarm环境
服务、容器、任务三者关系:
节点管理
变更管理
- 节点的可用性(AVAILABILITY)状态
状态 | 说明 |
---|---|
Active | 集群中该节点可被指派任务 |
Pause | 集群中该节点不可指派新的任务,但其他已存在的任务仍保持运行 |
Drain | 集群中该节点不可指派新的任务,Swarm调度器停止已存在的任务,并将它们调度到可用节点上 |
常见的变更操作:
- 设置管理节点只具有管理功能
- 对服务进行停机维护,可以修改AVAILABILITY为Drain状态
- 暂停一个节点,使该节点不再接收新的任务
- 恢复一个不可用或者暂停的节点
#将管理节点的AVAILABILITY值修改成Drain
docker node update --availability drain manager
docker node ls
添加标签元数据
- 支持给每个节点添加标签元数据
- 根据标签可选择性地调度某个服务部署到期望的一组节点上
格式:docker node update --label-add 键值
docker node update --label-add chenshiyi-01 worker01
节点提权/降权
#将工作节点变为管理节点
docker node promote worker01 worker02
docker node ls
#将管理节点变为工作节点<