【问题标题】:How to deploy container to subset of worker nodes in a docker swarm using affinity?如何使用亲和力将容器部署到 docker swarm 中的工作节点子集?
【发布时间】:2020-09-01 05:44:01
【问题描述】:

我有一个 docker swarm,有 1 个主节点和 7 个工作节点,跨 3 台机器,所有机器都运行 tomcat 容器。

我希望仅将我所有的容器部署到严格的 2 个工作节点。

我将如何为此类部署设置关联规则?

您能帮我详细说明一下如何实现这一点吗?

【问题讨论】:

    标签: docker docker-swarm rules affinity


    【解决方案1】:

    您可以标记 2 个工作节点:

    docker node update --label-add foo=bar node-1
    docker node update --label-add foo=bar node-2
    

    然后使用部署放置约束强制容器降落在您在上一步中标记的节点上:

    services:
      your-service:
        image: your-image
        deploy:
          placement:
            constraints: [node.labels.foo=bar ]
    

    【讨论】:

    • 你能用swarm affinity提出类似的解决方案吗? @新安德森
    • 我不确定这是否可以本地实现。 swarm affinity 上的文档非常稀缺。
    猜你喜欢
    • 1970-01-01
    • 2019-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多