我为t1, t2, ..., tk
跨节点的给定服务设置了一组任务N1, N2, ...Nw
。
由于使用率较低,我不需要像k
. 我只需要l
任务 ( l < k
)。
事实上,我不需要w
节点,所以我想开始移除机器并支付更少的费用。一次卸下一台机器就可以了。
每个服务都有自己的状态。服务以复制模式启动。
1)如何删除单个节点并强制 docker swarm 不要为服务重新创建相同数量的任务?
笔记:
- 我可以确保没有工作被重新路由到特定节点上运行的任务,因此删除特定节点是安全的。
- 这是最简单的解决方案,假设在删除的节点上提供服务,我将最终得到
w - 1
节点和服务。l
k - l
或者
2)如何从 docker swarm 中删除特定的容器(任务),并通过删除任务的数量来降低服务的副本数量?
笔记:
- 我假设我已经删除了一个节点。该节点的服务被重新部署到其他节点。
- 我监控自己不提供流量的容器(任务)-> 不需要维护状态
或者
3)任何其他解决方案?