我有一个云形成模板,它启动了3个EC2实例的序列。第一个实例生成一个加密密钥,其他2个实例将需要与第一个实例进行通信。
寻找我可以使用的机制,以便云形成模板可以启动第一个实例,运行脚本来创建密钥,并获取值以传递到接下来的两个节点以启动它们。我可以使用wait条件来允许延迟,但是无法将密钥字符串清理干净。
有办法做到这一点 - 但它似乎是一个黑客: - 将第一台服务器连接到具有写入S3存储桶权限的角色;将实例保存在那里。 - 将第二个第三个服务器连接到具有读取所述存储桶的权限的角色;把它拿起来。
我缺少最佳做法吗?
答案 0 :(得分:0)
我有一篇关于可能有用的内容的博客文章:
http://krogebry.blogspot.com/2014/12/chef-aws-kms_13.html
基本上我使用KMS来托管我用于解密Chef数据包的特殊密钥。
在您的情况下,我可能会修改这样的内容以在CF中创建密钥,或者具有执行密钥生成的预启动任务,然后将密钥数据传递给创建的客户端。这样您就可以使用KMS的实用程序,而无需在S3中实际存储特殊键。