2017-03-17 35 views
1

我正在使用cloudformation模板设置consul 3节点群集。我能够使用chef-solo自动化cluser安装,但无法找到更新server.json文件的方法,因为这些是动态创建的。有没有人遇到过这种情况?使用厨师的基于群集的配置

在启动3个AZ之间的3个节点后,userdata将调用chef-solo来安装consul,直到在这里我能够自动化。

我寻找想法,我可以自动/etc/consul.d/server/json文件:

"retry_join": [ "10.x.x.x:8301", "10.x.x.x:8301", "10.x.x.x:8301" ] 

目前,我有硬编码的IP的,但如何提取IP的动态时,AWS堆栈推出?

回答

0

通常的AWS-y做法是从每个节点查询EC2 API以查找所有其他节点,通常使用标签但其他元数据也可以工作。您可以使用IAM实例配置文件安全地授予机器有限的API访问权限。

+0

谢谢coderanger,这个建议帮助我解决了动态场景。 – sandy