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 |
| 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
orEC2_URL
,AWS_ACCESS_KEY_ID
orAWS_ACCESS_KEY
orEC2_ACCESS_KEY
,AWS_SECRET_ACCESS_KEY
orAWS_SECRET_KEY
orEC2_SECRET_KEY
,AWS_SECURITY_TOKEN
orEC2_SECURITY_TOKEN
,AWS_REGION
orEC2_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
orEC2_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.
© 2012–2018 Michael DeHaan
© 2018–2019 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