我们有一个CloudFormation堆栈,我们想提供给我们的客户。当他们运行堆栈时,我们希望直接接收一些输出值,即我们不希望它们需要它们来向我们发送输出。我们首先想到的是使用SNS和CF的通知功能,但似乎该主题必须位于运行模板的帐户中,而不能位于其他帐户中。我们还考虑了将现有的SNS主题作为模板的一部分进行预订,但是没有收到消息。
我们意识到CF是一种资源创建工具,但我们认为必须有一种方法可以自动将信息传递给我们。不必是SNS。关于我们如何能够做到这一点的任何想法?
答案 0 :(得分:0)
更新您的CF脚本以包含lambda和cloud watch规则,该规则在cron上每5分钟运行一次。
授予lambda IAM权限以查询堆栈/获取所需的任何输出值。
当lambda触发时,您可以查询所需的数据,并可以将其发送给自己,但您认为合适。例如将HTTP POST到您拥有的API。
要完成您的lambda,应调用cloud watch API来禁用cloud watch规则,这样该代码就不会再次运行。
您应该考虑是否所有这些都抵消了对客户说“请向我们发送x y z的详细信息”的努力。如果您有10个客户端,可能没有,如果您有1000个客户端,那么可能。