我想以某种方式从中获取公共实例地址或主机名knife ec2 create ...
,但我找不到任何机制来这样做。
由于我目前正在使用chef-solo
,我编写了一个knife ec2 create
使用引导模板运行的简单脚本来为准备节点chef-solo
。在该脚本的中间点(knife ec2 create
完成后),我需要复制并粘贴实例的公共 IP,然后将其用于“推送”到节点(将 cookbook、角色、data_bags、host-dna 等复制到节点并运行chef-solo
)。
chef-client
当您使用和引导节点时chef-server
,您不会遇到此问题,因为新节点会联系并获取其配置。但目前chef-server
我更愿意坚持使用。chef-solo
答案1
看一眼http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/AESDG-chapter-instancedata.html
就像是:
wget http:// 169.254.169.254 /latest/meta-data/公共主机名
或者将最后一部分改为
公共 IPv4