Amazon cloudformation 有没有有效的方法调试cloudformation脚本?

Amazon cloudformation 有没有有效的方法调试cloudformation脚本?,amazon-cloudformation,Amazon Cloudformation,我想找到一种调试cloudformation脚本的方法 我编写了一些bash脚本,当通过SSH手动执行时可以工作 当通过云形成执行时,它确实失败了。 还有一些内在的cloudformation函数无法通过bash执行,这使得它们很难调试 整个剧本需要30分钟。因此,当我认为我完成了-我重新启动脚本,并在30分钟后发现另一个错误 有没有办法减少这种循环 有没有办法执行命令,cloudformation将如何执行该命令?我发现调试cloudformation脚本最有效的方法是使用失败的模板,删除所有

我想找到一种调试cloudformation脚本的方法

我编写了一些bash脚本,当通过SSH手动执行时可以工作

当通过云形成执行时,它确实失败了。 还有一些内在的cloudformation函数无法通过bash执行,这使得它们很难调试

整个剧本需要30分钟。因此,当我认为我完成了-我重新启动脚本,并在30分钟后发现另一个错误

有没有办法减少这种循环

有没有办法执行命令,cloudformation将如何执行该命令?

我发现调试cloudformation脚本最有效的方法是使用失败的模板,删除所有部署失败的资源以及依赖这些资源的资源,然后创建cloudformation堆栈。这样做的好处是,可以提前创建失败元素所依赖的所有资源,然后可以更新堆栈,并调试一个元素,直到它创建为止。如果失败,它会将更新回滚到工作状态,这比再次创建整个堆栈要快得多


当堆栈由于权限而失败时,请注意事件堆栈,因为如果您遵循最低权限,这也是很常见的。好的方面是,CloudFormation通常很好地告诉您特定用户/角色/etc无权对特定资源执行特定操作。

您能举一个CloudFormation正在运行且失败的命令示例吗?我在CloudFormation中看到的最常见的问题是确保授予适当的权限,而不是具体的失败问题。我要求提供一种调试cloudformation的方法。我发现调试cloudformation的最佳方法是增量添加资源,然后更新堆栈。这样做的好处是,当您进行更改时,只需要创建新资源,而现有资源已经可以工作了。如果发现某个资源给您带来了麻烦,请先创建没有该资源的堆栈,然后添加该资源。在这种情况下,如果出现故障,它将只回滚到现有堆栈,您可以调试该资源。