AWS EC2的meta-data 配置说明
在EC2实例中有一个魔法IP 169.254.169.254。
通过访问这个ip,能获得许多与这个实例相关的信息,这些信息被称为meta-data。
meta-data版本历史(最后一行的latest是最常用的)
- wget -q -O – http://169.254.169.254/
 - 1.0
 - 2007-01-19
 - 2007-03-01
 - 2007-08-29
 - 2007-10-10
 - 2007-12-15
 - 2008-02-01
 - 2008-09-01
 - 2009-04-04
 - 2011-01-01
 - 2011-05-01
 - 2012-01-12
 - 2014-02-25
 - 2014-11-05
 - latest
 
看一下最新版本的meta-data有哪些信息
- wget -q -O – http://169.254.169.254/latest/meta-data/
 - ami-id
 - ami-launch-index
 - ami-manifest-path
 - block-device-mapping/
 - hostname
 - instance-action
 - instance-id
 - instance-type
 - local-hostname
 - local-ipv4
 - mac
 - metrics/
 - network/
 - placement/
 - profile
 - public-hostname
 - public-ipv4
 - public-keys/
 - reservation-id
 - security-groups
 - services/
 
大部分的信息看了名字就能知道返回的是什么信息。
例如启动这个实例用的ami-id
- wget -q -O – http://169.254.169.254/latest/meta-data/ami-id
 - ami-0d4cfd66
 
当前实例的instance id
- wget -q -O – http://169.254.169.254/latest/meta-data/instance-id
 - i-6c4d3985
 
其他一些信息本身可以通过linux命令获得,例如本地ip地址。
通过meta-data提供了另一种获取方式。
- wget -q -O – http://169.254.169.254/latest/meta-data/local-ipv4
 - 172.31.43.240
 
- ifconfig
 - eth0 Link encap:Ethernet HWaddr 06:DC:B0:05:FE:C1
 - inet addr:172.31.43.240 Bcast:172.31.47.255 Mask:255.255.240.0
 
临时meta-data
有些meta-data信息不是一直可见,只有到具体事件发生后,才会出现。
例如,Spot Instance由于市场价格提升的原因,在2分钟内会被关闭的时候
http://169.254.169.254/latest/meta-data/spot/termination-time
这里将会返回具体的关机时间。
平常访问这个url会返回404错误
- wget http://169.254.169.254/latest/meta-data/spot/termination-time
 - –2015-08-31 14:56:50– http://169.254.169.254/latest/meta-data/spot/termination-time
 - 正在连接 169.254.169.254:80… 已连接。
 - 已发出 HTTP 请求,正在等待回应… 404 Not Found
 - 2015-08-31 14:56:50 错误 404:Not Found。
 
AWS官方建议,如果需要即时知道什么时候Spot实例会被关闭,最好按5秒钟的间隔来访问这个url。
当这个url返回时间值的时候,立即利用这2分钟时间做清理工作。

QQ咨询