docker - 将 Docker 容器部署到 swarm 集群中的多个节点
问题描述
我有一个由 6 个工作节点和 3 个主节点组成的集群,因此总共有 9 个节点。我的 swarm 集群中有不同大小的机器。所以有一个要求,我需要根据节点的大小在特定的工作节点上部署某些服务(容器)。我知道我们可以在 docker-compose 文件中设置放置约束,并且可以指定主机名。
由于我将运行该服务的 2 个副本,因此 swarm 将在我设置了约束的同一个工作人员上创建副本。但我不希望副本在同一个工作节点上运行。
我们可以在设置放置约束时选择指定多个主机名吗?请指导。
解决方案
您可以通过标签组合一些节点。
docker node update --label-add ssd=fat_machine hostname1
docker node update --label-add ssd=fat_machine hostname2
并在 docker-compose 中定义标签
constraints: [node.labels.ssd == fat_machine]
推荐阅读
- python - Differences between declaring a list & appending and list()
- security - 公司代理背后:npm i => 证书链中的自签名证书
- python - 具有困难 JSON 的 Python PUT 请求
- java - 如何将json字符串转换为对象
- c# - c#忽略为空的属性
- python - Python 通过请求抓取和读取加密返回
- dart - 如何在我的删除 http 请求中添加正文
- javascript - 如何从不同的 URL 中提取特定参数
- nginx - 使用负载均衡器服务在 k8s 上部署 nginx 服务器时不提示客户端证书
- google-analytics - GA 不显示 pageView dataLayer 事件