Je n'arrive pas à comprendre comment configurer un Couche OpsWorks en utilisant un cluster ECS dans CloudFormation. La création de ma couche échoue en raison de l'erreur ci-dessous, mais il ne semble pas y avoir de moyen clair d'enregistrer le cluster avec la pile dans le modèle. J'ai essayé d'ajouter EcsClusterArn
à la fois Stack et Layer, mais cela n'a pas fonctionné. L'API a une commande mais je voudrais tout contenir dans mon template.Comment enregistrer un cluster ECS avec Opsworks Stack dans CloudFormation?
Erreur:
Attributes - EcsClusterArn: XXX must be registered to the layer's stack first.
Snippet du modèle:
"ecsCluster" : {
"Type" : "AWS::ECS::Cluster"
},
...
"opsworksStack" : {
"Type" : "AWS::OpsWorks::Stack",
"Properties" : {
"Name" : "my-stack",
"ServiceRoleArn" : {
"Fn::Join" : [ "", [ "arn:aws:iam::", {
"Ref" : "AWS::AccountId"
}, ":role/", {
"Ref" : "ServiceRole"
} ] ]
},
"DefaultInstanceProfileArn" : {
"Fn::Join" : [ "", [ "arn:aws:iam::", {
"Ref" : "AWS::AccountId"
}, ":instance-profile/", {
"Ref" : "InstanceRole"
} ] ]
},
"UseOpsworksSecurityGroups" : "false",
"ChefConfiguration" : {
"BerkshelfVersion" : "3.3.0",
"ManageBerkshelf" : "true"
},
"ConfigurationManager" : {
"Name" : "Chef",
"Version" : "11.10"
}
}
},
"opsworksLayer" : {
"Type" : "AWS::OpsWorks::Layer",
"DependsOn" : "ecsCluster",
"Properties" : {
"StackId" : {
"Ref" : "opsworksStack"
},
"Type" : "ecs-cluster",
"Name" : "my-layer",
"Shortname" : "my-layer",
"Attributes" : {
"EcsClusterArn" : {
"Fn::Join" : [ "", [ "arn:aws:ecs:", {
"Ref" : "AWS::Region"
}, ":", {
"Ref" : "AWS::AccountId"
}, ":cluster/", {
"Ref" : "ecsCluster"
} ] ]
}
},
"CustomSecurityGroupIds" : [ {
"Ref" : "ec2DefaultSecurityGroup"
} ],
"EnableAutoHealing" : "true",
"AutoAssignElasticIps" : "false",
"AutoAssignPublicIps" : "false",
"InstallUpdatesOnBoot" : "true"
}
}
Merci, Thien
Salut Thien, je me demande si vous étiez en mesure de résoudre ce problème? Je suis également confronté à la même erreur lors de la connexion d'un cluster ECS à une pile Opsworks. –
@ManishJoshi J'avais créé un cas avec Amazon et ils avaient résolu le bug le 24 février 2016.Il devrait fonctionner maintenant en utilisant "EcsClusterArn" dans la section "Attributs" pour le OpsWorks Layer comme décrit dans la documentation. – Thien
Merci @Thien, Malheureusement, il ne fonctionne toujours pas pour moi, j'ai soulevé des cas avec Amazon, ils sont toujours à la recherche. Je vais laisser les gens ici savoir si je trouve une autre raison pour cette erreur aussi :) –