RDS Increase Daily Snapshots

0

Hi all, how do I increase my AWS RDS instance's daily snapshot to be 5 times per day? Do I need to use AWS Backup?

  • please accept the answer if it was helpful

AWS
asked 2 months ago148 views
3 Answers
1

Do I need to use AWS Backup? - yes, this is the best solution. You can use a CRON expression to set up a backup schedule.

https://docs.aws.amazon.com/aws-backup/latest/devguide/creating-a-backup-plan.html#create-backup-plan-cli

RDS automated backup occurs daily during the preferred backup window, so it's not an option https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ManagingAutomatedBackups.html

You can also create custom automation (CloudWatch events + Lambda) to make "RDS snapshots" without service AWS Backup, but this is not the most operational effective solution https://medium.com/@aemdevopssudip/automate-creating-and-deleting-rds-snapshots-by-using-aws-lambda-and-cloudwatch-924cc07e6db

profile picture
EXPERT
answered 2 months ago
profile picture
EXPERT
reviewed 2 months ago
AWS
EXPERT
reviewed 2 months ago
1

Hello,

Yes using AWS Backup is the best solution for your requirement. using AWS Backup you can set your own corn expressions and set number of backups per day. It is a simple way to achieve this. Go to AWS Backup in the Console and create a rule of own corn expression. Assign the RDS to the Rule created.

For more Information refer this:- https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithAutomatedBackups.html

https://docs.aws.amazon.com/prescriptive-guidance/latest/dr-standard-edition-amazon-rds/automated-snapshot-copy.html

profile picture
EXPERT
answered 2 months ago
EXPERT
reviewed a month ago
profile picture
EXPERT
reviewed a month ago
0

Hello.

Please try this solution.

yes, to increase the frequency of AWS RDS snapshots to five times per day,

we have two main options using AWS Backup or setting up a custom Lambda function triggered by CloudWatch Events. With AWS Backup create a backup plan in the AWS Backup console. add a rule to take snapshots every four hours using a cron expression and assign your RDS instance to this plan. This approach provides a straightforward managed solution.

Alternatively, for more control create an IAM role with permissions to take RDS snapshots, write a Lambda function to create snapshots and schedule it using CloudWatch Events with a cron expression set to trigger every four hours. This method requires setting up the IAM role Lambda function, and CloudWatch rule but offers greater flexibility. Both solutions will automate the creation of snapshots at your desired frequency, ensuring regular backups of your RDS instance.

please look at AWS Documents.

https://docs.aws.amazon.com/aws-backup/latest/devguide/creating-a-backup-plan.html#create-backup-plan-cli

https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ManagingAutomatedBackups.html

https://medium.com/@aemdevopssudip/automate-creating-and-deleting-rds-snapshots-by-using-aws-lambda-and-cloudwatch-924cc07e6db

EXPERT
answered 2 months ago
  • There is a quota of how many manual snapshots you can take before you have to start deleting them (50 rings a bell). The lambda function to perform manual snapshots is a good idea but will break very quickly.

  • Hey Gary Mclean,

    You're absolutely right. While manually triggering snapshots with a Lambda function might seem convenient, it faces limitations due to the quota on manual RDS snapshots (it's actually 100 per region, not 50).

    When Lambda Function break very quickly, you will achieve this in two ways simply:

    Approach 1: Daily Backups with RDS (Simple):

    1. Open the RDS Management Console.
    2. Select your RDS instance.
    3. Go to the "Maintenance & Failover" section.
    4. Under "Automated Backups," enable backups and set the "Retention Period" to 35 days (maximum).

    Approach 2: Frequent Backups with AWS Backup (More Control):

    1. Open the AWS Backup console.
    2. Click "Backup plans" and choose "Create Backup plan."
    3. Select "Build a new plan" and give it a name.
    4. Click "Add Backup rule" and choose your RDS instance as the resource.
    5. Under "Schedule," define how often you want backups (e.g., every few hours).
    6. Review and create the backup plan.