我正在使用ecs任务来部署我的服务。 但是,最近注意到,当我对服务进行更新时,通常会立即取消启动的第一个任务,因为它未能通过负载均衡器运行状况检查。 我认为这是因为启动需要更多时间(一秒或两秒)。 我该如何配置?

#1楼 票数:0

使用新的Task Definition更新ECS服务时,建议您还设置healthCheckGracePeriodSeconds参数。 有关更多详细信息,请参见服务定义参数

如果您使用的是cli,则应该可以通过aws ecs update-service --cluster <value> --service <value> --health-check-grace-period-seconds <value>

例如,如果您的HealthCheck间隔为30秒,并且两次不健康的检查将导致服务被替换,但是您知道您的服务需要花费65秒才能启动,则可以设置--health-check-grace-period-seconds 95 ,即使服务被认为不正常,这也会告诉ECS,让它继续运行直到95秒过去。 在这种情况下,我选择了95,因为下一次运行状况检查将在90秒后进行,因此,如果我做得不到,则负载平衡器可能会在不正常检查生效之前不会注意到服务是否正常。

  ask by ldm translate from so

未解决问题?本站智能推荐:

1回复

如何为ECS任务分配IAM角色

可以为ECS任务分配IAM角色,以便可以与AWS API进行通信,而无需将用户凭据传递给任务。 这适用于AWS CLI和SDK。 这里有很好的文档,但我找不到涵盖所有细节的正确例子,我会创建一个自我回答问题,以免给别人带来痛苦。
1回复

如何知道ECS定时任务开始的时间?

我有一个关于 ECS 计划任务的问题。 当我使用cron调度的ECS计划任务时,如何知道任务开始的时间。 Fargate 上的 ECS 计划任务需要几分钟才能启动。 我需要每 5 分钟使用一次准确的时间。 是否有一些有用的环境变量? 谢谢。
3回复

最小任务数,ECS

我想知道是否有可能以任何方式更新此字段“最小任务数”(无论语言如何,如果在 lambda 中可用) 为什么 ? 因为我链接到服务的平衡器有问题。 从 NodeJS SDK,我可以更改所需的任务字段,这很好,但创建的任务被我在Cloudwatch 中的警报停止。 我看到的是我必须更新这两个,以便它们不
1回复

如何监控ECS任务循环?

正如问题所指出的,由于某些导致我的实例崩溃的错误,是否有任何方法可以监视ECS何时持续注册和注销实例? 如果可以的话,我希望能够创建警报或通知我的东西。
1回复

ECS任务变更

我正在尝试检查 ECS 任务的最后状态,如果它已停止,则必须使用 cloudwatch 事件触发 lambda。 我在验证 JSON 事件时收到以下错误消息。 错误消息:事件模式包含无效元素(只能是用引号、数字和未加引号的关键字 true、false 和 null 括起来的字符串) 请让我知道代码有
2回复

如何从ECS任务内安装awscli?

问题:如何从 ECS 任务内安装 aws cli? 描述:我正在使用 docker 容器来运行 logstash 应用程序(它是弹性系列的一部分)。 docker 镜像名称是“docker.elastic.co/logstash/logstash:7.10.2”这个logstash应用程序需要写入
1回复

为什么ECS任务无法扩展?

我在AWS ECS中创建了一个服务,并将最大任务数配置为30。所需的任务数为2。我还将CPUUtilization> = 75设置为向上扩展,将CPUUtilization <25设置为向下扩展。 我使用Artillery每秒向ECS上的服务发送200个请求,我可以看到CPU使用
1回复

如何为使用计划任务且没有服务的ECS集群设置自动扩展?

我有一个 ECS 集群,我绑定了一个 ec2 实例,并使用 ECS 仪表板上的“计划任务”功能设置了每天运行的计划任务。 这个任务运行一堆容器,每个容器在内存中都相对昂贵,而且当所有容器同时运行时,情况更加复杂。 我目前没有为 ECS 集群设置服务,我的理解是,对于我的目标,在某个时间间隔运行设置的