Docker swarm停止在250处旋转容器

时间:2017-08-17 23:41:07

标签: docker docker-compose dockerfile docker-swarm

TLDR:Docker不会超过250个容器。

我正在为具有2个节点的群体部署3个docker服务的集群。其中2个服务需要包含1个容器(replicas: 1文件中有docker-compose),第三个服务需要有300个容器(设置replicas: 300)。

问题在于它是这三个服务,前两个有每个1个容器(就像他们应该的那样工作),第三个服务从300个中提取248个容器(我在docker service ls时看到这个)。我尝试搜索服务或群体是否有限制但找不到任何限制。

我将非常感谢我能得到的任何帮助。

  • 如果有问题,每个节点有30GB RAM和8个内核,而我只使用1/3的RAM。

2 个答案:

答案 0 :(得分:1)

我只是搞清楚了。问题不在于服务或群体,而在于网络。

当我使用driver: overlay时,默认subnet10.0.0.0/24,结果为254地址。所以我将subnet中的掩码更改为22,这导致1022地址,我补充道:

ipam:
  config:
    -subnet: 10.0.0.0/22

现在docker-compose文件中的网络部分如下所示:

networks:
  web:
    driver: overlay
    ipam:
      config:
        - subnet: 10.0.0.0/22

答案 1 :(得分:0)

我认为你可以为一项服务增加250多个服务,因为他们所有人都坐在同一个网络上基本上意味着使用250多个ip地址。除非你定义一个自定义的ipv6网络并尝试这样做,否则最好不要在你的swarm中添加额外的网络,然后在该群体上旋转一个新的相同服务,但在另一个网络上

TL; DR;

定义2个网络并将它们全部添加到服务中,然后查看是否可以启动超过250个副本