Getting a list of instances in an EC2 auto scale group?

前端 未结 7 977
一整个雨季
一整个雨季 2020-12-19 04:13

Is there a utility or script available to retrieve a list of all instances from AWS EC2 auto scale group?

I need a dynamically generated list of production instance

相关标签:
7条回答
  • 2020-12-19 04:57

    Use the below snippet for sorting out ASGs with specific tags and listing out its instance details.

    #!/usr/bin/python
    
    import boto3
    
    ec2 = boto3.resource('ec2', region_name='us-west-2')
    
    def get_instances():
            client = boto3.client('autoscaling', region_name='us-west-2')
            paginator = client.get_paginator('describe_auto_scaling_groups')
            groups = paginator.paginate(PaginationConfig={'PageSize': 100})
            #print groups
            filtered_asgs = groups.search('AutoScalingGroups[] | [?contains(Tags[?Key==`{}`].Value, `{}`)]'.format('Application', 'CCP'))
    
            for asg in filtered_asgs:
                    print asg['AutoScalingGroupName']
                    instance_ids = [i for i in asg['Instances']]
                    running_instances = ec2.instances.filter(Filters=[{}])
                    for instance in running_instances:
                            print(instance.private_ip_address)
    
    if __name__ == '__main__':
        get_instances()
    
    0 讨论(0)
提交回复
热议问题