W3cubDocs

/Ansible 2.7

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
bool

(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

ramdisk
string
success
the RAM disk id

Sample:
null
kernel
string
success
the kernel id

Sample:
null
instance_profile
complex
success
the instance profile associated with the instance

id
string
success
instance profile id

Sample:
AIPAD5WIZGNR9TH6LBFE4
arn
string
success
specifies an ARN of instance profile

Sample:
arn:aws:iam::171455704129:instance-profile/Sample-IamProfile
root_device_type
string
success
the type of root device that the instance uses

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

Sample:
ip-10-21-39-23.ag-net.com
block_device_mapping
complex
success
a structure describing the attached volumes to instance

status
string
success
the status for the EBS volume

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

Sample:
/dev/sda1
delete_on_termination
boolean
success
indicates whether the EBS volume is deleted on instance termination

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

Sample:
2017-01-03T15:19:52.000Z
volume_id
string
success
the volume id of the EBS volume

Sample:
vol-3160f90df06b24080
key_name
string
success
the name of the key pair used when the instance was launched

Sample:
MyKey
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
image_id
string
success
the id of the image used to launch the instance

Sample:
ami-1748d2f5
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
spot_instance_request_id
string
success
the id of the spot instance request

Sample:
null
requester_id
string
success
the id of the entity that launched the instance on your behalf

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

Sample:
true
id
string
success
the id of the instance

Sample:
i-09275d68c04c1a16c
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
public_ip_address
string
success
the public IPv4 address of the instance

Sample:
54.194.252.215
monitoring_state
string
success
indicates whether detailed monitoring is enabled

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

Sample:
2017-06-16T15:44:54.000Z
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
hypervisor
string
success
the hypervisor type of the instance

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

Sample:
eu-west-1
ebs_optimized
boolean
success
whether instance class has EBS optimized flag turned on

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

Sample:
ec2-54-194-252-215.eu-west-1.compute.amazonaws.com
state
string
success
a message that describes the state change

Sample:
running
architecture
string
success
the instance architecture

Sample:
x86_64
private_ip_address
string
success
the private IPv4 address of the instance

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

Sample:
vpc-12c9ae4f
client_token
string
success
the idempotency token provided when instance was launched

Sample:
Sample-awsmp-DFNBSML8ZMJ9
virtualization_type
string
success
the virtualization type of the instance

Sample:
hvm


Status

This module is flagged as deprecated and will be removed in version 2.8. For more information see DEPRECATED.

Author

  • Michael Schuett (@michaeljs1990)

Hint

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

© 2012–2018 Michael DeHaan
© 2018 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/modules/ec2_remote_facts_module.html