AWSECSクラスターキャパシティプロバイダー

Aug 22 2020

この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グループをクラスターに接続するために使用しています。これが、正しい方法であることを願っています。私はクラウドフォーメーションに不慣れです、どんな助けでも大歓迎です。

回答

2 Marcin Aug 22 2020 at 06:44

CapacityProvidersは文字列のリストでありString現在のようなものではありません。

"CapacityProviders" : "ECSCapacityProvider",

したがって、DRCluster代わりに次を使用できます。

"CapacityProviders" : [ {"Ref": "ECSCapacityProvider"} ],