查看每个可用区中有多少个aws实例

时间:2013-08-01 17:18:57

标签: amazon-web-services instances availability-zone

有没有办法查看AWS的可用区中有多少个实例?我想使用runInstances api来调出实例,但是在最少加载的区域调用它,我没有看到明显的解决方案。感谢。

3 个答案:

答案 0 :(得分:1)

据我所知,无法检查AZ中的实例数量。您可以做的是使用Autoscaling组并在创建时指定所需的AZ。然后,自动调节将在列出的AZ中均匀分散实例负载

AZ =可用区

答案 1 :(得分:0)

显而易见的解决方案似乎是调用DescribeInstances并使用availability-zone过滤器来请求您要检查的每个区域中的实例的详细信息,并计算响应中返回的实例。

或者不要使用过滤器,它将为该区域获取所有这些过滤器,然后检查记录以查看每个记录的位置,因为该信息全部在响应中返回。

   <instancesSet>
      <item>
        <instanceId>i-1a2b3c4d</instanceId>
        ...
        <placement>
          <availabilityZone>us-west-2a</availabilityZone>
          <groupName/>
          <tenancy>default</tenancy>
        </placement>

答案 2 :(得分:0)

我遇到了同样的问题。 我用aws cli解决了它:

aws cloudformation describe-stack-resources --stack-name STACKNAME\ 
--output text | grep 'AWS::AutoScaling::AutoScalingGroup' | cut -f3 > /tmp/tmpfile

ASGNAME="`cat /tmp/tmpfile`"

aws autoscaling describe-auto-scaling-groups --auto-scaling-group-names $ASGNAME \
--output text | egrep -e 'INSTANCES.*InService'