Tips for a Solid AWS Disaster Recovery Plan
Tags: aws
Published: 2019-06-27 21:48:47

![](https://thepracticaldev.s3.amazonaws.com/i/xmgjz5migtcyi0dbp1iv.jpg)
<figcaption>[Pixabay](https://pixabay.com/photos/storm-weather-thunderstorm-thunder-2567670/)<figcaption>

No environment or platform is 100% secure, and even a brief interruption of service can mean thousands of dollars in data loss, not to mention the loss of sales opportunities and the impact in customer trust. The cause of the disaster can be natural, a human error, malicious activity or mechanical failure. 

The most important thing for a company in the cloud is to ensure business continuity. To prevent a disaster to get you out of business you need a solid disaster recovery plan that can help you stay running in the event of an outage or attack. AWS users can leverage from functions in the environment to build their own Disaster Recovery Plan (DRP). Read on to learn how to use the features in your AWS console to keep your data safe. 

## AWS Disaster Recovery Plan Overview
A Disaster Recovery Plan (DRP) consists of structured, detailed and documented instructions to recover disrupted systems and networks, helping companies bounce back to business as close as normal as possible. 

A disaster is anything that can take operations offline, impacting business continuity or finances, can be malicious attacks or hardware or software failures. Many companies cannot afford an on-premises disaster recovery solution because of the high costs of implementation and maintenance. Cloud technology helps organizations with a cost-effective solution as part of the cloud provider services, like AWS or Azure. AWS has partnered with companies such as [N2WS](https://n2ws.com/) and [Cloudberrylab](https://www.cloudberrylab.com/), which offer disaster recovery solutions specifically for AWS. 

## Why Do You Need an AWS Disaster Recovery Plan
Users who choose AWS as their cloud provider should develop a disaster recovery plan using the tools specifically available for the platform. There are a number of benefits from having a disaster recovery plan ready when you use AWS. These include:
* **Protecting critical data**—by establishing replication intervals to minimize data loss. 
* **Minimized downtime**—a DRP allows restoring critical applications to running mode quickly. 
* **Ensured business continuity**—using AWS cross-region disaster recovery to disperse the risk of having all your data exposed to the same threats. 
* **Quick retrieval of files and data**—implies minimal time to restore service. 
* **Reliable and scalable service**—leveraging AWS overall benefits. 
## Tips for a Solid AWS Disaster Recovery Plan
When you develop a DR Plan for AWS these are the basic steps to follow:
* **Audit your assets**—identify what resources, applications, and components are critical to your organization. Conducting a Business Impact Analysis gives you an idea of how threats can affect business operations and growth. 
* **Define control measures**—they can be preventive measures such as surge protectors, detective measures such a server and network monitoring software. Remediation tools, for example, are corrective measures that help restore a system after a disaster. 
* **Test your plan before you need it**—conduct scheduled testing to find the gaps in the DRP. 
* **Plan the maintenance**—updated on a regular basis to keep up with system changes. 

After you have your plan laid out, it is time to use the features in your AWS console to help secure your data. The following are some tips and aspects to consider when developing a DRP with AWS.

**Backup your data, it is the backbone of disaster recovery**
You can only recover what is on backup. Simply scheduling regular backups of what you have stored on Amazon EC2 and the EBS volumes attached to those instances is not enough. You need to access your data quickly in times of disaster. A well laid and tested [AWS disaster recovery](https://n2ws.com/blog/aws-cloud/how-to-create-a-disaster-recovery-plan-for-aws) process can help you retrieve and restore the backup data from the AWS cloud environment. 

**Define what is your recovery time objective(RTO) and the recovery point objective(RPO)**
Knowing how long your organization can be offline before suffering unacceptable monetary losses, (RTO), is critical to design your recovery plan. It is also vital to know how much data loss are you going to accept (RPO) in terms of time. For example, if losing 6 hours of data is unacceptable, then you need an RPO of less than 6 hours.  

**Choose your disaster recovery planning method** 
There are many options for DR recovery methods depending on your preferences and needs. Some of the most common are:
* **Backup and Restore**—simply backup and restores data as needed. It has the drawback that none of the data is on standby so it can be time-consuming. 
* **Pilot Light**—keeps critical applications and data ready to be quickly retrieved in the event of a disaster. 
* **Warm Standby**—keeps a duplicate version of the organization’s core elements running on standby at all times, so in a disaster, they can use this duplicate to maintain operations. 
* **Hot Standby**—replicates fully the data and applications in two or more active locations, splitting the traffic between them. In the event of a disaster, is simple to reroute everything to the unaffected region, meaning close to no downtime. 

**Identify critical data and utilizing cross-region backups**
You need to choose not only what data is critical to protect but how your data will be stored (for example using snapshots), and where this data will be stored. Storing all your backups close geographically is not the best idea, much like putting all your eggs in one basket. Should a disaster occur, your whole system could get knocked offline in an instant. It is better to spread the data across availability zones (AZ) around the world. How do you do it? 

If your database is covered in Amazon Relational Database (RDS), you can use a Multi-AZ option to create a backup of an RDS instance. The downside? This will cost you extra since AWS charges double for a multi-AZ RDS setup instead of a single RDS instance. Make sure the EC2 instances are also spread across several AZ especially the ones in production.

Using Auto-Scaling Groups (ASG) can allow you to choose multiple AZ to deploy your instances. An Elastic Load Balancer (ELB) to distribute the traffic between them and balance the workload.  

**Use cross-region replication for S3**
Amazon S3’s ability to duplicate the data to multiple locations within a region has made it the most popular AWS storage service. While this default feature creates high durability doesn’t annul the risk of losing data in a specific region. To avoid this scenario, just use the cross-region replication option, that copies the data to a designated bucket in another region. The feature does it automatically. How do you do it?
1. Go to the S3 console
2. Enable versioning
3. Look for the cross-region replication option and enable it. 
4. Pick the source bucket and prefix
5. Create an IAM role

Keep in mind the cross-region synchronization starts from the moment the option is enabled. If you want to synchronize existing data you need to do it by hand. 

**Use global tables for DynamoDB Data cross-region replication**
DynamoDB [global tables](https://aws.amazon.com/dynamodb/global-tables/) deploy a multi-region multi-master database and send changes across several tables. This works great for disaster recovery as the data is spread in several regions, minimizing the risk of critical data loss. 

**Keep your AWS Root Credentials secure with multi-factor authentication** 
Root credentials are used to create initial users with administrator privileges. Therefore, the Root password should be hidden from non-authorized users, to avoid the risk of internal threats. The programmatic keys should be disabled once they are used. How do you do it? The best option is to set up a multi-factor authentication solution.While it may seem obvious, overlooking this detail can have disastrous consequences if they fall in malicious hands.  

**Consider a third-party disaster recovery as a service (DRaaS)**
While most companies handle disaster recovery in-house, for small companies without a large IT team, sometimes makes it sense to get a third-party solution. DRaaS solutions help companies by implementing and maintaining their DRPs, allowing them to focus on developing their business with peace of mind. 

## The Bottom Line
AWS users can leverage the existing tools in the AWS environment to build their disaster recovery plan. While AWS doesn’t have proprietary disaster recovery services, the platform allows users to repurpose some of its features and functions to create their own DR solution. We described several tips and tricks that can help you take full advantage of the functions in your AWS environment, to keep your data safe.