EBS Snapshots: Optimizing RPO with CPM and dynamic scheduling

In an EC2 backup solution based on EBS snapshots, balancing the number and frequency of snapshots vs. the need for the best RPO can be tricky. At peak hours data typically change at a much more rapid rate than during off-hours or weekends. The ability to make that distinction can save in terms of cost and the number of EBS snapshots.  CPM (Cloud Protection Manager) allows such flexibility out of the box.

As an example, let’s try to define the following elaborate scheduling:

  • Weekdays 08:00AM – 06:00PM – backup every 10 minutes
  • Weekdays 06:00PM – 08:00AM – backup every hour
  • Weekends (Saturdays and Sundays) – once a day

To do this, we will associate our CPM backup policy (named “main_prod “) with three different CPM schedule objects:

  1. Backup every 10 minutes, backup disabled between 06:00PM – 08:00AM every day. No backup at all on weekends
  2. Backup every hour, backup disabled between 08:00AM – 06:00PM every day. No backup at all on weekends
  3. Backup once a day, backup performed only on Saturday and Sunday

First schedule definition:

CPM EBS snapshots dynamic scheduling sched1 definition

As you can see, the backup is set for every 10 minutes starting 8:00AM. Backup is not performed on Saturdays & Sundays. For this schedule object, we define that it is disabled during nights by clicking “Configure” on the “Disabled Times in Day” column in the schedules tab and defining the following:

CPM EBS snapshots dynamic scheduling sched1 disabled time

Second schedule:

CPM EBS snapshots dynamic scheduling sched2 definition

This schedule starts a backup every hour, and, again, is not performed on Saturdays & Sundays. Its disabled times are the reverse of the first schedule:

CPM EBS snapshots dynamic scheduling sched2 disabled time

Now for the last schedule:

CPM EBS snapshots dynamic scheduling sched3 definition

This schedule does not need any disabled times, because it will work only on Saturdays & Sundays.
So, now we need to simply associate all three schedules to the main_prod policy:

CPM EBS snapshots dynamic scheduling policy definition

This fairly simple configuration allows fine-tuning backup scheduling in a way that supports the required RPO at required times, without creating an excessive number snapshots during off-hours.

Share this post →

You might also like: