我正在创建一个云形成文件,该文件设置一个EC2实例,并在其上安装一些应用程序等。然后,它还安装了squid,用于添加来自web的密码保护。
我遇到的问题是,在安装实例时,需要使用外部ip和公共dns地址来设置配置文件。不幸的是,在初始化EC2实例之前,这些值是不存在的,如果我试图在云形成脚本中的实例的userData中引用这个值,则会得到一个循环引用错误。
有人知道如何在创建实例和分配公共IP和DNS地址之后,获得cloudformation脚本来更新这个conf吗?
发布于 2018-04-16 18:23:25
您可以从元数据服务器 at http://169.254.169.254获得每个EC2实例上可用的信息。
为了获得公共IP的使用:
curl -f http://169.254.169.254/latest/meta-data/public-ipv4
要获得公共域的使用:
curl -f http://169.254.169.254/latest/meta-data/public-hostname
使用您的userdata脚本中的那些。
https://stackoverflow.com/questions/49862945
复制