如何向我在私有子网中的集群注册我的 Amazon ECS 容器实例?

上次更新时间:2019 年 7 月 26 日

我使用集群创建向导,通过 Amazon ECS 控制台在私有子网中创建了一个 Amazon Elastic Container Service (Amazon ECS) 集群。但是,我的容器实例无法注册到该 ECS 集群。如何解决此问题?

简短描述

如果您在私有子网中通过 Amazon ECS 控制台使用集群创建向导创建了一个集群,则您的容器实例会使用公共 IP 地址启动。因此,容器实例无法注册到 ECS 集群,因为它们无法与 ECS 终端节点通信。

要重新配置环境以便在不使用公共 IP 地址的情况下启动容器实例,请完成以下步骤。

解决方法

更新 AWS CloudFormation 模板

  1. 打开 AWS CloudFormation 控制台
  2. 堆栈名称列中,选中包含您之前创建的集群的堆栈。
  3. 选择模板选项卡。
  4. 复制模板,然后将其粘贴到代码编辑器中。
  5. 在模板的 AWS::AutoScaling::LaunchConfiguration 部分,将 AssociatePublicIpAddress 属性更改为 false
  6. 保存对模板文件所做的更改。
  7. 使用修改后的模板更新堆栈

现在,您可以在 Amazon ECS 控制台中查看新集群,并且可以在不使用公共 IP 地址的情况下启动容器实例。

扩展实例

  1. 打开 Amazon ECS 控制台
  2. 选择您之前创建的集群。
  3. 选择ECS 实例选项卡,然后选择您的实例。
  4. 选择扩展 ECS 实例
  5. 所需实例数量部分,输入 0,然后选择扩展
    注意:此操作将终止使用公共 IP 地址创建的实例。
  6. 实例终止后,选择扩展 ECS 实例
  7. 所需实例数量部分,输入符合您的需求的数量,然后选择扩展

这篇文章对您有帮助吗?

我们可以改进什么?


需要更多帮助吗?