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

时间:2017-07-24 14:21:39

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

虽然似乎有一些方法可以将一些AWSCLI命令输出并过滤到此列表中,但有人有一个很好的+简单的方法来列出特定区域的所有EC2实例类型吗?

或许该列表在某个地方的某个存储桶中的.json文件中发布,由AWS维护?

我只是在寻找这种输出:

t1.micro
t2.nano
t2.micro
t2.small
...

3 个答案:

答案 0 :(得分:4)

似乎至少有一种编程方式是查询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 '\.'

如果将来调整,这里有一个要点: https://gist.github.com/nmagee/b096e6fadf9ac336da7ffdada43f656a

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

答案 1 :(得分:1)

据我所知,此列表不可用,无法从aws cli查询。

即使在运行aws ec2 run-instances时,library(data.table) setDT(df1)[, .N, .(X2, X3)][order(factor(X3, levels = unique(X3)), -N), .(X1 = toString(unique(X3)[1:2])) , X2] # X2 X1 #1: Accessories A89, A87 #2: Sides A32, A27 #3: Tops A12, A14 参数也会列出可用的实例类型,并引用aws docs

Others已解析数据并使其可用。

答案 2 :(得分:0)

正如其他人所指出的那样,这不是您可以从AWS API端点中获取的东西。

为了填补这个空白,我已经建立了一个处理这个问题的通用模块。

我希望这有助于各种用例: https://gist.github.com/mrsiesta/0e4fac21c0eb0e8977e1de7b5277e63b