boto3 equivalent to boto.utils.get_instance_metadata()?
在常规的boto 2.38中,我使用boto的
1 | boto.utils.get_instance_metadata() |
在boto3中是否有等效的,或者我是否需要转到底层的直接HTTP地址来获取有关正在运行的实例的元数据?
不,仍然没有与之相当的BOTO3,只是我自己撞到了这个缺口。他们对引用此问题的https://github.com/boto/boto3/issues/313有一个开放功能请求。
至于解决办法,您可以继续使用
1 2 3 4 5 6 7 | # Python2 import urllib2 instanceid = urllib2.urlopen('http://169.254.169.254/latest/meta-data/instance-id').read() # Python3 import urllib.request instanceid = urllib.request.urlopen('http://169.254.169.254/latest/meta-data/instance-id').read().decode() |
看看在python中http获取的最快方法是什么?有关urllib和http://docs.aws.amazon.com/aws ec2/latest/windowsguide/ec2 instance metadata.html instance data元数据服务的URI结构的数据类别的快速介绍。