似乎这个问题已经在这个 thread 上以不同的方式提出过。 。但我的困惑仍然不清楚。我正在努力使用堆栈集将所有资源从一个区域复制到另一个区域。
在 thread 的帮助下,我成功在同一所有者帐户内创建了管理员和目标帐户信任关系。 。
我使用cloudformer在当前区域创建了资源模板并将其保存到S3存储桶中。但是当我尝试使用此模板将资源部署到具有堆栈集的另一个区域时,我遇到了错误。
错误如xxx可用区不存在或无法创建xxx资源或InvalidZone.NotFound等错误
请大家介绍一下将区域资源部署到另一个区域的正确方法。我应该使用堆栈集的示例模板还是预定义的模板?
最佳答案
要理解的关键点是,用于创建堆栈的模板在每个区域中都是相同的。听起来您有一个模板可能引用可用区域之类的内容,因此该模板可以在该可用区域存在的区域中工作,但在该可用区域不存在的区域中失败。
听起来您可以通过在模板中使用条件以及 map 来受益,这样您就可以引用特定于区域的值等。查看此文档,其中包含根据您的描述看起来相关的示例:
https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/conditions-section-structure.html
如果模板在任何区域都可以工作,它将通过堆栈集工作。尝试创建一个非常简单的模板,仅创建一个简单的东西并运行它。当它变得更加复杂时,您可以感受到它是如何工作的。
关于amazon-web-services - 如何使用同一 aws 账户中的堆栈集将所有资源部署到另一个区域?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54702368/