Step 7 · Day 4 · 07

Full-Stack DR Setup & Operations Guide

STEP 7 · DOCUMENT 7 OF 9 · DAY 4

Full-Stack DR Setup & Operations Guide

Disaster recovery for the OCI + Fusion estate: DR strategy decision · DR tiers per service · secondary-region build (identity · network · data · integration · compute) · failover, failback and DR-exercise runbooks · backup-verification operations

Executes after the landing zone (Doc 3) and at least one production workload (Doc 4) exist, and after the Day 0 secondary-region decision (Doc 2 §3.2). This document both BUILDS the DR capability (setup half) and OPERATES it (ops half).

Day 4 Full-Stack DR Setup & Ops Guide

FieldValue
Document ID<CUSTOMER>-RUN-DR-007
Versionv1.0 (Generic Template)
Execution modelDUAL PATH — Option A: manual console build of the DR region. Option B: re-apply the terraform_lz / terraform_wl stacks region-parameterized via ORM (Doc 3 §7). Match the option selected for the primary region.
Customer<CUSTOMER> — replace on engagement start
Tenancy<TENANCY-NAME> / OCID: <TENANCY-OCID>
Prepared byCloud Platform Engineering
Review cyclePer engagement; template annually

1. DR Strategy Decision and Inputs

1.1 Questionnaire inputs consumed (BCP & DR sheet)

InputFeedsExample
RPO / RTO per workload class§1.3 tier assignmentPlatform: RPO ≤ 24h, RTO ≤ 8h; regulated: RPO ≤ 4h
DR scope (which environments)§2 build scopePRD only; TST rebuilt on demand
Secondary region + residency constraints (0C.01)Doc 2 §3.2 region choice<SECONDARY-REGION> = documented pairing of home region
DR budget envelopeTier selection (pilot-light vs warm)Cross-region backup only until year 2
Exercise obligations (compliance frame 0C.02)§6 exercise calendarAnnual live exercise + semi-annual tabletop

1.2 The DR strategy decision record

DECISION POINT:This document closes the standing open decision from the HLD (formal DR strategy). Record and obtain Board approval for: (a) secondary region; (b) DR model per tier (§1.3); (c) which environments have DR (default: PRD only); (d) exercise cadence; (e) budget. The DR compartment (reserved empty since Doc 3) is activated only after this approval.

1.3 DR tiers (bound to the DRTier tag)

TierModelTypical RPO / RTOApplies to
DR1-ReplicatedLive or near-live replica in <SECONDARY-REGION>: Autonomous Data Guard standby, replicated buckets, pre-provisioned network + warm instances.RPO minutes · RTO ≤ 1hOnly where the business case demands it — highest cost; regulated or revenue-critical platform components.
DR2-BackupCross-region COPIES (ATP backup copy, bucket replication of governed data, exported configs); infrastructure rebuilt on declaration from the runbook/stacks.RPO ≤ 24h · RTO ≤ 8hDefault for the platform tier (OIC, ATP, buckets, SFTP).
DR3-RebuildNothing pre-staged beyond documentation and design; full rebuild from runbooks/IaC + latest in-region backups.RPO 24h+ · RTO daysDEV/TST, sandbox, anything re-derivable.
TWO-PLANE RULE FOR DR:[SAAS] Fusion availability and DR are ORACLE’s responsibility under the SaaS agreement — the customer neither replicates nor fails over Fusion pods. Customer obligations on the SaaS plane: business-continuity validation by application owners, regression testing at quarterly updates, and knowing Oracle’s SaaS DR terms (declaration path, expected recovery). Everything else in this document concerns the customer platform plane [IAAS+PAAS]. SaaS-only customers need only §1, §6.4 (Fusion BC validation) and §7 of this document.

1.4 Tag every resource

Sweep the resource register (Doc 6): every PRD resource carries a DRTier tag value agreed in §1.2 — no blanks, no defaults left unexamined.

The DRTier tag is the contract: §3–§5 build exactly what the tags promise, the DR exercise (§6) tests exactly what the tags promise, and the quarterly audit (Doc 5) flags mismatches.

2. DR Region Foundation

