Я создаю экземпляры EC2 в AWS, используя python. Я хочу перечислить root идентификатор тома создаваемых мной экземпляров. Я создаю экземпляры только с томом root. Дополнительные тома EBS не подключены.
После создания экземпляра и получения идентификатора экземпляра я попытаюсь получить идентификатор тома для тома root:
instance_list = []
volume_list = []
if instances:
for instance in instances:
instance_id = instance.instance_id
instance_list.append(instance_id)
root_volume = ec2_client.describe_instance_attribute(InstanceId=instance_id, Attribute='blockDeviceMapping')
volume_list.append(root_volume)
print(f"Volumes: {root_volume} Volumes Type: {type(root_volume)}")
. Ответ, который я получаю от этого оператора печати:
Volumes: {'BlockDeviceMappings': [], 'InstanceId': 'i-0930a235f6b1c47b2', 'ResponseMetadata': {'RequestId': 'bb679ad1-5c81-461f-b5e6-427bc140df68', 'HTTPStatusCode': 200, 'HTTPHeaders': {'content-type': 'text/xml;charset=UTF-8', 'content-length': '299', 'date': 'Tue, 21 Jan 2020 21:22:16 GMT', 'server': 'AmazonEC2'}, 'RetryAttempts': 0}} Volumes Type: <class 'dict'>
BlockDeviceMappings
пусты.
Однако, когда я смотрю на экземпляр в консоли, я вижу, что он имеет toot идентификатор тома vol-02ebd87bcf9bf62be
. Как можно получить идентификатор тома экземпляра root тома программно, используя python?