Risk, resilience and compliance · AWS · CPS 230 · Resilience

CPS 230 operational resilience reference architecture: critical operations, tolerance levels, recovery region and tested runbooks

A technical design that traces each critical operation to the services behind it, sets recovery capability from tolerance levels, replicates to a second region, and proves the result through game days and continuous service-level monitoring.

A reference architecture from EITSAA, not a named client system. Service limits, prices and product features change, so confirm current details before you commit to a design.

  • APRA CPS 230 Operational Risk Management and CPG 230
  • APRA CPS 234 Information Security
  • ACSC Essential Eight
  • ISO/IEC 27001:2022 Annex A (continuity and ICT readiness)
  • SA Information Security Management Framework (ISMF)

Architecture

Architecture diagram. Tinted boundaries show regions, accounts, networks and trust zones. Numbered arrows match the flow below.
CPS 230 operational resilience reference architecture: critical operations, tolerance levels, recovery region and tested runbooks architectureCustomers and staff to Route 53 health checks: request. Route 53 health checks to Application Load Balancer: healthy region. Application Load Balancer to Critical operation services: route. Critical operation services to Aurora PostgreSQL: read and write. Aurora PostgreSQL to Aurora Global secondary: replicate. Aurora Global secondary to Warm standby services: promote on failover. Aurora PostgreSQL to Immutable backup vault: backup copy. Critical operations register to Fault injection game days: scenarios. Fault injection game days to Critical operation services: inject faults. Tolerance monitoring to Critical operations register: evidenceCustomers and staffAWS · Sydney (ap-southeast-2) primaryProduction VPC · three Availability ZonesResilience governanceCustomers and staffWeb, app and branchRoute 53 healthchecksFailover routingApplication LoadBalancerZonal, health-checkedCritical operationservicesECS Fargate, tasks in 3 AZsAurora PostgreSQLMulti-AZ, point-in-time restoreWarm standby servicesScaled-down, deployed bypipelineAurora GlobalsecondaryAsynchronous replicaImmutable backupvaultCross-region, locked copiesCritical operationsregisterOwners, dependencies, tolerancelevelsFault injection gamedaysAWS Fault Injection ServiceTolerance monitoringSynthetic probes and burn-ratealerts1request2healthy region3route4read and write5replicate6promote on failover7backup copy8scenarios9inject faults10evidencePlatform servicesAWS IAMAmazonCloudWatchAWS CloudTrailAWS KMS
  • People and clients
  • Network and edge
  • Compute and containers
  • Databases and data
  • Security and identity
  • Monitoring, audit and analytics
  • Request or data flow
  • Asynchronous or optional
  • Boundary: region, account, network or trust zone

Request and data flow

  1. Customers and staff reach the critical operation through a public name. Route 53 health checks the primary endpoint and holds the failover record for the recovery region.

  2. DNS answers with the primary Region while health checks pass. A failed health check, or a deliberate decision by the incident lead, moves answers to the recovery Region.

  3. The load balancer spreads traffic across the Availability Zones and removes unhealthy targets, so the loss of a zone is absorbed without a human decision.

  4. Stateless services run as tasks spread over three Availability Zones. They write to a Multi-AZ Aurora cluster and keep no state on the container itself.

  5. Aurora Global Database replicates to Melbourne asynchronously, normally with lag measured in seconds. Replica lag is the live measure of recovery point capability.

  6. In the recovery Region a scaled-down copy of the services is deployed by the same pipeline. Promotion of the replica and scale-up are scripted steps in the runbook, not manual console work.

  7. Backups are copied to a vault in the recovery Region with immutable retention, in a separate account with separate administrators. This protects against deletion, corruption and ransomware that replication would faithfully copy.

  8. The critical operations register lists each operation, its owner, its tolerance levels (maximum disruption, maximum data loss and minimum service level), and the services and providers it depends on. Game day scenarios are derived from it.

  9. Controlled faults are injected on a schedule: zone loss, dependency latency, credential expiry, failed deploys and regional failover. Results are compared with the tolerance levels and any gap becomes a tracked action.

  10. Synthetic probes and service-level alerts measure each operation from the customer's point of view. Test results, probe history and incident records feed the register as evidence for the board and the regulator.

Components and why they were chosen

ComponentWhat it doesWhy this choice
Critical operations registerA maintained list of critical operations, their tolerance levels, owners and dependency map.CPS 230 expects the entity to identify critical operations and set tolerance levels. A register that engineers can query keeps design tied to the obligation.
Route 53 health checks and failover recordsDetect regional failure and steer traffic.Simple, independent of the application, and testable.
ECS Fargate across three Availability ZonesRuns stateless services with no servers to patch.Removes host management risk and recovers quickly from zone loss.
Aurora PostgreSQL with Global DatabaseRelational store with a cross-region replica.Low replica lag gives a short, measurable recovery point. Point-in-time restore covers logical corruption.
Immutable backup vaultSeparate-account, locked copies in the recovery Region.Replication does not protect against deletion or encryption by an attacker. Locked copies do.
AWS Fault Injection ServiceRuns repeatable fault experiments with stop conditions.Tests that failover and runbooks work under realistic faults instead of assuming they do.
Synthetic probes and service-level alertsMeasure the operation from outside, against tolerance.Tolerance is defined for the operation, so it needs measuring at the operation, not the server.

Design decisions and trade-offs

Where recovery capability comes from

Derive RTO and RPO for each service from the tolerance levels of the critical operations that depend on it.

Why. CPS 230 sets tolerance levels per critical operation. Starting from them avoids over-engineering low-value systems and under-protecting critical ones.

Trade-off. It needs a dependency map and business input before engineering starts, which takes time.

Recovery pattern

Warm standby in a second Region for the tightest tolerances. Backup and restore for the rest.

Why. Warm standby gives minutes of recovery without paying for full active-active.

Trade-off. Standby capacity costs money while idle, and failback needs its own rehearsed procedure.

Failover trigger

Automated zone recovery. Regional failover by a named decision-maker using a scripted runbook.

Why. False regional failovers can cause more disruption than they prevent. Zone loss is routine and should need no decision.

Trade-off. Regional failover takes minutes of human time. Practise it so it stays inside tolerance.

Backups

Separate account, immutable retention, tested restores on a schedule.

Why. Backups only count if they restore within tolerance, and survive a compromised production account.

Trade-off. Restore tests consume engineer time and storage.

Proof

Scheduled game days with results recorded against tolerance levels.

Why. CPS 230 expects business continuity plans to be tested against severe but plausible scenarios, with the test program covering all critical operations.

Trade-off. Controlled faults carry risk. Start in pre-production, then run in production with stop conditions and a rollback path.

Well-architected pillars

Security

Separate accounts for production, backup and logging. Customer-managed keys per Region. Least-privilege task roles. Backup administrators are separate from production administrators.

Reliability

Three-zone design, health-checked routing, replica in a second Region, immutable backups and rehearsed failover. Deployments use blue-green with automatic rollback.

Performance

Capacity is sized from load tests. Autoscaling covers demand spikes, and the standby Region is load-tested at least once a year at the scale a failover would need.

Cost optimisation

Keep standby small and scale on promotion, and apply the warm standby pattern only to operations whose tolerance demands it. Use lifecycle rules on backups.

Operational excellence

Runbooks live beside the code, are versioned and are exercised in game days. Change freezes and on-call rosters are tied to the critical operation calendar.

Sustainability

Right-size standby, scale to zero in non-production and prefer managed services that share infrastructure efficiently.

Network, identity and data

Networking

Three-tier subnets in three zones. Services reach AWS APIs through VPC endpoints, and egress goes through inspected paths. The same network layout is deployed in the recovery Region from the same infrastructure-as-code. Third-party endpoints that sit on the critical path are listed in the register and given their own health checks.

Identity and least privilege

Workforce access through the identity provider with MFA and just-in-time elevation for production. Break-glass accounts are stored offline, monitored and tested. Pipeline and task identities are workload roles with no long-lived keys. Recovery runbooks list who can approve failover and who deputises.

Data and encryption

