Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

🏠 Back to Blog

Disaster Recovery

Disaster Recovery in AWS


  • Any event that has a negative impact on a company’s business continuity or finances is a disaster

  • Disaster recovery (DR) is about preparing for and recovering from a disaster

  • What kind of disaster recovery?

    • On-premise => On-Premise: traditional DR and very expensive
    • On-Premise => AWS cloud: hybrid recovery
    • AWS Cloud Region A => AWS Cloud Region B
  • Disaster Recovery Strategies

    • Backup and Restore

      • High RPO

      • Cheap

      • Easy to implement

    • Pilot Light

      • small version of the app is always running in the cloud
      • Useful for the critical core components of the application (Pilot Light)
      • Very similar to Backup and Restore
      • Faster than Backup and Restore as critical systems are already up
    • Warm Standby

      • Full system is up and running, but at minimum size
      • Upon disaster we can scale to production load
    • Hot Site/ Multi Site Approach

      • Very low RTO (minutes or seconds) - very expensive
      • Full production scale is running AWS and On Premise

Database Migration Service

  • Supports heterogeneous and homogeneous migrations
  • You must create an EC2 instance to perform the replication tasks
  • Sources can be on-prem databases or EC2-based databases, Azure SQL Databases, Amazon RDS, Amazon S3, and DocumentDB
  • Targets can be on-prem databases, Amazon RDS, Redshift, DynamoDB, OpenSearch, Redis, Babelfish, DocumentDB, etc.
  • AWS Schema Conversion Tool (SCT) can convert the database schema from one engine to another if you are migrating to a different database engine

Continuous Replication

Multi-AZ Deployment

  • When Multi-AZ Enabled, DMS provisions and maintains a synchronously stand replica in a different AZ
    • Advantages:
      • Provide Data Redundancy
      • Eliminates I/O freezes
      • Minimizes latency spikes

RDS to Aurora Migration

  • Options:
    • Snapshot RDS and migrate to Aurora
    • Create an Aurora Read REplica from RDS mySQL and when the replication lag is 0, promote it as it’s own DB Cluster
    • If MySQL is external to RDS, you can backup with Percona XtraBackup and import into Aurora
    • Use DMS if both databases are up and running

On-premise Strategies

  • You can download Amazon Linux ISO and run on-prem hypervisors
  • Import/export VMs for on-prem to AWS
  • Use AWS Application Discovery Service to gather info about on-prem VMs and plan a migration
    • Track with AWS migration hub
    • Agentless Discovery
      • VM inventory, configuration, performance history, etc.
    • Agent-Based Discovery
      • System configuration, system performance history, running processes, network connection details, etc.
    • Use Application Migration Service (MGN) to lift-and-shift VMs to AWS
  • AWS Database Migration Service
    • Migrate data across database engines
    • Migrate databases from on-prem to AWS
  • AWS Server Migration
    • Incremental replication of on-prem servers to AWS
    • Converts on-prem servers to cloud-based servers

AWS Backup#

  • Fully managed
  • Centrally manage and automate backups across all AWS services
  • AWS Backup supports cross-region backups and cross-account backups
  • Backup policies are known as Backup Plans
  • Vault Lock is used to enforce a Write-Once-Read-Many policy (WORM) to ensure backups in the Vault cannot be deleted. Even the root user cannot delete backups when enabled.