Recovering AWS workloads after a disaster is a crucial skill for organizations using the AWS cloud. This requires creating strategies and testing **Disaster Recovery (DR)** plans and techniques.
**CloudFormation** offers a simple solution that can help with DR over the long term and while working toward implementing more advanced strategies.
One problem, however, is that **AMI ID numbers** can change over time, and vary from region to region. Adding a simple **Lambda function** to the strategy can automate and fix the issue.
#### In this lab you will:
*Click [here](https://github.com/ACloudGuru-Resources/content-simple-dr-cf-lambda) to download lab files*
1. Explore **disaster recovery strategies** including:
– Backup & Restore
– Pilot Light
– Warm Standby
– Multi-site
2. Use a CloudFormation template to **restore a production AWS environment**
3. Examine a **Lambda function** and a **CloudFormation Cross Stack Reference** that can **automate** looking up current AMI ID numbers for launching resources in the correct VPC.
4. Use a modified **CloudFormation template** with **Lambda** to launch an additional EC2 instance.
Learning Objectives
Successfully complete this lab by achieving the following learning objectives:
- Review the Disaster Recovery Plan
- Review the basics of Disaster Recovery in AWS including:
- Disaster recovery strategies
- Recovery time objective (RTO) and recovery point objective (RPO)
- Examine a demo cross-region DR Plan using Backup and Restore with CloudFormation.
- Review the basics of Disaster Recovery in AWS including:
- Implement and Test the Disaster Recovery Plan
- Verify the CF_WordPress_Blog CloudFormation template is in your S3 bucket.
- Launch the template in the Production region (us-east-1).
- Review the new stack and the resources created.
- Review the Outputs tab of the CloudFormation stack.
- Add and Test the Lambda AMI Lookup Function
- Copy the code for the Lamdba AMI Lookup function (amilookup.zip) to an S3 bucket.
- Copy the 1-CF_WordPress_Blog_with_Lookup CloudFormation template to an S3 bucket.
- Copy the 2-Add_Single_Instance CloudFormation template to an S3 bucket.
- Examine both CloudFormation templates:
- Note the Cross Stack Reference
- Launch the 1-CF_WordPressBlog_with_Lookup template in the Disaster Recovery region:
- For this lab, also use us-east-1 for DR.
- Examine the Outputs tab of the new stack.
- Launch the 2-Add_Single_Instance template:
- Use the same region as in the previous step.
- Examine the newly created EC2 instance:
- Note which VPC is in use.