AWS ECS 集群容量提供程序
Posted
技术标签:
【中文标题】AWS ECS 集群容量提供程序【英文标题】:AWS ECS cluster Capacity Provider 【发布时间】:2020-12-11 07:45:37 【问题描述】:我正在使用此 cloudformation 模板为 ECS 集群创建容量提供程序,其中包含在 ecs 容量提供程序中指定的自动缩放组:
"ECSCapacityProvider":
"Type": "AWS::ECS::CapacityProvider",
"Properties":
"AutoScalingGroupProvider":
"AutoScalingGroupArn": "Ref" : "AutoScalingGroup"
,
"DependsOn" : "AutoScalingGroup"
,
"DRCluster":
"Type": "AWS::ECS::Cluster",
"Properties":
"ClusterName": "Ref" : "WindowsECSCluster" ,
"CapacityProviders" : "ECSCapacityProvider",
"Tags": [
"Key": "environment",
"Value": "dr"
]
,
"DependsOn" : "ECSCapacityProvider"
但是在创建堆栈时,它导致了以下错误:
Model validation failed (#/CapacityProviders: expected type: JSONArray, found: String)
我找不到容量提供者的适当文档。我正在使用它将 Auto Scaling 组附加到集群,我希望这是这样做的正确方法。我是 cloudformation 的新手,非常感谢任何帮助。
【问题讨论】:
【参考方案1】:CapacityProviders 是一个字符串列表,而不是像现在这样的String
:
"CapacityProviders" : "ECSCapacityProvider",
因此,在您DRCluster
中,您可以改用以下内容:
"CapacityProviders" : [ "Ref": "ECSCapacityProvider" ],
【讨论】:
以上是关于AWS ECS 集群容量提供程序的主要内容,如果未能解决你的问题,请参考以下文章
ECS 容量提供程序是不是实际适用于每个 ec2 实例的一项任务?
在 Terraform 销毁期间,terraform 在销毁 Auto-scaling 组之前尝试销毁 ECS 集群并且失败了