2.1 Prerequisites

  • Secondary region subscribed (Doc 2 §3.2) — if skipped at Day 0, execute that section now (irreversible; confirm in writing).
  • Limits validated in <SECONDARY-REGION> for every service that must start there during failover (Doc 2 §5 — limits are per region; a DR declaration is the worst moment to discover a zero OIC limit). Raise SRs now.
  • DR strategy decision approved (§1.2); DR compartment activation approved.
  • Doc 3 phase gates green in the primary region; build log current.
  • 2.2 Activate the DR compartment

    The DR compartment exists empty since Doc 3 §3.2. Update its description with the approved strategy reference and owner (Infrastructure Operations).

    Add tag defaults: Environment=DR (locked), CostCenter required.

    Create budget BUD-DR-01 scoped to the DR compartment with 70/90/100 alert rules — steady-state DR spend is a standing line the customer approved in §1.2; alert on drift from it.

    2.3 Identity and access in the DR region

  • OCI IAM (identity domains, groups, policies) is global — federated users and the OCI-* groups work in <SECONDARY-REGION> with no additional build. Verify: a federated platform engineer switches region in the console and retains identical visibility.
  • Break-glass: both BG accounts are global too; the break-glass login alarm (Doc 3 §6.3) is region-scoped — replicate the Events rule + topic in <SECONDARY-REGION> so a DR-region break-glass login also pages.
  • IdP dependency: a regional Oracle outage does not affect <IDP> (Entra/Okta). An IdP outage is a separate scenario — the break-glass path is the mitigation; note it in the risk register.
  • 3. Data Protection Setup (the RPO layer)

    3.1 ATP

    DECISION POINT:Per DRTier: DR1 → Autonomous Data Guard cross-region standby (continuous redo, switchover/failover in minutes, standby billed continuously). DR2 → cross-region backup copy (cheap; restore creates a new database in the secondary region within RTO). Record per instance.

    3.1.1 DR2 path — cross-region backup copy

    Console path: Oracle Database > Autonomous Database > <instance> > Manage backups > Edit backup settings

    For each PRD ATP: enable cross-region backup copy to <SECONDARY-REGION>; confirm long-term retention schedule (Doc 4 §4.1) also replicates per policy.

    Record first successful cross-region backup in the build log; verify it appears under the secondary region’s backup list (switch region → Autonomous Database > Backups).

    3.1.2 DR1 path — Autonomous Data Guard

    Console path: Oracle Database > Autonomous Database > <instance> > Disaster recovery > Add peer database

    Add a cross-region peer: type Autonomous Data Guard; region <SECONDARY-REGION>; the peer needs a private endpoint — this requires the DR VCN (§4) to exist FIRST; sequence accordingly.

    After provisioning, note lag metrics (RPO indicator) and set an alarm on data-lag > threshold (§6 register).

    Quarterly: perform a switchover test in a maintenance window (switchover is non-destructive) — record duration against RTO.

    3.2 Object Storage

    For each governed bucket whose DRTier demands it (TFSTATE/evidence, LOGARCHIVE, FBDI-IN, file archives): create a replication policy to a same-named bucket in <SECONDARY-REGION> (Storage > Buckets > <bucket> > Replication Policy > Create). Destination buckets: versioning on, private, same encryption posture.

    Replication is one-way and continuous; the destination is read-only while the policy exists. Verify: upload a test object, confirm arrival in the secondary bucket, delete test object, log it.

    3.3 Vault and secrets

    Virtual private vaults support cross-region replication: enable replica in <SECONDARY-REGION> for PRD-PLATFORM-VAULT-CORE-01 (Vault > Create replica) — keys and secrets become readable in the secondary region.

    If the vault type in use does not support replication, maintain the sealed-procedure fallback: documented secret inventory (names/owners, never values) + regeneration procedure per secret (Doc 6 handover pack §7). Decide and record which path applies.

    3.4 OIC and configuration state

  • OIC has no region failover — the recovery path is re-provision + re-import. The nightly (Option A: at minimum weekly, logged) design-time export to the repository (Doc 4 §5.3) IS the OIC RPO; treat a missed export like a failed backup.
  • Config plans per environment (endpoints, secret references) are versioned beside the exports — failover imports use a DR config plan pointing at DR endpoints.
  • Custom VM state (SFTP chroot config, agent installs): keep hardening/config checklists current in the repo; for faster rebuild, create custom images of the hardened VMs and copy them to <SECONDARY-REGION> (Compute > Custom Images > Copy to region) after every meaningful change.
  • 4. DR Region Infrastructure (the RTO layer)

    4.1 What gets pre-built vs rebuilt

    ModelPre-built in <SECONDARY-REGION>Built at declaration
    Pilot light (default for DR2)DR VCN + subnets + gateways + NSGs + DNS zone (network is cheap and slow to rebuild correctly); vault replica; replicated buckets.OIC instance, ATP restore, VMs from copied images, load balancers.
    Warm standby (DR1 components)Everything in pilot light + ADG standby ATP + provisioned (stopped or minimal) VMs + OIC instance provisioned with current import.Scale-up, DNS cutover, final delta import.

    4.2 Build the DR VCN — Option A (manual)

    Execute Doc 3 §5.2–§5.3 in <SECONDARY-REGION> with the reserved CIDR (10.50.0.0/16 pattern — MUST differ from all primary CIDRs so replication traffic and eventual dual-running never collide): VCN DR-PLATFORM-VCN-CORE-01 in the DR compartment (or Shared-Services:Networking per design — record which), subnets, SGW, NAT (if justified), route table, private DNS zone dr.<customer>.oci, NSG set mirroring PRD rules.

    Hybrid: if on-prem connectivity is required in DR (usually yes for SFTP counterparties and users), extend the DRG design: either a second DRG in <SECONDARY-REGION> with its own VPN/FastConnect, or remote peering to the primary DRG — per the network design; document tunnel parameters with the customer network team NOW, not at declaration.

    Security: replicate the Security Zone on the DR compartment’s production-data scope, Cloud Guard already covers the region (Doc 2 monitored ALL); verify the region appears in Cloud Guard targets.

    4.3 Build the DR VCN — Option B (Terraform/ORM)

    The stacks are region-parameterized (provider region variable). Create DR-scoped ORM stacks: STK-DR-STACK2-* (network), STK-DR-STACK10-* (flow logs), STK-DR-STACK9-* (alarms) sourcing the SAME repo, working directories unchanged, with DR tfvars (region=<SECONDARY-REGION>, DR CIDRs, DR names).

    Keep DR tfvars in the repo beside primary tfvars (e.g., terraform.dr.tfvars committed per stack) so a declaration applies reviewed, version-controlled values — never hand-typed values under pressure.

    Apply the pilot-light set through the normal PR → plan → approve → apply loop; the DR network is a standing, drift-checked part of the estate from then on.

    NOTE:Option B is materially better for DR3/DR2 tiers: the landing-zone stacks ARE the rebuild procedure, already tested by CI. In Option A engagements, the DR rebuild rehearsal (§6) is more important, not less — the runbook is the only rebuild path and it must be exercised by humans against the clock.

    5. Failover and Failback Runbooks

    5.1 Declaration and roles

    RoleHolderAuthority
    DR DeclarantExecutive Leadership (per Doc 1 §3)Declares DR after Infrastructure Ops assessment; accepts the data-loss window implied by the tier.
    DR CommanderInfrastructure Operations leadRuns this runbook; single voice for status.
    Workstream executorsPlatform / DBA / Network / IAM engineersExecute §5.2 steps; four-eyes still applies (pair per workstream).
    Comms ownerPer O&M sheetStakeholder updates at fixed intervals (e.g., hourly); counterparty notifications (SFTP partners, banks).
    WARNING:Declare against criteria written BEFORE the incident: regional Oracle outage exceeding <N> hours with no credible ETA, or data-center loss. A slow console is not a disaster. Partial failovers (one workload) follow the same runbook scoped to that workload — never improvise a hybrid topology mid-incident without recording it.

    5.2 Failover sequence (DR2 pilot-light reference; adapt per tier)

    Declare (per above); open the incident record; start the comms clock; freeze all non-DR changes (ChangeWindow=Frozen).

    Network first: verify DR VCN health; bring up hybrid connectivity (tunnels/FastConnect) with the customer network team; verify on-prem reachability.

    Data: ATP — DR1: initiate Data Guard failover (role transition); DR2: restore latest cross-region backup to a new instance on the DR private endpoint; capture the restore timestamp = achieved RPO. Buckets: replicated buckets are already present (destination becomes writable once the replication policy is removed — do so deliberately, log it).

    Secrets: vault replica readable in-region (or execute the regeneration procedure); verify one secret retrieval before dependent services start.

    Compute: launch SFTP/agent VMs from copied custom images; apply the hardening checklist deltas; register OIC connectivity agents against the DR OIC.

    Integration: provision/start OIC (pilot light: provision now — this is usually the RTO long pole; warm standby: already provisioned); import latest design-time export with the DR config plan; re-key connections from the vault; activate integrations in dependency order (foundation → transactional).

    [SAAS] Fusion is unaffected by a customer-region outage (Oracle-managed, different infrastructure); integrations reconnect from the DR OIC to the same Fusion pods. If the event is an ORACLE SaaS outage instead, this runbook does not apply — track Oracle’s SaaS recovery, keep the error-hospital draining, replay queued files after restoration.

    DNS/endpoints: cut counterparty-facing endpoints (LB IPs, SFTP host) to DR — pre-lowered TTLs help; notify counterparties per the comms plan (new IPs / host keys if they changed — better: preserve host keys via the vault so they do not change).

    Validate: run the workload smoke set (Doc 4 §10 tests 1, 2, 4, 5) against DR; record achieved RPO and RTO per workload vs the tags’ promise.

    Steady-state in DR: alarms live (§4.3 stack9-DR or manual equivalents), budgets watched, error hospital monitored; document everything — the failback needs it.

    5.3 Failback

    Failback is a planned migration, not an emergency: schedule it, change-control it, and rehearse the data direction carefully.

    Data: DR1 — Data Guard switchover back after the primary is re-established and caught up. DR2 — reverse-path: backup/export the DR ATP, restore to the rebuilt primary; reconcile deltas written during DR (the reconciliation file pattern from the migration machinery applies).

    Re-point integrations back with the primary config plan; re-establish bucket replication primary→secondary (recreate policies); DNS back; counterparties notified.

    Post-failback: full Doc 5 validation pass on the primary + CD3 extract + a post-incident review that updates this runbook with everything learned.

    6. DR Operations (standing)

    6.1 Backup verification cadence

    CheckCadenceOwnerEvidence
    ATP backup success (all PRD instances) + cross-region copy presentWeekly review; alarm on failureDBA / InfraOpsBackup list screenshot / read-only CLI listing
    Bucket replication lag & destination integrityWeeklyInfraOpsReplication status
    OIC design-time export freshness (≤ 7 days old)WeeklyIntegrationRepo commit log
    Custom image currency vs hardening changesMonthlyInfraOpsImage list per region
    Vault replica health / secret inventory currencyMonthlySecurityReplica status; inventory diff
    ATP restore drill (restore to clone, in-region)QuarterlyDBADrill record with duration vs RTO
    ADG switchover test (DR1 instances)QuarterlyDBASwitchover record

    6.2 DR exercise program

    Semi-annual tabletop: walk §5.2 end-to-end with all role-holders; inject two surprises (e.g., vault replica unavailable; a counterparty unreachable); update the runbook with every gap found.

    Annual live exercise: execute §5.2 for at least one production workload into <SECONDARY-REGION> in a maintenance window (or as an isolated parallel run that never takes production traffic — decide the model with the Board); measure achieved RPO/RTO against the DRTier promise; the DR-exercise success rate is a standing governance KPI (Doc 1 §14).

    Every exercise ends with: findings register (Doc 5 format), runbook updates, and Board-visible report.

    6.3 DR drift control

  • Every primary-region change (Doc 4 onboarding, Doc 1 §12 changes) answers one added review question: does this change the DR posture? (new bucket → replication? new secret → replica/regeneration entry? new VM → image copy? new integration → export covered?). The change template carries a mandatory DR-impact field.
  • Quarterly: CD3 extract of <SECONDARY-REGION> reconciled against the DR design (Doc 6 method) — DR estates rot silently; this is the detector.
  • 6.4 [SAAS] Fusion business-continuity validation

  • Application owners validate business continuity annually per the SaaS agreement: confirm Oracle’s DR terms, walk the "Fusion unavailable" business process (manual fallbacks for payments, payroll cutoffs), and verify the OIC error-hospital drain-and-replay path after a simulated SaaS outage window.
  • Quarterly-update regression testing (standing Fusion obligation) is tracked in the same calendar.
  • 7. DR Readiness Gate

    #Criterion
    1DR strategy decision approved and recorded; DRTier tags complete and audited.
    2Secondary-region limits validated; SRs closed.
    3Data protection live per tier: ATP copies/standby verified, bucket replication verified, vault replica or regeneration procedure tested, OIC export current.
    4Pilot-light infrastructure built and drift-checked (network, DNS, NSGs, security zone, alarms).
    5Failover, failback and comms runbooks reviewed by all role-holders; declaration criteria signed.
    6First tabletop executed; findings closed; exercise calendar published.
    7Backup-verification cadence (§6.1) running with two consecutive clean weeks.
    8Doc 6 updated: DR resources in the register, DR diagrams added, handover pack extended.

    Revision History

    VersionDateDescription
    1.0<DATE>Generic template — full-stack DR setup + operations, dual-path edition.

    Production DR Design & Implementation — Generic (v1.0)

    Full-Stack DR setup and operations guide: production DR design, implementation and operational runbook for the Fusion and OCI estate. Tailor placeholders and confirm recovery targets before customer use.

    DOCX · 1918 KB

    Download template