我有一个云形成模板,它正在启动一系列3个EC2实例。第一个实例生成一个加密密钥,其他两个实例需要该密钥才能与第一个实例通信。
寻找一种我可以使用的机制,以便云形成模板可以启动第一个实例,运行脚本来创建密钥,并获取要传递给下两个节点以启动它们的值。我可以使用waitcondition来允许延迟,但是还不能干净利落地取回密钥字符串。
确实有一种方法可以做到这一点-但这看起来像是一个黑客:-将第一个服务器附加到一个有权写入S3存储桶的角色;让实例将其保存在那里。-将第二台服务器和第三台服务器附加到有权读取所述存储桶的角色;将其重新拾起。
有没有我错过的最佳实践?
发布于 2016-01-05 03:01:56
我有一篇博客文章可能会对你有所帮助:
http://krogebry.blogspot.com/2014/12/chef-aws-kms_13.html
基本上,我使用KMS托管一个特殊的密钥,用于解密厨师数据包。
在您的例子中,我可能会修改类似这样的东西来在CF中创建密钥,或者让一个预启动任务来执行密钥生成,然后将密钥数据向下传递到创建的客户端。这样,您就可以利用KMS的实用程序,而不必将特殊密钥实际存储在S3中。
https://stackoverflow.com/questions/34326137
复制相似问题