Module 1: Backup and Restore

In this module, you will go through the Backup and Restore disaster recovery strategy. To learn more about this disaster recovery strategy, you can review this Disaster Recovery blog.

Backup and Restore disaster recovery strategy has Recovery Point Objective(RPO) / Recovery Time Objective (RTO) within hours. For the backup and restore strategy secondary region, all data, infrastructure and services need to be provisioned.

Our application is currently deployed in our primary region N. Virginia (us-east-1) and we will use N. California (us-west-1) as our secondary region.

Our test application is Unishop. It is a Spring Boot Java application deployed on a single Amazon Elastic Compute Cloud (EC2) instance using a public subnet. Our datastore is an Amazon RDS MySQL database with a frontend written using bootstrap and hosted in Amazon Simple Storage Service (S3).

This module takes advantage of AWS Backup which will be our single pane of glass to backup, copy and restore our Amazon EC2 instance and Amazon RDS database to the secondary region.

We will use Amazon S3 Cross-Region Replication (CRR) to replicate our S3 objects to the secondary region.

CloudFormation will be used to configure the infrastructure and deploy the application. Provisioning your infrastructure with infrastructure as code (IaC) methodologies is a best practice. CloudFormation is an easy way to speed up cloud provisioning with infrastructure as code.

Prior experience with the AWS Console and Linux command line are helpful but not required.

Because this workload has only one EC2 instance that is deployed in only one Availability Zone, this architecture does not meet the AWS Well Architected Framework best practices for running highly available production applications but suffices for this workshop.