RDS cluster snapshots are snapshots created from Amazon RDS Aurora clusters. RDS snapshots created from MySQL, PostgreSQL, MariaDB, Oracle, and Microsoft SQL Server instances are different. Those are considered “DB snapshots” and are handled differently.
Aurora cluster snapshots are created from an Aurora cluster. All Aurora instances share the same underlying cluster data. So when you create a snapshot for Aurora, you are creating it from the cluster, not the instances.
The Aurora cluster snapshots can be copied for longer data retention beyond the standard RDS cluster snapshot lifetime, which maxes-out at 35 days. Also, the automated RDS snapshots are deleted when the RDS cluster is deleted. So if you need to preserve your data after the cluster is deleted, then you’ll need to make a copy of it yourself.
In this example, we’ll copy our RDS Aurora snapshot within the same region.
To copy RDS Aurora snapshots using the AWS Management Console, follow these steps.
Step 1: Find the snapshot that you want to copy, and select it by clicking the checkbox next to it’s name. You can select a “manual” snapshot, or one of the “automatic” snapshots that are prefixed by “rds:”.
Step 2: From the “Snapshot Actions” menu, select “Copy Snapshot”.
Step 3: On the page that appears:
Step 4: Wait for the snapshot to complete.
Once the copy is initiated, you should return to the RDS snapshots page. Your new snapshot should appear in the list with a status of “creating”. The snapshot’s status will become “available” once the copy process is complete.
If you want to copy your RDS cluster snapshot using the AWS CLI, it can be done using the following command:
aws rds copy-db-cluster-snapshot \
--source-db-cluster-snapshot-identifier my-source-snapshot \
--target-db-cluster-snapshot-identifier target-snapshot
Note the command is copy-db-cluster-snapshot
compared to copy-db-snapshot
when copying a DB snapshot (MySQL, Microsoft SQL Server, etc). Cluster snapshots are listed and manipulated using “cluster” versions of the DB snapshot commands.
Operation | DB Snapshots | Cluster Snapshots |
---|---|---|
List Snapshots | describe-db-snapshots |
describe-db-cluster-snapshots |
Copy Snapshot | copy-db-snapshot |
copy-db-cluster-snapshot |
Delete Snapshot | delete-db-snapshot |
delete-db-cluster-snapshot |
Carrying on, if you want to change the encryption key used for the snapshot copy, then you can add the --kms-key-id
argument.
aws rds copy-db-cluster-snapshot \
--source-db-cluster-snapshot-identifier my-source-snapshot \
--target-db-cluster-snapshot-identifier target-snapshot \
--kms-key-id <kms key>
The KMS key used in this command can be either:
00000000-0000-0000-0000-000000000000
),arn:aws:arn:us-east-1:123456789012:key/...
), oralias/my-alias
)Once you want to start copying your Aurora cluster snapshot into other AWS regions and/or AWS accounts, the commands get more complicated.
Start automating your RDS backups today by signing up for our 30 day free trial or sign-in to your Skeddly account to get started.