Skip to content

Commit 821fb44

Browse files
Merge pull request #266199 from anaharris-ms/rel-cosmos-mongo
Reliability: Cosmos MongoDB vCore
2 parents 4ecec04 + 5a5a903 commit 821fb44

File tree

7 files changed

+112
-106
lines changed

7 files changed

+112
-106
lines changed

.openpublishing.redirection.json

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11029,6 +11029,18 @@
1102911029
"redirect_document_id": false
1103011030
},
1103111031
{
11032+
11033+
"source_path_from_root": "/articles/cosmos-db/mongodb/vcore/high-availability.md",
11034+
"redirect_url": "/azure/reliability/reliability-cosmos-mongodb",
11035+
"redirect_document_id": false
11036+
},
11037+
{
11038+
"source_path_from_root": "/articles/cosmos-db/mongodb/vcore/failover-disaster-recovery.md",
11039+
"redirect_url": "/azure/reliability/reliability-cosmos-mongodb",
11040+
"redirect_document_id": false
11041+
},
11042+
{
11043+
1103211044
"source_path_from_root": "/articles/notification-hubs/notification-hubs-high-availability.md",
1103311045
"redirect_url": "/azure/reliability/reliability-notification-hubs",
1103411046
"redirect_document_id": false
@@ -11064,7 +11076,6 @@
1106411076
"redirect_url": "/azure/operational-excellence/relocation-storage-account",
1106511077
"redirect_document_id": false
1106611078
}
11067-
11068-
11079+
1106911080
]
1107011081
}

articles/cosmos-db/mongodb/vcore/TOC.yml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,10 +36,8 @@
3636
href: vector-search-ai.md
3737
- name: MongoDB feature support
3838
href: compatibility.md
39-
- name: High availability
40-
href: high-availability.md
41-
- name: Failover and disaster recovery
42-
href: failover-disaster-recovery.md
39+
- name: Reliability
40+
href: /azure/reliability/reliability-cosmos-mongodb?toc=/azure/cosmos-db/mongodb/vcore/toc.json
4341
- name: Migration options
4442
href: migration-options.md
4543
- name: Security

articles/cosmos-db/mongodb/vcore/failover-disaster-recovery.md

Lines changed: 0 additions & 58 deletions
This file was deleted.

articles/cosmos-db/mongodb/vcore/high-availability.md

Lines changed: 0 additions & 35 deletions
This file was deleted.

articles/reliability/TOC.yml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -306,12 +306,8 @@
306306
href: reliability-chaos-studio.md
307307
- name: Azure Community Training
308308
href: reliability-community-training.md
309-
- name : Azure Cosmos DB for MongoDB vCore
310-
items:
311-
- name: Availability zones
312-
href: /azure/cosmos-db/mongodb/vcore/high-availability?toc=/azure/reliability/toc.json&bc=/azure/reliability/breadcrumb/toc.json
313-
- name: Disaster recovery
314-
href : ../cosmos-db/mongodb/vcore/failover-disaster-recovery.md?toc=/azure/reliability/toc.json&bc=/azure/reliability/breadcrumb/toc.json
309+
- name: Azure Cosmos DB for MongoDB vCore
310+
href: reliability-cosmos-mongodb.md
315311
- name: Azure Databox
316312
href: ../databox/data-box-disk-faq.yml?toc=/azure/reliability/toc.json&bc=/azure/reliability/breadcrumb/toc.json#how-can-i-recover-my-data-if-an-entire-region-fails-
317313
- name: Azure Data Manager for Energy

