【问题标题】:Getting no information from describe_images?没有从 describe_images 获取信息?
【发布时间】:2019-08-22 20:44:47
【问题描述】:

我想获取特定 AMI 的图像 ID。我通过使用 boto3.describe_images 来做到这一点。

首先,我很宽泛,只将平台作为我的过滤器,但这太慢了,所以我将它指定为我想要的特定 ami,我得到了一个结果,但它没有任何内容。

client = boto3.client('ec2')
    response = client.describe_images(
        Filters=[
            {
                'Name': 'name',
                'Values' : [
                    'Microsoft Windows Server 2016 Base'
                ]
            }
        ]

    )
    print (response)

我希望有一个图像列表,但我得到了

{'Images': [], 'ResponseMetadata': {'RequestId': '**********', 'HTTPStatusCode': 200, 'HTTPHeaders': {'content-type': 'text/xml;charset=UTF-8', 'content-length': '219', 'date': '*date*', 'server': 'AmazonEC2'}, 'RetryAttempts': 0}}

【问题讨论】:

  • AMI 名称通常采用Windows_Server-2016-English-Full-Base-2019.08.16 格式。您可以使用 Amazon EC2 控制台的 AMI 部分来搜索 AMI 并查看它们的典型名称。 (确保您选择“公共图像”,否则您只会看到您自己的 AMI。)
  • 是的,这行得通,但是有没有一种方法可以在不包括日期的情况下找到 Windows_Server-2016-English-Full-Base 的最新图像 ID?

标签: python amazon-web-services amazon-ec2 aws-lambda boto3


【解决方案1】:

造成这种情况的几个潜在原因

  1. 您的默认区域中不存在该图像。您可能希望在初始化客户端时传递区域

    client = boto3.resource('ec2', region_name='REPLACE_AMI_REGION')

  2. 您可能正在使用非 AMI 所在帐户的凭据运行脚本

  3. 可能您的滤镜与图片不匹配

  4. 实际上没有 AMI,希望您已从 AWS 控制台确认。

【讨论】:

    猜你喜欢
    • 2012-05-02
    • 1970-01-01
    • 1970-01-01
    • 2023-03-22
    • 2017-01-23
    • 1970-01-01
    • 1970-01-01
    • 2020-10-09
    • 2022-11-01
    相关资源
    最近更新 更多