docker群停止旋转容器在250

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

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

问题在于这3个服务,前两个,每个容器1个(像他们应该这样工作),第三个服务在300个容器中启动了248个容器(我在做docker service ls时看到这个)。 我试图search是否有服务或群体的限制,但找不到任何。

我将非常感谢任何帮助,我可以得到。

  • 如果是这样,每个节点有30GB RAM和8个内核,而我只用了1/3的RAM。

我不认为你可以为一个服务启动超过250个,因为他们都坐在同一个networking上,基本上意味着使用了250多个IP地址。 除非你定义了一个自定义的ipv6networking并且尝试这个,否则你最好给你的群添加一个额外的networking,然后在这个群上旋转一个新的相同的服务,但是在另一个networking上

TL; DR;

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

我只是想出来。 问题不在于服务或群体,而在于networking。

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

 ipam: config: -subnet: 10.0.0.0/22 

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

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