AWS - 寻找Linux AMI

时间:2017-04-13 11:58:06

标签: amazon-web-services amazon-ec2 aws-cli

我怎么做

aws ec2 describe-images --filters "Name=platform,Values=windows"

我得到了数百个结果,但是当我这样做时:

aws ec2 describe-images --filters "Name=platform,Values=linux"

我明白了:

{
    "Images": []
}

aws ec2 describe-images --filters "Name=platform,Values=ubuntu"
{
    "Images": []
}

3 个答案:

答案 0 :(得分:2)

正如Khalid已经指出的那样,platform标签似乎只为Windows设置和支持。

您可以搜索说明:

aws ec2 describe-images --filters "Name=description,Values=*ubuntu*"
aws ec2 describe-images --filters "Name=description,Values=*linux*"

这些结果很多......

如果您正在搜索官方Amazon AMI,可以查看:

aws ec2 describe-images --filters "Name=description,Values=*Linux*" "Name=owner-alias,Values=amazon"

答案 1 :(得分:1)

尽管AWS未在website上明确说明这一点,但似乎platform中的describe-images过滤器与describe-instances的行为方式相同。它只接受windows或空。

  

平台 - 平台。如果您有Windows实例,请使用windows;   否则,留空。

This reference明确指出platform过滤器的唯一有效值为windows。 (第353页)

答案 2 :(得分:1)

如果您需要检索所有可用Ubuntu映像的信息,那么您可以执行以下操作:

aws ec2 describe-images --filters "Name=name,Values=*ubuntu*"

它将返回很长的结果列表,您可以使用以下任何过滤器进一步过滤: VirtualizationType,Name,Hypervisor,ImageId,State,BlockDeviceMappings,Architecture,ImageLocation,RootDeviceType,CreationDate,Public,ImageType 。您甚至可以指定AMI的所有者,例如:

aws ec2 describe-images --filters "Name=architecture,Values=x86_64" "Name=root-device-type,Values=ebs" "Name=virtualization-type,Values=hvm" "Name=name,Values=*ubuntu*xenial*" --owners=099720109477