ECS任务所需计数不起作用

Lah*_*ana 6 amazon-ec2 amazon-web-services amazon-ecs elastic-load-balancer

我有三个EC2实例,一个经典的负载均衡器。理想情况下,我应该在两个实例中运行两个任务。因此,在创建服务时,我将所需的任务数计为2。

当我尝试运行任务定义的新版本时,出现了我的问题。我更新了服务以运行新的任务定义。因此,理论上应该运行两个更新的任务来代替旧的任务,因为我正在运行三个ec2。

实际上发生的是只有一个更新的任务与旧任务一起运行。因此,即使将所需的计数设置为2,也总共运行了3个任务,如您在给定图像中所见。

在此处输入图片说明

有人知道解决方案吗?

JD *_*ams 2

使用经典负载均衡器时,您只能在 ec2 实例上映射静态端口。

您的部署设置为: min-healthy: 100% max-healthy: 200%

新版本的服务将需要另外两台具有您请求的免费 TCP 端口的主机。由于集群中只有 3 台服务器,因此无法满足此条件。您可以向集群添加更多服务器,也可以使用应用程序负载均衡器 (ALB),它将与 Docker 动态端口映射集成。

有关安全组的更新:要管理安全组,您可以用另一个安全组标记一个安全组。例如,用“app-gateway-alb”标记您的 ALB,它允许来自网络外部的特定端口,然后在容器上有一个安全组,允许来自“app-gateway-alb”的任何 TCP,这是通过将安全性设置为通常在其中放置 CIDR 规则的文本框中的组 ID。