我怎么能获得aws市场的所有者身份ami?

时间:2017-11-24 06:35:24

标签: amazon-web-services amazon-ec2 aws-sdk terraform

我使用terraform获得官方的centos ami:

data "aws_ami" "centos" {
  most_recent = true
  owners = ["679593333241"] # Centos.org
  filter {
    name   = "name"
    values = ["CentOS Linux 7 x86_64 HVM EBS 1708_01-*"]
  }
}

我需要所有者ID,而我在这种情况下发现它的方式是漫无目的地谷歌直到某篇文章有了它(他们没有说明他们是如何得到它的。)

我无法在ami的market place page.

找到所有者ID

如果我通过它的市场页面启动ami,它创建的ec2实例实际上已为实例" s"所有者"设置了我的个人ID。 field-所以我无法启动ec2实例,检查所有者并以此方式获取。

为什么这是不可能得到的?我一定错过了一些明显的东西。

2 个答案:

答案 0 :(得分:4)

如果您希望使用AWS SDK;最简单的方法是:

aws ec2 describe-images --image-ids ami-0def3275 --region us-west-2

当然,请根据需要更换区域和AMI ID。

如果您想使用jq来解析此问题;你可以这样:

aws ec2 describe-images --image-ids ami-0def3275 --region us-west-2 | jq -r .Images[0].OwnerId

答案 1 :(得分:2)

您不一定需要所有者ID,但显然最好包含以确保您获得所期望的AMI。

鉴于您事先了解受信任的所有者,查找所有者ID的简单方法是查看AWS控制台中的AMI表。

在AWS控制台中,导航至 EC2>图像>的AMI 。从搜索框左侧的下拉列表中选择"公共图片" 过滤器。然后,您可以搜索所需的任何AMI,并在表格中显示所有者值:

enter image description here