列出区域或可用区中的所有EC2实例类型

Nea*_*gee 4 amazon-ec2 amazon-web-services aws-cli

尽管似乎有几种方法可以将一些AWSCLI命令输出并过滤到此列表中,但是有人可以通过一种简便的方法来列出特定区域的所有EC2实例类型吗?

还是该列表以.json文件的形式发布在AWS维护的某个存储桶中?

我只是在寻找这种输出:

t1.micro
t2.nano
t2.micro
t2.small
...
Run Code Online (Sandbox Code Playgroud)

Nea*_*gee 6

看来,执行此操作的至少一种编程方式是查询AWS Pricing API:

#!/bin/bash

curl https://pricing.us-east-1.amazonaws.com/offers/v1.0/aws/AmazonEC2/current/index.json | jq -r '.products[].attributes["instanceType"]' | sort -u | grep '\.'
Run Code Online (Sandbox Code Playgroud)

在将来进行调整的情况下,这里的要点在这里:https//gist.github.com/nmagee/b096e6fadf9ac336da7ffdada43f656a

缺少的是按AWS区域进行分组/指定,这可能是一个重要的区别-并非每个区域都提供所有实例类型的产品。

  • 您可以获得可能显示实例类型的[区域价格表](https://aws.amazon.com/blogs/aws/aws-price-list-api-update-regional-price-lists/)。但是,它不会**下降到AZ水平。当区域添加新的可用区时,新的可用区通常不支持较早的实例类型。 (2认同)
  • 请注意:该文档现在有 614M,您可能不想在脚本中用作参考。 (2认同)