ec2_remote_facts – Gather facts about ec2 instances in AWS

New in version 2.0.

DEPRECATED

Removed in Ansible:
 version: 2.8
Why:Replaced with boto3 version.
Alternative:Use ec2_instance_facts instead.

Synopsis

  • Gather facts about ec2 instances in AWS

Requirements

The below requirements are needed on the host that executes this module.

  • python >= 2.6
  • boto

Parameters

Parameter Choices/Defaults Comments
aws_access_key
-
AWS access key. If not set then the value of the AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY or EC2_ACCESS_KEY environment variable is used.

aliases: ec2_access_key, access_key
aws_secret_key
-
AWS secret key. If not set then the value of the AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY, or EC2_SECRET_KEY environment variable is used.

aliases: ec2_secret_key, secret_key
ec2_url
-
Url to use to connect to EC2 or your Eucalyptus cloud (by default the module will use EC2 endpoints). Ignored for modules where region is required. Must be specified for all other modules if region is not used. If not set then the value of the EC2_URL environment variable, if any, is used.
filters
-
A dict of filters to apply. Each dict item consists of a filter key and a filter value. See http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html for possible filters.
profile
-
added in 1.6
Uses a boto profile. Only works with boto >= 2.24.0.
region
-
The AWS region to use. If not specified then the value of the AWS_REGION or EC2_REGION environment variable, if any, is used. See http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region

aliases: aws_region, ec2_region
security_token
-
added in 1.6
AWS STS security token. If not set then the value of the AWS_SECURITY_TOKEN or EC2_SECURITY_TOKEN environment variable is used.

aliases: access_token
validate_certs
boolean
added in 1.5
    Choices:
  • no
  • yes ←
When set to "no", SSL certificates will not be validated for boto versions >= 2.6.0.

Notes

Note

  • If parameters are not set within the module, the following environment variables can be used in decreasing order of precedence AWS_URL or EC2_URL, AWS_ACCESS_KEY_ID or AWS_ACCESS_KEY or EC2_ACCESS_KEY, AWS_SECRET_ACCESS_KEY or AWS_SECRET_KEY or EC2_SECRET_KEY, AWS_SECURITY_TOKEN or EC2_SECURITY_TOKEN, AWS_REGION or EC2_REGION
  • Ansible uses the boto configuration file (typically ~/.boto) if no credentials are provided. See https://boto.readthedocs.io/en/latest/boto_config_tut.html
  • AWS_REGION or EC2_REGION can be typically be used to specify the AWS region, when required, but this can also be configured in the boto config file

Examples

# Note: These examples do not set authentication details, see the AWS Guide for details.

# Gather facts about all ec2 instances
- ec2_remote_facts:

# Gather facts about all running ec2 instances with a tag of Name:Example
- ec2_remote_facts:
    filters:
      instance-state-name: running
      "tag:Name": Example

# Gather facts about instance i-123456
- ec2_remote_facts:
    filters:
      instance-id: i-123456

# Gather facts about all instances in vpc-123456 that are t2.small type
- ec2_remote_facts:
    filters:
      vpc-id: vpc-123456
      instance-type: t2.small

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
instances
complex
when EC2 instances are found in AWS region otherwise empty
provides details about EC2 instance(s) found in AWS region

  ami_launch_index
string
success
if more than one instance is started at the same time, this value indicates the order in which the instance was launched, the value of the first instance launched is 0

Sample:
0
  architecture
string
success
the instance architecture

Sample:
x86_64
  block_device_mapping
complex
success
a structure describing the attached volumes to instance

    attach_time
string
success
the attach time for an EBS volume mapped to the instance

Sample:
2017-01-03T15:19:52.000Z
    delete_on_termination
boolean
success
indicates whether the EBS volume is deleted on instance termination

Sample:
true
    device_name
string
success
the device name for the EBS volume

Sample:
/dev/sda1
    status
string
success
the status for the EBS volume

Sample:
attaching
    volume_id
string
success
the volume id of the EBS volume

Sample:
vol-3160f90df06b24080
  client_token
string
success
the idempotency token provided when instance was launched

Sample:
Sample-awsmp-DFNBSML8ZMJ9
  ebs_optimized
boolean
success
whether instance class has EBS optimized flag turned on

Sample:
true
  groups
complex
success
a list security groups to which the network interface belongs

    id
string
success
security group id

Sample:
sg-e203cf94
    name
string
success
Sample:
Sample-Common-Sg
  hypervisor
string
success
the hypervisor type of the instance

Sample:
xen
  id
string
success
the id of the instance

Sample:
i-09275d68c04c1a16c
  image_id
string
success
the id of the image used to launch the instance

Sample:
ami-1748d2f5
  instance_profile
complex
success
the instance profile associated with the instance

    arn
string
success
specifies an ARN of instance profile

Sample:
arn:aws:iam::171455704129:instance-profile/Sample-IamProfile
    id
string
success
instance profile id

Sample:
AIPAD5WIZGNR9TH6LBFE4
  interfaces
complex
success
a list of ENI associated to instance

    id
string
success
the id of ENI

Sample:
eni-cf96b081
    mac_address
string
success
the MAC address of ENI

Sample:
06:c4:fd:90:dc:61
  kernel
string
success
the kernel id

Sample:
null
  key_name
string
success
the name of the key pair used when the instance was launched

Sample:
MyKey
  launch_time"
string
success
the time when the instance was launched

Sample:
2017-06-16T15:44:54.000Z
  monitoring_state
string
success
indicates whether detailed monitoring is enabled

Sample:
disabled
  private_dns_name
string
success
the private IPv4 DNS name of the instance

Sample:
ip-10-21-39-23.ag-net.com
  private_ip_address
string
success
the private IPv4 address of the instance

Sample:
10.216.139.23
  public_dns_name
string
success
the public DNS name of the instance

Sample:
ec2-54-194-252-215.eu-west-1.compute.amazonaws.com
  public_ip_address
string
success
the public IPv4 address of the instance

Sample:
54.194.252.215
  ramdisk
string
success
the RAM disk id

Sample:
null
  region
string
success
the AWS region in which instance is running in

Sample:
eu-west-1
  requester_id
string
success
the id of the entity that launched the instance on your behalf

Sample:
null
  root_device_type
string
success
the type of root device that the instance uses

Sample:
ebs
  source_destination_check
boolean
success
indicates whether the instance performs source/destination checking

Sample:
true
  spot_instance_request_id
string
success
the id of the spot instance request

Sample:
null
  state
string
success
a message that describes the state change

Sample:
running
  tags
complex
success
a dictionary of key/value pairs assigned to the resource

    key
string
success
the key of a tag assigned to the resource

Sample:
Environment
  virtualization_type
string
success
the virtualization type of the instance

Sample:
hvm
  vpc_id
string
success
the id of the VPC that the instance is running in

Sample:
vpc-12c9ae4f


Status

  • This module will be removed in version 2.8. [deprecated]
  • For more information see DEPRECATED.

Authors

  • Michael Schuett (@michaeljs1990)

Hint

If you notice any issues in this documentation you can edit this document to improve it.