我正在创建一个云形成文件,用于设置 EC2 实例并在其上安装一些应用程序等。然后它还会安装用于添加网络密码保护的鱿鱼。
我遇到的问题是在设置实例时需要使用外部 IP 和公共(public) DNS 地址设置配置文件。不幸的是,这些在 EC2 实例初始化之前并不存在,如果我尝试在云形成脚本中的实例的 userData 中引用该值,我会收到循环引用错误。
有谁知道在创建实例并分配公共(public) IP 和 DNS 地址后如何获取 cloudformation 脚本来更新此配置?
最佳答案
您可以从 metadata server 获取此信息在http://169.254.169.254每个 EC2 实例都可用。
要获取公共(public)IP,请使用:
curl -f http://169.254.169.254/latest/meta-data/public-ipv4
要获得公共(public)领域的使用:
curl -f http://169.254.169.254/latest/meta-data/public-hostname
在您的用户数据脚本中使用它们。
关于amazon-web-services - Cloudformation EC2 实例在初始化时将外部 DNS 和 IP 添加到 .conf 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49862945/