rds_snapshot_info – obtain information about one or more RDS snapshots

New in version 2.6.

Synopsis

  • obtain information about one or more RDS snapshots. These can be for unclustered snapshots or snapshots of clustered DBs (Aurora)
  • Aurora snapshot information may be obtained if no identifier parameters are passed or if one of the cluster parameters are passed.
  • This module was called rds_snapshot_facts before Ansible 2.9. The usage did not change.

Aliases: rds_snapshot_facts

Requirements

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

  • boto
  • boto3
  • python >= 2.6

Parameters

Parameter Choices/Defaults Comments
aws_access_key
string
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
string
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
db_cluster_identifier
-
RDS cluster name for which to find snapshots. Mutually exclusive with db_snapshot_identifier, db_instance_identifier, db_cluster_snapshot_identifier
db_cluster_snapshot_identifier
-
Name of an RDS cluster snapshot. Mutually exclusive with db_instance_identifier, db_snapshot_identifier, db_cluster_identifier
db_instance_identifier
-
RDS instance name for which to find snapshots. Mutually exclusive with db_snapshot_identifier, db_cluster_identifier, db_cluster_snapshot_identifier
db_snapshot_identifier
-
Name of an RDS (unclustered) snapshot. Mutually exclusive with db_instance_identifier, db_cluster_identifier, db_cluster_snapshot_identifier

aliases: snapshot_name
debug_botocore_endpoint_logs
boolean
added in 2.8
    Choices:
  • no ←
  • yes
Use a botocore.endpoint logger to parse the unique (rather than total) "resource:action" API calls made during a task, outputing the set to the resource_actions key in the task results. Use the aws_resource_action callback to output to total list made during a playbook. The ANSIBLE_DEBUG_BOTOCORE_LOGS environment variable may also be used.
ec2_url
string
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.
profile
string
Uses a boto profile. Only works with boto >= 2.24.0.
region
string
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
string
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
snapshot_type
-
    Choices:
  • automated
  • manual
  • shared
  • public
Type of snapshot to find. By default both automated and manual snapshots will be returned.
validate_certs
boolean
    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

# Get information about an snapshot
- rds_snapshot_info:
    db_snapshot_identifier: snapshot_name
  register: new_database_info

# Get all RDS snapshots for an RDS instance
- rds_snapshot_info:
    db_instance_identifier: helloworld-rds-master

Return Values

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

Key Returned Description
cluster_snapshots
complex
always
List of cluster snapshots

 
allocated_storage
integer
always
How many gigabytes of storage are allocated

Sample:
1
 
availability_zones
list
always
The availability zones of the database from which the snapshot was taken

Sample:
['ca-central-1a', 'ca-central-1b']
 
cluster_create_time
string
always
Date and time the cluster was created

Sample:
2018-05-17T00:13:40.223000+00:00
 
db_cluster_identifier
string
always
Database cluster identifier

Sample:
test-aurora-cluster
 
db_cluster_snapshot_arn
string
always
ARN of the database snapshot

Sample:
arn:aws:rds:ca-central-1:111111111111:cluster-snapshot:test-aurora-snapshot
 
db_cluster_snapshot_identifier
string
always
Snapshot identifier

Sample:
test-aurora-snapshot
 
engine
string
always
Database engine

Sample:
aurora
 
engine_version
string
always
Database engine version

Sample:
5.6.10a
 
iam_database_authentication_enabled
boolean
always
Whether database authentication through IAM is enabled

 
kms_key_id
string
always
ID of the KMS Key encrypting the snapshot

Sample:
arn:aws:kms:ca-central-1:111111111111:key/abcd1234-abcd-1111-aaaa-0123456789ab
 
license_model
string
always
License model

Sample:
aurora
 
master_username
string
always
Database master username

Sample:
shertel
 
percent_progress
integer
always
Percent progress of snapshot

 
port
integer
always
Database port

 
snapshot_create_time
string
always
Date and time when the snapshot was created

Sample:
2018-05-17T00:23:23.731000+00:00
 
snapshot_type
string
always
Type of snapshot

Sample:
manual
 
status
string
always
Status of snapshot

Sample:
creating
 
storage_encrypted
boolean
always
Whether the snapshot is encrypted

Sample:
True
 
tags
complex
always
Tags of the snapshot

 
vpc_id
string
always
VPC of the database

Sample:
vpc-abcd1234
snapshots
complex
When cluster parameters are not passed
List of non-clustered snapshots

 
allocated_storage
integer
always
How many gigabytes of storage are allocated

Sample:
10
 
availability_zone
string
always
The availability zone of the database from which the snapshot was taken

Sample:
us-west-2b
 
db_instance_identifier
string
always
Database instance identifier

Sample:
hello-world-rds
 
db_snapshot_arn
string
always
Snapshot ARN

Sample:
arn:aws:rds:us-west-2:111111111111:snapshot:rds:hello-world-rds-us1-2018-05-16-04-03
 
db_snapshot_identifier
string
always
Snapshot name

Sample:
rds:hello-world-rds-us1-2018-05-16-04-03
 
encrypted
boolean
always
Whether the snapshot was encrypted

Sample:
True
 
engine
string
always
Database engine

Sample:
postgres
 
engine_version
string
always
Database engine version

Sample:
9.5.10
 
iam_database_authentication_enabled
boolean
always
Whether database authentication through IAM is enabled

 
instance_create_time
string
always
Time the Instance was created

Sample:
2017-10-10T04:00:07.434000+00:00
 
kms_key_id
string
always
ID of the KMS Key encrypting the snapshot

Sample:
arn:aws:kms:us-west-2:111111111111:key/abcd1234-1234-aaaa-0000-1234567890ab
 
license_model
string
always
License model

Sample:
postgresql-license
 
master_username
string
always
Database master username

Sample:
dbadmin
 
option_group_name
string
always
Database option group name

Sample:
default:postgres-9-5
 
percent_progress
integer
always
Percent progress of snapshot

Sample:
100
 
snapshot_create_time
string
always
Time snapshot was created

Sample:
2018-05-16T04:03:33.871000+00:00
 
snapshot_type
string
always
Type of snapshot

Sample:
automated
 
status
string
always
Status of snapshot

Sample:
available
 
storage_type
string
always
Storage type of underlying DB

Sample:
gp2
 
tags
complex
always
Snapshot tags

 
vpc_id
string
always
ID of VPC containing the DB

Sample:
vpc-abcd1234


Status

Authors

  • Will Thames (@willthames)

Hint

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