AWS CloudFormation StackSet失败,并显示消息“试图在现有堆栈上执行创建操作”

时间:2018-10-09 05:07:11

标签: amazon-web-services amazon-cloudformation

我有3个筹码组。我使用状态机部署它们。我希望状态机是幂等的,为了测试这一点,我多次用相同的输入调用它们。

最初,所有3个堆栈集都已成功部署。

在第二次更新中,3个堆栈集中的2个成功,但是第三个堆栈失败,错误为Attempt to perform create operation on the already existing stack

知道为什么会这样吗?

我尝试为第二次尝试设置不同的客户端令牌/操作ID,但仍然失败,并出现相同的错误。

2 个答案:

答案 0 :(得分:0)

可能有几个原因,更多详细信息可以帮助您了解问题。 在您提到的错误之前,您还看到更多错误吗?

主要,请尝试遵循以下步骤: “必须在同一堆栈中管理作为AWS CloudFormation堆栈的一部分创建的资源。必须通过堆栈更新来完成对资源的修改。如果删除了资源,则还需要进行堆栈更新以从服务器中删除资源。模板。如果资源被意外或有意手动删除,则在尝试执行堆栈更新时会遇到错误。”

答案 1 :(得分:0)

之所以发生这种情况,是因为失败的堆栈集的CFN模板具有NAMED资源(CAPABILITY_NAMED_IAM)。具有此类资源的模板无法以幂等方式进行部署。解决方案是仅在堆栈实例尚不存在时才调用CreateStackInstance。以前,它曾经每次由状态机逻辑调用。

相关问题