I have a confession to make. Early in my cloud architecture career, I helped a large Malaysian enterprise write a beautifully documented disaster recovery plan. Forty-seven pages. Colour-coded runbooks. RTO and RPO targets aligned to business tiers. It sat in a shared drive, got reviewed annually, and won executive approval. Then an actual regional incident hit, and we discovered the runbook referenced a virtual network that no longer existed, a backup vault in the wrong region, and an automation script that had been deprecated six months earlier. The plan on paper was flawless. The reality was terrifying.
If you are reading this from a Malaysian enterprise running workloads on Azure, chances are your DR plan has the same gap. You have documentation. You might even have Azure Site Recovery configured. But when was the last time anyone actually tested the full recovery flow? Practitioners consistently report that a large share of enterprises have not validated their DR plans within the last twelve months — and the gap between documented DR and tested DR is where real risk lives.
The good news: 2026 is genuinely different. Microsoft rebranded Azure Business Continuity Center into Resiliency in Azure, adding zone down drills, recovery orchestration plans, and resiliency recommendations under one roof. This article walks through a practical BCDR strategy using Azure-native services — including the one Malaysia West gotcha that breaks most textbook DR designs.
Start with RPO/RTO Tiers, Not Tools
Before touching the Azure portal, define recovery objectives. I use a three-tier model that maps business criticality to acceptable data loss and downtime:
| Tier | Business Impact | RPO | RTO | Example Workloads |
|---|---|---|---|---|
| Tier 1 — Mission Critical | Revenue loss, regulatory breach | 0–15 min | < 1 hour | Core banking, payment processing |
| Tier 2 — Business Important | Productivity loss, SLA breach | 1–4 hours | 4–8 hours | ERP, CRM, internal applications |
| Tier 3 — Operational | Delayed operations, acceptable downtime | 24 hours | 24–72 hours | Dev/test, analytics, archival |
Regulatory context matters here. PDPA 2010 does not prescribe specific RPO/RTO numbers, but Bank Negara Malaysia's RMiT (Risk Management in Technology) guidelines and the Securities Commission Malaysia's equivalent expect licensed institutions to maintain documented, tested business continuity capabilities. Even if your regulator stays silent, your cyber insurance provider probably will not.
Map every workload to a tier. This drives every downstream decision: backup frequency, replication strategy, and budget.
The Malaysia West Gotcha: No Paired Region, No Cross-Region Restore
Here is the fact that invalidates most generic DR guidance for Malaysia: Malaysia West is a non-paired region.
Most Azure regions come in pairs (Southeast Asia pairs with East Asia, for example). Geo-redundant storage replicates automatically to the paired region, and Azure Backup's Cross-Region Restore (CRR) lets you restore from that secondary region when the primary is down. That entire safety net assumes pairing exists.
For Malaysia West, it does not. The practical consequences:
- Cross-Region Restore is not available for vaults in Malaysia West — CRR restores only into the paired region, and there is none.
- You cannot rely on "Azure handles the second region for me." Regional resilience must be designed explicitly.
- Malaysia West does have multiple Availability Zones, so zonal resilience is fully on the table — and it is where Microsoft's new tooling concentrates in 2026.
The correct strategy for a Malaysian enterprise in 2026:
- Zonal first. Use Availability Zones within Malaysia West for Tier 1 and Tier 2 workloads. Zone-redundant deployments survive single-AZ failures without a second region.
- Explicit regional DR where the business case demands it. Replicate to Southeast Asia (Singapore) via Azure Site Recovery, or stand up an independent Recovery Services vault there for backup copies of crown-jewel data.
- Plan for a future second region. Microsoft has not announced a second Malaysian region yet. If one reaches GA in the future, it becomes the natural regional DR target — but until then, design for Singapore.
Recovery Services Vaults: Your First Line of Defence
Azure Backup lives in Recovery Services vaults, and 2026's Resiliency in Azure experience manages them at scale — vault security levels, immutability, soft delete, and multi-user authorisation, all in one pane.
Provisioning is simple with the Azure CLI:
# Primary vault — Malaysia West
az backup vault create \
--resource-group rg-prod-bcdr \
--name rsv-malaysia-west-primary \
--location malaysiawest \
--immutability-state Disabled
# Independent regional DR vault — Southeast Asia (Singapore)
az backup vault create \
--resource-group rg-prod-bcdr-dr \
--name rsv-southeastasia-secondary \
--location southeastasia
Three hardening steps I insist on for every vault, because ransomware increasingly targets backups themselves:
# 1. Zone-redundant backup storage (protects vault data against single-AZ loss)
az backup vault update \
--resource-group rg-prod-bcdr \
--name rsv-malaysia-west-primary \
--backup-storage-redundancy ZoneRedundant
# 2. Immutability — lock once you are confident (irreversible once Locked)
az backup vault update \
--resource-group rg-prod-bcdr \
--name rsv-malaysia-west-primary \
--immutability-state Unlocked
# 3. Restrict public network access where private endpoints exist
az backup vault update \
--resource-group rg-prod-bcdr \
--name rsv-malaysia-west-primary \
--public-network-access Disable
Soft delete is enabled by default with a 14-day retention window — verify it has not been disabled, and keep it that way. For the secondary Singapore vault, replicate only what your tiering justifies: Tier 1 databases and configuration state, not everything.
Site Recovery: Regional Failover That You Can Actually Test
For workloads that truly need regional DR, Azure Site Recovery replicates VMs to a target region — for Malaysia West, that means Southeast Asia. Replication policies control recovery point history (effectively your RPO) and application-consistent snapshot frequency.
The infrastructure is clean to express in Bicep:
param location string = 'malaysiawest'
param drLocation string = 'southeastasia'
resource rsv 'Microsoft.RecoveryServices/vaults@2024-04-01' = {
name: 'rsv-dr-malaysia-west'
location: location
sku: {
name: 'RS0'
tier: 'Standard'
}
}
// Azure-to-Azure replication policy: 240-minute recovery point history
resource replicationPolicy 'Microsoft.RecoveryServices/vaults/replicationPolicies@2024-04-01' = {
parent: rsv
name: 'policy-tier2-4hr-rpo'
properties: {
providerSpecificInput: {
instanceType: 'A2A'
recoveryPointHistory: 240 // minutes of recovery point retention
appConsistentFrequencyInMinutes: 120
multiVmSyncStatus: 'Enable'
}
}
}
Recovery plans define the ordered failover sequence across VMs. The CLI's site-recovery extension covers creation — fabric IDs come from az site-recovery fabric list after replication is configured:
az site-recovery recovery-plan create \
--resource-group rg-prod-bcdr \
--vault-name rsv-dr-malaysia-west \
--recovery-plan-name plan-tier1-core \
--primary-fabric-id <malaysia-west-fabric-id> \
--recovery-fabric-id <southeastasia-fabric-id> \
--failover-deployment-model ResourceManager \
--groups '[{"group-type":"Boot","replication-protected-items":[{"id":"<protected-item-id>","virtual-machine-id":"<vm-resource-id>"}]}]'
The part everyone skips: test failover. Site Recovery test failover spins up your replicated VMs in an isolated network in the DR region without touching production replication. Run it at least quarterly for Tier 1, and write down what breaks. That document — not the architecture diagram — is your real DR capability.
Resiliency in Azure: The 2026 Step Change
This is what makes 2026 different from every previous year. In June 2026, Microsoft shipped three capabilities under Infrastructure Resiliency Manager (currently in preview) inside the Resiliency in Azure experience:
1. Availability Zone Down Drills. These simulate a complete AZ outage for a Service Group — a logical grouping of the resources that make up one application. Fault injection covers VMs, VM Scale Sets, AKS node pools, and forced database failovers, with custom faults via Azure Automation runbooks. For resources with active-passive protection, integrated recovery plans handle failover and reprotection during the drill. Critically, this validates the zone-redundant architecture you already paid for. Many Malaysia West deployments claimed zonal resilience on paper and never proved it. The drill lifecycle runs fault injection, failover, reprotection, and reverse failback — with real-time health monitoring throughout.
2. Recovery Orchestration Plans. Ordered, group-based recovery across an entire application — VMs, VMSS, SQL databases, SQL Managed Instance, Cosmos DB, PostgreSQL, AKS, and storage accounts. Resources in the same group fail over in parallel; groups run sequentially. Automated readiness checks run every 24 hours to detect configuration drift before you need the plan, and Azure Automation runbooks plug in as pre/post-scripts. One important scope note from the documentation: orchestration plans support zonal recovery, not regional recovery — regional failover stays with Site Recovery recovery plans.
3. Zonal resiliency goals and recommendations. The platform continuously evaluates your resiliency posture, flags resource-level gaps, tracks adherence against goals you set, and attaches qualitative cost indicators (High, Medium, Low, or No cost impact) to each recommendation. A resiliency agent can generate the IaC templates to close gaps, and Resiliency Copilot answers natural-language questions like "which data sources have no recovery points in the last seven days?"
All of this is portal-driven today — there is no az resiliency CLI yet — and Infrastructure Resiliency Manager is in preview, so expect to enrol for access. Treat preview behaviour as evolving, but the direction is clear: DR validation is becoming a first-class, continuous activity rather than an annual fire drill.
The Testing Cadence That Actually Works
Print this section. DR without testing is just documentation.
Monthly:
- Run an AZ down drill against each Tier 1 Service Group
- Restore one random backup to an isolated network and verify it works
- Confirm measured RPO/RTO against your documented targets
Quarterly:
- Execute a full Site Recovery test failover to Southeast Asia, end to end
- Run communication drills — can the recovery team actually reach each other at 2 AM?
- Update runbooks for any infrastructure changes since the last test
Annually:
- Full failover exercise (not test failover) for at least one Tier 2 application
- Re-tier workloads; review cost optimisation opportunities
- Board-level DR readiness report
After every major change:
- New workload deployed? Add it to a recovery plan and a Service Group
- Resiliency recommendations flagged a gap? Remediate or formally accept it within 14 days
Pitfalls I See Repeatedly
- Networking dependencies. The plan assumes DNS updates instantly, but the TTL is 24 hours. Users hit dead IPs for a day. Lower TTLs ahead of planned failovers.
- Secrets and certificates. Backups contain encrypted secrets, but the recovery key lives in the primary region's Key Vault. You are locked out of your own recovery. Keep a recovery copy in the DR region.
- Third-party integrations. Payment gateways whitelist your Malaysian egress IPs. After failover to Singapore, the new source IPs get rejected. Register DR egress ranges before you need them.
- Human factors. The recovery lead resigned last quarter. The new owner has never seen the runbook. At least two people must be able to execute every recovery step.
- Automation decay. Failover scripts that worked six months ago now reference deleted resource groups. Nobody noticed because nobody ran them. This is exactly what quarterly test failovers catch.
Conclusion
Building a resilient recovery plan for a Malaysian enterprise in 2026 does not require reinventing your architecture. It requires honesty about the gap between documented and tested DR — then closing that gap with zone-redundant foundations, explicit regional DR where it matters, and the new Resiliency in Azure drills that finally make testing cheap and repeatable.
Remember the Malaysia West reality: no paired region means no free safety net. Design zonal resilience deliberately, replicate to Singapore explicitly, and let the June 2026 Infrastructure Resiliency Manager capabilities prove your architecture before a real outage does it for you.
Key Takeaways
- Define RPO/RTO tiers before choosing tools. Every workload maps to a tier; that mapping drives backup frequency, replication strategy, and budget.
- Malaysia West is non-paired — design regional DR explicitly. Cross-Region Restore is unavailable there. Use Availability Zones first, and replicate to Southeast Asia (Singapore) for regional failover until a second Malaysian region reaches GA.
- Harden your vaults against ransomware. Immutability, zone-redundant backup storage, soft delete, and restricted public access are table stakes in 2026, not optional extras.
- Test monthly with AZ down drills. Resiliency in Azure's Infrastructure Resiliency Manager makes zone-outage simulation a controlled, repeatable exercise. If you only test annually, you are hoping, not testing.
- Close the human gap. Two trained people per recovery step, current contact lists, quarterly communication drills. The best architecture fails when the only person with the credentials is unreachable.