Multi-Region Deployment

Multi-Region Deployment

1. Introduction

1.1 Purpose

This document outlines the setup plan for deploying the Turbot Guardrails application using the Tier 3 architecture. The objective is to ensure high availability, minimize downtime, and reduce data loss in the event of a disaster by utilizing a multi-region and multi-availability zone (AZ) deployment strategy.

1.2 Scope

This setup applies to all production workloads deployed under the Tier 3 architecture, guaranteeing high availability and fast recovery.

1.3 Target Audience

This guide is intended for Guardrails Administrators with experience in AWS cloud infrastructure management and Guardrails deployment. Familiarity with database recovery and restoration processes is beneficial.

2. Disaster Recovery Objectives

Objective Definition
Recovery Time Objective (RTO) 2 Hours
Recovery Point Objective (RPO) 2 Hour
Availability 99.9%
Use Case Production deployments requiring rapid disaster recovery

3. Tier 3 Deployment Architecture

3.1 Overview

The Tier 3 architecture enhances resilience by deploying a standby environment in a secondary AWS region. The primary and standby environments adhere to the following principles:

3.2 Architecture Diagram

Tier 3 Architecture

4. Prerequisites

4.1 Glossary

4.2 Assumptions

This guide assumes the following setup for deploying Turbot Guardrails:

4.3 Key Considerations

VPC Configuration

A predefined VPC with subnets mirroring the primary region must be set up in the DR region.

SSL Certificate

Workspace Configuration

Product Version Requirements

Both regions must run the following minimum versions:

4.4 Differences Between Primary and DR Regions

Configuration Primary Region DR Region
TEF Configuration • SSL certificate must cover required domains • SSL certificate must cover required domains
• "API Gateway prefix" parameter set to gateway • "API Gateway prefix" parameter set to gateway-dr
• "Guardrails multi-region KMS Key Type" set to Primary • "Guardrails multi-region KMS Key Type" set to KMS key ARN from primary region (alias: turbot_guardrails, prefixed with mrk-)
• Manual creation of custom domain names (gateway.cloudportal.company.com) for API Gateway
TED Configuration • Database name must be identical in both regions • Database name must be identical in both regions
RDS Configuration • Manual configuration of cross-region RDS DB snapshots with appropriate retention policies -

[!WARNING] When setting up TEF in the DR region, ensure a smooth deployment to avoid rollback issues. If a replica key is created and a rollback is required, the replica key cannot be deleted immediately and will be subject to a 7-day retention period unless removed with AWS Support assistance. You can create only one replica of each primary key in each AWS Region.

If necessary, complete the TEF setup in the DR region by setting the Guardrails multi-region KMS Key Type (under Advanced - Deployment) to Primary. Once the setup is successfully completed, update the parameter to Replica and delete the multi-region key created in the DR region.

4.5 Workspace Deployment in DR Region

Context

Creating a test workspace in the DR region is essential because manually installing mods during an actual disaster recovery scenario can be time-consuming and might lead to delays exceeding your Recovery Time Objective (RTO) and Recovery Point Objective (RPO). By preparing a sandbox workspace in advance in the DR region, you can install mods proactively using the same automation methods (such as pipelines, Terraform scripts, or AutoMod updates) and schedules employed for your primary workspace. This ensures that your DR workspace remains continuously up-to-date and can quickly and reliably take over workloads if your primary workspace experiences downtime.

5. Implementation Steps

5.1 Setting Up Cross-Region Database Backup

Enable cross-Region replication

Manage cross-Region replication

5.2 Configuring Workspaces in the Primary Region

5.3 Configuring API Gateway Custom Domain Name in the DR Region

To ensure seamless failover in the DR region, you need to configure the "API Gateway Custom Domain Name".

Add domain name

Configure API mappings

5.4 Configuring DNS records

Ensure that the following DNS records are correctly configured to route traffic appropriately:

Additional Assistance

Turbot Support is happy to consult with Enterprise customers to help determine a strategy to manage these scenarios. Contact us at [email protected].