articles/reliability/overview-reliability-guidance.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ For a more detailed overview of reliability principles in Azure, see [Reliabilit
102102
|Azure Application Gateway for Containers | [Reliability in Azure Application Gateway for Containers](reliability-app-gateway-containers.md) | [Reliability in Azure Application Gateway for Containers](reliability-app-gateway-containers.md)|
103103
|Azure Chaos Studio | [Reliability in Azure Chaos Studio](reliability-chaos-studio.md)| [Reliability in Azure Chaos Studio](reliability-chaos-studio.md)|
104104
|Azure Community Training|[Reliability in Community Training](reliability-community-training.md) |[Reliability in Community Training](reliability-community-training.md) |
105-
|Azure Cosmos DB for MongoDB vCore|[High availability in Azure Cosmos DB for MongoDB vCore](/azure/cosmos-db/mongodb/vcore/high-availability?toc=/azure/reliability/toc.json&bc=/azure/reliability/breadcrumb/toc.json)|[Failover for business continuity and disaster recovery with Azure Cosmos DB for MongoDB vCore](../cosmos-db/mongodb/vcore/failover-disaster-recovery.md?toc=/azure/reliability/toc.json&bc=/azure/reliability/breadcrumb/toc.json) |
105+
|Azure Cosmos DB for MongoDB vCore|[Reliability in Azure Cosmos DB for MongoDB vCore](./reliability-cosmos-mongodb.md)|[Reliability in Azure Cosmos DB for MongoDB vCore](./reliability-cosmos-mongodb.md) |
106106
|Azure Databox| |[Microsoft Azure Data Box Disk FAQ](../databox/data-box-disk-faq.yml?toc=/azure/reliability/toc.json&bc=/azure/reliability/breadcrumb/toc.json#how-can-i-recover-my-data-if-an-entire-region-fails-) |
107107
|Azure Data Manager for Energy| [Reliability in Azure Data Manager for Energy](./reliability-energy-data-services.md) |[Reliability in Azure Data Manager for Energy](./reliability-energy-data-services.md) |
108108
|Azure Data Share| |[Disaster recovery for Azure Data Share](../data-share/disaster-recovery.md?toc=/azure/reliability/toc.json&bc=/azure/reliability/breadcrumb/toc.json)|
Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
---
2+
title: Reliability in Azure Cosmos DB for MongoDB vCore
3+
description: Find out about reliability in Azure Cosmos DB for MongoDB vCore
4+
author: anaharris-ms
5+
ms.author: gahllevy
6+
ms.reviewer: sidandrews
7+
ms.service: cosmos-db
8+
ms.subservice: mongodb
9+
ms.topic: concept
10+
ms.date: 03/11/2024
11+
ms.custom: references_regions, subject-reliability
12+
CustomerIntent: As a cloud architect/engineer, I need general guidance reliability in Azure Cosmos DB for MongoDB vCore
13+
---
14+
15+
# Reliability in Azure Cosmos DB for MongoDB vCore
16+
17+
[!INCLUDE[MongoDB vCore](../cosmos-db/includes/appliesto-mongodb-vcore.md)]
18+
19+
This article contains detailed information on regional resiliency with [availability zones](#availability-zone-support) and [cross-region disaster recovery and business continuity](#cross-region-disaster-recovery-and-business-continuity) for Azure Cosmos DB for MongoDB vCore.
20+
21+
For an architectural overview of reliability in Azure, see [Azure reliability](/azure/architecture/framework/resiliency/overview).
22+
23+
24+
## Availability zone support
25+
26+
[!INCLUDE [Availability zone description](includes/reliability-availability-zone-description-include.md)]
27+
28+
To gain availability zone support, you must enable High availability (HA).
29+
30+
HA avoids database downtime by maintaining standby replicas of every shard in a cluster. If a shard goes down, Azure Cosmos DB for MongoDB vCore switches incoming connections from the failed shard to its standby replica.
31+
32+
When HA is enabled in a region that supports availability zones, HA replica shards are provisioned in a different availability zone from their primary shards. HA replicas don't receive requests from clients unless their primary shard fails.
33+
34+
If HA is disabled, each shard has its own locally redundant storage (LRS) with three synchronous replicas maintained by Azure Storage service. If there's a single replica failure, the Azure Storage service detects the failure, and transparently re-creates the relevant data. For LRS storage durability, see [Summary of redundancy options](/azure/storage/common/storage-redundancy#summary-of-redundancy-options). However, in the case of a region failure, you run the risk of extensive downtime and possible data loss.
35+
36+
37+
### Prerequisites
38+
39+
Your Azure Cosmos DB for MongoDB vCore cluster must be created in the following regions:
40+
41+
- Australia East
42+
- Southeast Asia
43+
- Canada Central
44+
- North Europe
45+
- UK South
46+
- West Europe
47+
- Central US
48+
- East US
49+
- East US 2
50+
- South Central US
51+
- West US 2
52+
53+
54+
### Create a resource with availability zones enabled
55+
56+
To enable availability zones, you must enable High availability (HA) when [creating a cluster](../cosmos-db/mongodb/vcore/quickstart-portal.md) or in the [**Scale** section of an existing cluster](../cosmos-db/mongodb/vcore/how-to-scale-cluster.md) in the Azure portal.
57+
58+
59+
## Cross-region disaster recovery and business continuity
60+
61+
[!INCLUDE [introduction to disaster recovery](includes/reliability-disaster-recovery-description-include.md)]
62+
63+
Azure Cosmos DB for MongoDB vCore does not provide built-in automatic failover or disaster recovery. Planning for high availability is a critical step as your solution scales.
64+
65+
### Disaster recovery in single-region geography
66+
67+
To maximize your uptime, plan ahead to maintain business continuity and prepare for disaster recovery with Azure Cosmos DB for MongoDB vCore.
68+
69+
While Azure services are designed to maximize uptime, unplanned service outages might occur. A disaster recovery plan ensures that you have a strategy in place for handling regional service outages.
70+
71+
Azure Cosmos DB for MongoDB vCore automatically takes backups of your data at regular intervals. The automatic backups are taken without affecting the performance or availability of the database operations. All backups are performed automatically in the background and stored separately from the source data in a storage service. These automatic backups are useful in scenarios when you accidentally delete or modify resources and later require the original versions.
72+
73+
Automatic backups are retained in various intervals based on whether the cluster is currently active or recently deleted.
74+
75+
| | Retention period |
76+
| --- | --- |
77+
| **Active clusters** | `35` days |
78+
| **Deleted clusters** | `7` days |
79+
80+
## Design for high availability
81+
82+
High availability (HA) should be enabled for critical Azure Cosmos DB for MongoDB vCore clusters running production workloads. In an HA-enabled cluster, each shard serves as a primary along with a hot-standby shard provisioned in another availability zone. Replication between the primary and the secondary shard is synchronous by default. Any modification to the database is persisted on both the primary and the secondary (hot-standby) shards before a response from the database is received.
83+
84+
The service maintains health checks and heartbeats to each primary and secondary shard of the cluster. If a primary shard becomes unavailable due to a zone or regional outage, the secondary shard is automatically promoted to become the new primary and a subsequent secondary shard is built for the new primary. In addition, if a secondary shard becomes unavailable, the service auto creates a new secondary shard with a full copy of data from the primary.
85+
86+
If the service triggers a failover from the primary to the secondary shard, connections are seamlessly routed under the covers to the new primary shard.
87+
88+
Synchronous replication between the primary and secondary shards guarantees no data loss if there's a failover.
89+
90+
## Next steps
91+
92+
- Read more about [feature compatibility with MongoDB](../cosmos-db/mongodb/vcore/compatibility.md).
93+
- Review options for [migrating from MongoDB to Azure Cosmos DB for MongoDB vCore](../cosmos-db/mongodb/vcore/migration-options.md)
94+
- Get started by [creating an account](../cosmos-db/mongodb/vcore/quickstart-portal.md).

0 commit comments

Comments
 (0)