我想使用自动扩展组作为 ECS 集群的容量提供程序。 尽管我只想每个容器实例一个容器,但我还是选择了 awsvpc 作为任务定义的网络模式。 在其他模板中,我使用启动模板(在具有 NAT 的私有子网中)、负载均衡器和目标组创建自动缩放组。
我在 TargetGroup 中选择“ip”作为目标类型,因为我的任务定义中采用了 awsvpc 模式,
当然,目标组与我的自动缩放组没有关联,
我正在使用 ECS 优化的 AMI,
我尚未将用户数据添加到我的启动模板中
不过,当我尝试在集群中创建服务时,会出现错误:“在您的容量提供程序中找不到容器实例”
可能是什么?我不确定是不是。与政策、角色和其他东西有关
我读到有些人可能会将用户数据添加到启动模板中,但我不确定这是否适合我。我想要一个自动缩放组作为容量提供者,而不是单个服务器。
好吧...所以我花了很多时间来追踪这一点。 我正在使用 terraform 创建资源(应该如此),并认为我可以对多个 ASG 或 ECS 集群使用相同的启动模板。 不幸的是,有人决定让启动模板指定实例附加到哪个 ECS 集群。
所以这是修复它的方法。 在启动模板中...底部的“高级详细信息”下有一个名为“用户数据”的小字段。 在这里,您必须在实例上设置一个环境变量来指定它适用于哪个 ECS 集群。
我输入:
#!/bin/bash echo ECS_CLUSTER=测试 >> /etc/ecs/ecs.config;
宾果...使用此启动模板创建的所有实例现在都与“测试”ECS 集群关联。
希望这有帮助