AWS Fargate 启动时间

问题描述 投票:0回答:1

目前我正在研究如何在 AWS 上编排我们的容器化微服务。 ECS 的 Fargate 选项看起来很有前途,无需管理 EC2 实例。

尽管在 Fargate 中启动一项“任务”所需的时间非常长,即使对于简单的单容器设置也是如此。对于我们的 Docker 应用程序映像,通常需要 60 秒到 90 秒。我听说这可能需要更多时间,例如几分钟左右。

所以问题是:虽然 Docker 容器通常可能会在几秒钟内启动,但在 Fargate 的情况下,造成如此开销的原因到底是什么?

附注搜索相关问题会返回这样的选项:

  1. Docker 镜像加载/提取时间
  2. 负载均衡器的影响 - 注册、健康检查宽限期等

但是,即使在没有部署负载均衡器的最简单的配置中,并且假设 Docker 映像未缓存在 ECS 中,在 Fargate 中使用单个 Docker 映像启动任务(约 60 秒)仍然比启动相同的任务至少慢约 2 倍裸 EC2 实例上的 Docker 映像(25 秒)

docker amazon-ecs aws-fargate
1个回答
22
投票

是的,需要更长的时间,但我们无法概括 Fargate 的启动时间。您可以通过调整一些设置来减少这个时间。

vCPU 直接影响启动时间,因此您必须记住,在裸 EC2 实例中,您可以使用完整的 vCPU,而在 Fargate 的情况下,您可能会分配其中的一部分。

由于 AWS 为您管理服务器,因此它们只需执行一些底层操作。将虚拟机分配到您的 VPC 中以下载/提取 docker 映像、分配 IP 并运行容器可能会花费很多时间。

这是一个不错的博客,在下面文章的末尾,您可以找到好的实践。

分析 AWS Fargate

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.