Classify data by operation. Use customer-managed encryption keys with a documented recovery path in each Region. Define and monitor RPO as replica lag and last successful backup age. Keep retention aligned with records obligations and test restores into an isolated environment.

Security and compliance mapping

ControlHow this design addresses it
Critical operations and tolerance levelsRegister of operations with maximum disruption time, maximum data loss and minimum service levels, linked to measured service indicators. CPS 230.
Business continuity plan and testingRunbooks, scheduled game days and an annual exercise covering all critical operations, with results retained. CPS 230.
Dependencies and service providersEach operation lists cloud, SaaS and network providers it relies on, feeding the service provider register. CPS 230.
Information asset protectionEncryption, access control and logging for the assets behind each operation. CPS 234.
Regular backups and patchingImmutable backups, restore tests and automated patch pipelines. Essential Eight.
Continuity and ICT readinessEvidence of planned and tested recovery supports ISO/IEC 27001:2022 Annex A controls on continuity and ICT readiness.

Mappings show how the design supports each control. They are not certifications, and EITSAA does not claim IRAP assessment or compliance for any reference architecture.

Failure modes, targets and scaling

  • Target RTOSet per critical operation from its tolerance level. Typical engineering targets are minutes for zone loss and tens of minutes to hours for regional failover, which must be shown by test, not assumed.
  • Target RPOSeconds to minutes with Aurora Global replication, and the age of the last good backup for the rest. Monitor both continuously.
  • Scaling and limitsSized from load tests, with the standby Region able to carry production load after scale-up.
Failure modeMitigation
Availability Zone failureLoad balancer and scheduler move traffic to healthy zones. Alert on reduced capacity and confirm headroom is enough.
Regional failure of the primaryScripted promotion of the replica and scale-up in Melbourne. Decision by the named incident lead, with the clock started at declaration.
Bad deployment or configurationBlue-green release, automatic rollback on error budget burn and feature flags to disable new behaviour.
Data corruption or ransomware reaches replicasPoint-in-time restore and immutable backups in a separate account. Rehearse restore into isolation and validate before cutover.
A third-party dependency failsTimeouts, circuit breakers and a degraded mode that meets the minimum service level. The dependency appears in the provider register.
Failover works but cannot be exercised by staffBreak-glass access and runbook steps are tested in game days, including with the primary identity provider unavailable.

Observability and runbooks

  • Per-operation availability and latency measured by synthetic probes, with burn-rate alerts against tolerance.
  • Replica lag and backup age as live RPO indicators.
  • Game day results, time to detect, time to decide and time to recover against tolerance.
  • Dependency health for each material service provider on the critical path.

Cost drivers and levers

Standby compute, cross-region replication and data transfer, backup storage, and engineering time for tests.

  • Warm standby only for operations that need it.
  • Scale the standby on promotion rather than holding full capacity.
  • Lifecycle rules and tiering for backups.
  • Use Savings Plans for the steady production baseline.

Implementation and fit

Phased approach

  1. Identify critical operations, owners and tolerance levels, and map dependencies to systems and providers.
  2. Close single points of failure: zones, backups, secrets, DNS and identity. Build the register and service-level probes.
  3. Build the recovery Region from code, replicate data and write scripted runbooks.
  4. Run game days, fix findings, record evidence, then repeat on a schedule and after major change.

Anti-patterns to avoid

  • Setting tolerance levels from what the current system can do rather than what the operation needs.
  • Multi-region diagrams with no tested failover.
  • Backups in the same account as production.
  • A business continuity plan that lives only in a document.
  • Counting a vendor's availability claim as your own tolerance.

When to use it

  • APRA-regulated entities and their technology suppliers designing or reviewing the systems behind critical operations.
  • Organisations adopting CPS 230 style resilience as good practice for essential services.

When not to

  • Internal tools whose outage would not breach any tolerance, where backup and restore is proportionate.
  • Entities that have not yet defined critical operations. Do that first.

More in risk, resilience and compliance

Related insights

Discuss this architecture

Tell us your systems, constraints and timeline. We reply within one business day, and the initial conversation is free.