AWS SDK(JavaScript)でAutoScaling Groupのインスタンス一覧を出す

この記事はAmazon Web Services Advent Calendar 2017 10日目の記事です。 autoscaling.describeAutoScalingGroups()で一覧は取ることはできます。 […]

広告ここから
広告ここまで

目次

    この記事はAmazon Web Services Advent Calendar 2017 10日目の記事です。

    autoscaling.describeAutoScalingGroups()で一覧は取ることはできます。
    ただAS Group毎にインスタンス一覧がでるので、インスタンス一覧を出したいときはパースした方が良さそうです。

    コード

    var params = {
     AutoScalingGroupNames: [
        "YOUR_AS_GROUP_NAME1",
        "YOUR_AS_GROUP_NAME2"
     ]
    };
    var autoscaling = new AWS.AutoScaling();
    autoscaling.describeAutoScalingGroups(params).promise()
    .then(data => {
      if (data.AutoScalingGroups.length < 1) throw new Error('No such AutoScalingGroup');
      const instances = []
      data.AutoScalingGroups.map(group => {
        group.Instances.map(instance => instances.push(instance))
      })
      console.log(instances)
    }).catch(e => {
      console.log(e, e.stack);
    });
    

    実行結果

    $ node aws.js
    [ { InstanceId: 'i-XXXXXXXXXXX',
        AvailabilityZone: 'us-west-2c',
        LifecycleState: 'InService',
        HealthStatus: 'Healthy',
        LaunchConfigurationName: 'YOUR_AS_GROUP_NAME1',
        ProtectedFromScaleIn: false
    },{
        InstanceId: 'i-XXXXXXXXXXX',
        AvailabilityZone: 'us-west-2c',
        LifecycleState: 'InService',
        HealthStatus: 'Healthy',
        LaunchConfigurationName: 'YOUR_AS_GROUP_NAME2',
        ProtectedFromScaleIn: false
    } ]
    
    広告ここから
    広告ここまで
    Home
    Search
    Bookmark