在AWS中获取已使用的AWS预留实例?

时间:2016-12-19 18:39:15

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

我目前正在运行以下查询

aws ec2 describe-reserved-instances    \
  --filters "Name=state,Values=active" \
  --query "ReservedInstances[].{InstanceType:InstanceType,ProductDescription:ProductDescription,InstanceCount:InstanceCount}"

为了获得类似以下内容的东西:

{
    "ProductDescription": "Linux/UNIX (Amazon VPC)",
    "InstanceType": "m3.medium",
    "InstanceCount": 44
}

我希望获得已经使用过的实例,但我没有找到理智的方法来实现这一点我想要一份显示以下信息的报告。

{
    "ProductDescription": "Linux/UNIX (Amazon VPC)",
    "InstanceType": "m3.medium",
    "InstanceCount": 44,
    "InstancesUsed": 44,
    "UtilizationPercentage": "100%"
}

我如何最终使用与利用率百分比一起使用的实例?

注意

为了得到百分比,我可以变量投射,然后使用以下...

Percentage() { echo "$((200*$1/$2 % 2 + 100*$1/$2))%" ; }

Percentage 44 44 //100%

1 个答案:

答案 0 :(得分:2)

嗯,AWS并不像这样工作。保留的实例不被"利用"或"未使用"在EC2级别。这种魔力发生在计费中。当亚马逊向您收费时,它将匹配针对保留的实例运行的实例。这意味着您无法通过aws ec2获取该信息。您唯一能做的就是尝试自己计算保留实例所涵盖的运行实例。