2017-01-12 60 views
0

我使用AWS定价API:AWS定价API区域名称

http://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/price-changes.html

的问题是,它有一个像

"KV46EU5KJGKB53ZX" : { 
    "sku" : "KV46EU5KJGKB53ZX", 
    "productFamily" : "Compute Instance", 
    "attributes" : { 
    "servicecode" : "AmazonEC2", 
    "location" : "US East (N. Virginia)", 
    "locationType" : "AWS Region", 

数据我不知道该怎么locationType关联和location与我用来启动EC2实例的数据(例如us-east-1)。

有没有办法知道启动EC2实例的成本?

回答

0

我推荐使用jq来处理大型的json文档。对于例如SKU KV46EU5KJGKB53ZX的按需定价:

curl -s https://pricing.us-east-1.amazonaws.com/offers/v1.0/aws/AmazonEC2/current/index.json \ 
| jq .terms.OnDemand.KV46EU5KJGKB53ZX 

给出

{ 
    "KV46EU5KJGKB53ZX.JRTCKXETXF": { 
    "offerTermCode": "JRTCKXETXF", 
    "sku": "KV46EU5KJGKB53ZX", 
    "effectiveDate": "2016-12-01T00:00:00Z", 
    "priceDimensions": { 
     "KV46EU5KJGKB53ZX.JRTCKXETXF.6YS6EN2CT7": { 
     "rateCode": "KV46EU5KJGKB53ZX.JRTCKXETXF.6YS6EN2CT7", 
     "description": "$0.156 per Dedicated RHEL m1.medium Instance Hour", 
     "beginRange": "0", 
     "endRange": "Inf", 
     "unit": "Hrs", 
     "pricePerUnit": { 
      "USD": "0.1560000000" 
     }, 
     "appliesTo": [] 
     } 
    }, 
    "termAttributes": {} 
    } 
} 
+2

我相信问题是如何从美国东部(弗吉尼亚北部)'派生'us-east-1'。 –

+0

“有没有办法知道启动EC2实例的成本?”。他只是在json里面看错了地方。 – at0mzk

+0

嗯。你可能是对的。我专注于*“我不知道如何关联'locationType'和'location'”*。 –

1

我不知道此交叉引用的存在/由价格表API提供的结构内的映射数据,并不幸的是EC2 API中的DescribeRegions也不提供。

然而,它可以通过Regions and Endpoints页面的一般文献获得。从这些信息,你可以建立一个简单的字典或查找表。