amazon-web-services - 一台大EC2、多台小EC2、一台ECS,哪个划算?

标签 amazon-web-services amazon-ec2 deployment amazon-ecs

我们正在一台 AWS t2.large(2 CPU 和 8GB RAM)EC2 机器上运行 6 个基于 Java Spring Boot 的微服务项目。当我们看到这台 EC2 机器的 CPU 和 RAM 利用率时,CPU 利用率不足,几乎没有达到 1%,但 RAM 使用率始终高于 85%。

现在我们想再添加 2 个微服务。我们绝对不能在已有的 EC2 中部署这 2 个服务,因为 RAM 将耗尽。因此,我们需要再添加一台 EC2 机器,或者需要将 t2.large 升级到 t2.xlarge(4 个 CPU 和 16GB RAM)来部署 2 个新服务,但我们也希望具有成本效益。

我们正在研究一些 AWS 文章,它说运行 ECS 服务将具有成本效益,因为计费基于 CPU 和 RAM 的使用量(引用 - ECS Fargate Pricing )。由于我们的 CPU 始终未得到充分利用,我们认为 ECS Fargate 定价政策将降低我们的成本。

因此,对于上述案例,有 3 个关于成本节省的问题,

  1. 如果我们更喜欢 ECS,这真的比添加一个 EC2 实例更划算吗?因为 ECS 定价是根据资源使用量计算的?
  2. 如果我们需要在 ECS 中部署 8 个项目,是否会创建 8 个 EC2 实例,或者我们仍然可以使用 1 或 2 台 EC2 计算机来部署所有 8 个项目?
  3. 我们是否应该以不同的方式彻底重新思考我们的部署流程?

最佳答案

If we prefer ECS, will that be really cost-effective than adding one more EC2 instance as ECS pricing is based on how much resources are utilized?

这措辞有点尴尬,但我认为您要问的是 Fargate 是否比标准 EC2 实例更具成本效益。我认为,我们很难为您确定这一点,尽管您应该能够根据您的实际使用情况进行一些快速估计,并将其与最小必要实例类型的成本进行比较。

要添加另一个选项,请考虑 Reserved Instances ,因为如果您愿意将它们保留一段时间,它们会提供相当大的折扣。从链接的文档中,您会发现 1 年预订可享受 40% 左右的折扣(与按需预订相比),3 年预订可享受 60% 左右的折扣。

此外,请考虑不同的实例类型,特别是内存优化实例 r4x1。这些可以让您购买更多的内存和更少的CPU。

If we need to deploy 8 projects in ECS, will that create 8 EC2 instances or we can still use 1 or 2 EC2 machines for all 8 projects deployment

假设您在这里不是指的是 Fargate,答案是……这取决于情况;这取决于如何设计您的系统。您可以在一个实例上托管任意数量的容器(假设您有资源)——但这是否是您在高可用性/灾难场景中想要的容器由您决定。

Should we completely re-think about our deployment process in a different way?

当您对第一个问题得出结论时,就会得到答案。

关于amazon-web-services - 一台大EC2、多台小EC2、一台ECS,哪个划算?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48896406/

相关文章:

linux - 使用 Forever 部署 Meteor

c# - Excel Interop DLL 的 Clickonce 异常

amazon-web-services - 如何在不同地区找到相同规范的AMI?

javascript - 如何解码/解析 Cognito 返回给我的访问和 ID token ?

python - 在 Amazon Linux 上运行 Dashku python 脚本时出现问题

amazon-ec2 - AWS - EBS已附加但在实例上找不到

ruby-on-rails - Devise 在 Elastic Beanstalk 上举行 session 时出现未经授权错误的问题。 401 未经授权

ios - 模拟器与 iPad 上部署的差异

reactjs - 放大 : dynamically sharing S3 files between Cognito users

javascript - 使用字节的 AWS Rekognition JavaScript SDK