我的任务是预热在ECS上部署的Docker容器内运行的ASP.Net Core应用程序。看来,通过Kubernetes,我们可以定义一个准备检查路径,Kubernetes将首先发送请求,并且只有在请求完成后才开始发送实际流量。
我们在ECS上有相同的功能吗?
关于这个问题的参考,但可以在Kubernetes中解决: https://blog.markvincze.com/running-asp-net-core-in-auto-scaling-containers-warm-up/
答案 0 :(得分:1)
ECS确实在今年开始使用Docker HEALTHCHECK。
Amazon ECS与Docker容器运行状况检查集成以允许您 明确定义和监视每个容器的运行状况。运用 HEALTHCHECK命令,您可以定义要监视的参数 对于任务定义中的每个容器。运行任务(组的 现在为运行容器分配了基于的健康状态 他们必需的容器的健康,以及任务的健康状况是 与ECS服务调度程序集成以自动重新部署 不健康的任务和进行服务的滚动更新。你可以检查一下 ECS控制台中的任务和容器的运行状况 使用ECS DescribeTasks API。
如果ECS确定您的任务不健康,它将替换您的任务。如果您碰巧也在使用AWS LB,则可以将LB配置为也进行运行状况检查,以确保您将流量路由到健康节点。 ECS没有以kubernetes的方式区分活跃性和准备性。它只有健康"检查概念。