使用 boto3 获取 public_ip_id 的关键应该是什么? AllocationId 上的关键错误

问题描述 投票:0回答:1
public_ip_id = instance.network_interfaces_attribute[0]['Association']['AllocationId']

KeyError:'AllocationId'

如果不是 AllocationId 那么正确的属性应该是什么?

amazon-web-services boto3
1个回答
0
投票

所有 3 种方法都会打印相同的 IP 地址(尽管如果您有多个网络接口,结果会有所不同):

import boto3

ec2_resource = boto3.resource('ec2')
instance = ec2_resource.Instance('i-0e5bcb595a576c9e9')

print(instance.public_ip_address)

ec2_client = boto3.client('ec2')
instance = ec2_client.describe_instances(InstanceIds=['i-0e5bcb595a576c9e9'])

print(instance['Reservations'][0]['Instances'][0]['PublicIpAddress'])
print(instance['Reservations'][0]['Instances'][0]['NetworkInterfaces'][0]['Association']['PublicIp'])
© www.soinside.com 2019 - 2024. All rights reserved.