当前位置: 首页 > 知识库问答 >
问题:

亚马逊ECS和亚马逊EC2有什么不同?

邹铭
2023-03-14

我刚刚开始使用AWS EC2。我明白EC2就像一台远程计算机,在那里我可以做几乎所有我想做的事情。然后我发现了ECS的事。我知道它使用Docker,但我对这两者之间的关系感到困惑。

ECS只是EC2中的Docker安装吗?如果我已经有一个EC2并且我启动了一个ECS,这是否意味着我有两个实例?

共有1个答案

谷梁镜
2023-03-14

你的问题

ECS只是EC2中的docker安装吗?如果我已经有一个EC2,那么我启动一个ECS,这是否意味着我有两个实例?

没有。AWS ECS只是EC2实例的逻辑分组(集群),所有EC2实例都是ECS主机的一部分,即ECS可以发送命令在它们上启动容器(EC2)。如果您已经有一个EC2,然后启动ECS,您仍然只有一个实例。如果将EC2添加/注册(通过安装AWS ECS容器代理)到ECS,它将成为集群的一部分,但仍然是EC2的单个实例。

  • EC2-只是一个远程(虚拟)机器。
  • ECS代表弹性容器服务-根据计算机集群的基本定义,ECS基本上是EC2机器/实例的逻辑分组。从技术上讲,ECS只是一种配置,用于有效地使用和管理EC2实例资源,即存储、内存、CPU等。

为了进一步简化它,如果您已经启动了一个Amazon ECS,但没有添加EC2实例,那么这是没有好处的,即您对此无能为力。ECS只有在向其添加一个(或多个)EC2实例时才有意义。

这里的下一个令人困惑的事情是容器术语--它不是完全虚拟化的机器实例,而Docker是我们可以用来创建容器实例的一种技术。Docker是一个实用工具,您可以安装在我们的机器上,这使它成为Docker主机,并且您可以在该主机上创建容器(与虚拟机相同--但要轻量级得多)。总而言之,ECS只是关于EC2实例的集群,并使用Docker实例化这些(EC2)主机上的容器/实例/虚拟机。

Amazon ECS集群中的每个实例(EC2实例)上运行的容器代理向Amazon ECS发送有关实例当前正在运行的任务和资源利用率的信息,并在收到来自Amazon ECS的请求时启动和停止任务。有关更多信息,请参见Amazon ECS容器代理。一旦设置,每个创建的容器实例(ec2machine/node)都将是Amazon ECS群中的一个实例。

有关更多信息,请阅读本文档的步骤10:启动Amazon ECS容器实例:

为容器实例选择一个AMI。您可以选择Amazon ECS优化的AMI或其他操作系统,如CoreOS或Ubuntu。如果您不选择Amazon ECS优化的AMI,则需要遵循安装Amazon ECS容器代理的步骤。

#!/bin/bash
echo ECS_CLUSTER=your_cluster_name >> /etc/ecs/ecs.config
#!/bin/bash
yum install -y aws-cli
aws s3 cp s3://your_bucket_name/ecs.config /etc/ecs/ecs.config
 类似资料:
  • 我想自己托管一个Redis服务器。我将EC2与Elasticache进行了比较。我想知道EC2的缺点是什么。 一个EC2微型实例的成本与ELasticache微型实例一样高,但其ram却多出400 mb。为什么要使用Elasticache而不在ec2 tiny iNtance上设置自己的Redis服务器?

  • 亚马逊云 图 1.20.2.1 - AWS AWS,即 Amazon Web Services,是亚马逊(Amazon)公司的 IaaS 和 PaaS 平台服务。AWS 提供了一整套基础设施和应用程序服务,使用户几乎能够在云中运行一切应用程序:从企业应用程序和大数据项目,到社交游戏和移动应用程序。AWS 面向用户提供包括弹性计算、存储、数据库、应用程序在内的一整套云计算服务,能够帮助企业降低 IT

  • 我想问alexa各种各样的问题,最后我想让它问“你还有什么想知道的吗?”当我说“是”(yes是工作建议)时,它应该根据我的意图来建议我。就像我在

  • 但有些多重问题, 如何在.NET中对Amazon Cognito用户池执行身份验证。我以以下方式启动Auth: 他们的文档非常非常糟糕,当我想回应挑战时,我似乎找不到该通过什么。 我假设它只是用默认的JWT中间件配置OWIN,还是应该期待其他东西?

  • 我们正在开发一个系统,我们需要向数千部手机发送推送通知。我们使用Amazon SNS进行了设置。我们将向每部手机发送单独的消息,因此我们直接发送到SNSendpointARN,而不是主题ARN。 我们目前正在想这个系统的性能。我在网上找不到任何关于可以向SNS发送多少消息的内容。例如,如果我需要向25000个SNSendpoint发送25000条消息,我可以以多快的速度发送它们?秒、分钟、小时?

  • 我正在努力培养Alexa技能。我仍在试图让Alexa在有意向请求时说些什么,但我遇到了一个错误,我不知道该怎么办。当我通过Alexa服务模拟器运行示例话语时,我得到了错误: 无法调用远程终结点,或者它返回的响应无效。 如果我在lambda测试事件中运行相同的语句,我得到的错误是: "错误消息":"异常:引用错误:未定义输出" 我的javascript代码是 任何帮助将不胜感激,谢谢!