Amazon web services 我的云形成模板无法创建资源,且不会产生任何错误

Amazon web services 我的云形成模板无法创建资源,且不会产生任何错误,amazon-web-services,amazon-sns,amazon-cloudformation,Amazon Web Services,Amazon Sns,Amazon Cloudformation,我有一个大型的CloudFormation模板,它有数百个资源。在更新过程中,除一个:SNS报警主题外,所有内容都已成功更新 部署堆栈时,我没有收到任何错误,但即使主题不存在,也永远不会创建主题 我不希望任何人能够为我提供解决方案,但我只是想知道如何解决问题。从部署中获得输出是有帮助的,但是事件太少,并且实际上没有反映正在更新/创建的资源量,因此它们很少有助于找出哪里出了问题 模板验证也很成功,但这几乎是必然的,因为部署也会成功。关于解决live CloudFormation堆栈的问题,Clou

我有一个大型的CloudFormation模板,它有数百个资源。在更新过程中,除一个:SNS报警主题外,所有内容都已成功更新

部署堆栈时,我没有收到任何错误,但即使主题不存在,也永远不会创建主题

我不希望任何人能够为我提供解决方案,但我只是想知道如何解决问题。从部署中获得输出是有帮助的,但是事件太少,并且实际上没有反映正在更新/创建的资源量,因此它们很少有助于找出哪里出了问题


模板验证也很成功,但这几乎是必然的,因为部署也会成功。

关于解决live CloudFormation堆栈的问题,CloudFormation最近刚刚添加了对,这将帮助您在尝试将更新应用到正在运行的堆栈之前预览更改并解决更新中的潜在问题

特别是关于SNS主题,使用资源从头开始创建SNS主题是正确的。但是,如果您在SNS资源中使用某个属性,请确保该名称在整个AWS帐户中是唯一的,如中所述:

资源名称在所有活动堆栈中必须是唯一的。如果重用模板来创建多个堆栈,则必须更改或删除模板中的自定义名称

因此,在多次部署的堆栈中重用常量
TopicName
,可能会导致您所描述的问题

此外,如果您试图使用添加/删除的订阅更新现有的CloudFormation创建的主题,请注意中的以下重要注意事项:

重要

创建Amazon SNS主题后,无法使用AWS CloudFormation更新其属性。您可以使用AWS管理控制台修改Amazon SNS主题


作为通过CloudFormation添加/删除现有SNS主题订阅的一个潜在解决方案,有一个库包含一个可能会有所帮助的资源()。

关于解决live CloudFormation堆栈的问题,CloudFormation最近刚刚添加了对,这将帮助您在尝试将更新应用到正在运行的堆栈之前预览更改并解决更新中的潜在问题

特别是关于SNS主题,使用资源从头开始创建SNS主题是正确的。但是,如果您在SNS资源中使用某个属性,请确保该名称在整个AWS帐户中是唯一的,如中所述:

资源名称在所有活动堆栈中必须是唯一的。如果重用模板来创建多个堆栈,则必须更改或删除模板中的自定义名称

因此,在多次部署的堆栈中重用常量
TopicName
,可能会导致您所描述的问题

此外,如果您试图使用添加/删除的订阅更新现有的CloudFormation创建的主题,请注意中的以下重要注意事项:

重要

创建Amazon SNS主题后,无法使用AWS CloudFormation更新其属性。您可以使用AWS管理控制台修改Amazon SNS主题


作为通过CloudFormation添加/删除现有SNS主题订阅的一个潜在解决方案,有一个包含资源()的库可能会有所帮助。

当然,我一直在考虑这个问题,我读到你不能更新主题,这实际上是否意味着您不能在云结构更新期间创建主题?我的测试表明,尽管您不能更新现有主题(由于
更新到资源类型AWS::SNS::topic不受支持而失败。
),但您可以在现有堆栈的云结构更新期间创建新主题。当然,我有,继续思考这个问题,我读到你不能更新一个主题,这实际上意味着你不能在云形成更新期间创建一个主题吗?我的测试表明,尽管你不能更新一个现有的主题(失败的原因是
更新到资源类型AWS::SNS::topic不受支持。
),您可以在现有堆栈的CloudFormation更新过程中创建一个新主题。在您提供此答案之前(尽管写得不错,希望能帮助他人),我发现最后一部分是我的问题所在。在您提供此答案之前(尽管写得不错,希望能帮助他人)我发现最后一部分是我的问题所在。