Skip to content

Commit 80e9c15

Browse files
Merge pull request #214629 from MSFTeegarden/patch-4
Update cache-high-availability.md
2 parents 8d9e0ea + 54ae61d commit 80e9c15

File tree

1 file changed

+62
-12
lines changed

1 file changed

+62
-12
lines changed

articles/azure-cache-for-redis/cache-high-availability.md

Lines changed: 62 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@ author: flang-msft
55

66
ms.service: cache
77
ms.topic: conceptual
8-
ms.date: 03/29/2022
8+
ms.date: 03/09/2023
99
ms.author: franlanglois
10-
10+
ms.custom: references_regions
1111
---
1212
# High availability and disaster recovery
1313

@@ -21,15 +21,17 @@ Various high availability options are available in the Standard, Premium, and En
2121
| ------------------- | ------- | ------- | :------: | :---: | :---: |
2222
| [Standard replication](#standard-replication-for-high-availability)| Dual-node replicated configuration in a single data center with automatic failover | 99.9% (see [details](https://azure.microsoft.com/support/legal/sla/cache/v1_1/)) ||||
2323
| [Zone redundancy](#zone-redundancy) | Multi-node replicated configuration across Availability Zones, with automatic failover | 99.9% in Premium; 99.99% in Enterprise (see [details](https://azure.microsoft.com/support/legal/sla/cache/v1_1/)) |-|||
24-
| [Geo-replication](#geo-replication) | Linked cache instances in two regions, with user-controlled failover | Premium; Enterprise (see [details](https://azure.microsoft.com/support/legal/sla/cache/v1_1/)) |-|Passive|Active|
24+
| Geo-replication | Linked cache instances in two regions, with user-controlled failover | Premium; Enterprise (see [details](https://azure.microsoft.com/support/legal/sla/cache/v1_1/)) |-| [Passive](#passive-geo-replication) | [Active](#active-geo-replication) |
2525
| [Import/Export](#importexport) | Point-in-time snapshot of data in cache. | 99.9% (see [details](https://azure.microsoft.com/support/legal/sla/cache/v1_1/)) |-|||
2626
| [Persistence](#persistence) | Periodic data saving to storage account. | 99.9% (see [details](https://azure.microsoft.com/support/legal/sla/cache/v1_1/)) |-||Preview|
2727

2828
## Standard replication for high availability
2929

3030
Applicable tiers: **Standard**, **Premium**, **Enterprise**, **Enterprise Flash**
3131

32-
Azure Cache for Redis has a high availability architecture that ensures your managed instance is functioning, even when outages affect the underlying virtual machines (VMs). Whether the outage is planned or unplanned outages, Azure Cache for Redis delivers much greater percentage availability rates than what's attainable by hosting Redis on a single VM.
32+
Recommended for: **High availability**
33+
34+
Azure Cache for Redis has a high availability architecture that ensures your managed instance is functioning, even when outages affect the underlying virtual machines (VMs). Whether the outage is planned or unplanned outages, Azure Cache for Redis delivers greater percentage availability rates than what's attainable by hosting Redis on a single VM.
3335

3436
An Azure Cache for Redis in the applicable tiers runs on a pair of Redis servers by default. The two servers are hosted on dedicated VMs. Open-source Redis allows only one server to handle data write requests.
3537

@@ -55,16 +57,18 @@ A typical failover sequence looks like this, when a primary needs to go down for
5557

5658
A primary node can go out of service as part of a planned maintenance activity, such as an update to Redis software or the operating system. It also can stop working because of unplanned events such as failures in underlying hardware, software, or network. [Failover and patching for Azure Cache for Redis](cache-failover.md) provides a detailed explanation on types of failovers. An Azure Cache for Redis goes through many failovers during its lifetime. The design of the high availability architecture makes these changes inside a cache as transparent to its clients as possible.
5759

58-
Also, Azure Cache for Redis provides more replica nodes in the Premium tier. A [multi-replica cache](cache-how-to-multi-replicas.md) can be configured with up to three replica nodes. Having more replicas generally improves resiliency because you have nodes backing up the primary. Even with more replicas, an Azure Cache for Redis instance still can be severely impacted by a data center or Availability Zone outage. You can increase cache availability by using multiple replicas with [zone redundancy](#zone-redundancy).
60+
Also, Azure Cache for Redis provides more replica nodes in the Premium tier. A [multi-replica cache](cache-how-to-multi-replicas.md) can be configured with up to three replica nodes. Having more replicas generally improves resiliency because you have nodes backing up the primary. Even with more replicas, an Azure Cache for Redis instance still can be severely affected by a data center or Availability Zone outage. You can increase cache availability by using multiple replicas with [zone redundancy](#zone-redundancy).
5961

6062
## Zone redundancy
6163

6264
Applicable tiers: **Premium**, **Enterprise**, **Enterprise Flash**
6365

66+
Recommended for: **High availability**, **Disaster recovery - intra region**
67+
6468
Azure Cache for Redis supports zone redundant configurations in the Premium and Enterprise tiers. A zone redundant cache can place its nodes across different Azure Availability Zones in the same region. It eliminates data center or AZ outage as a single point of failure and increases the overall availability of your cache.
6569
See this article for information on how to set it up.
6670

67-
If a cache is configured to use two or more zones as described above, the cache nodes are created in different zones. When a zone goes down, cache nodes in other zones are available to keep the cache functioning as usual.
71+
If a cache is configured to use two or more zones as described earlier in the article, the cache nodes are created in different zones. When a zone goes down, cache nodes in other zones are available to keep the cache functioning as usual.
6872

6973
Azure Cache for Redis supports zone redundant configurations in the Premium and Enterprise tiers. A [zone redundant cache](cache-how-to-zone-redundancy.md) can place its nodes across different [Azure Availability Zones](../reliability/availability-zones-overview.md) in the same region. It eliminates data center or Availability Zone outage as a single point of failure and increases the overall availability of your cache.
7074

@@ -74,9 +78,11 @@ The following diagram illustrates the zone redundant configuration for the Premi
7478

7579
:::image type="content" source="media/cache-high-availability/zone-redundancy.png" alt-text="Zone redundancy setup":::
7680

77-
Azure Cache for Redis distributes nodes in a zone redundant cache in a round-robin manner over the selected Availability Zones. It also determines which node will serve as the primary initially.
81+
Azure Cache for Redis distributes nodes in a zone redundant cache in a round-robin manner over the selected Availability Zones. It also determines the node that serves as the primary initially.
7882

79-
A zone redundant cache provides automatic failover. When the current primary node is unavailable, one of the replicas will take over. Your application may experience higher cache response time if the new primary node is located in a different AZ. Availability Zones are geographically separated. Switching from one AZ to another alters the physical distance between where your application and cache are hosted. This change impacts round-trip network latencies from your application to the cache. The extra latency is expected to fall within an acceptable range for most applications. We recommend you test your application to ensure it does well with a zone-redundant cache.
83+
#### Zone Down Experience for Premium tier
84+
85+
A zone redundant cache provides automatic failover. When the current primary node is unavailable, one of the replicas takes over. Your application may experience higher cache response time if the new primary node is located in a different AZ. Availability Zones are geographically separated. Switching from one AZ to another alters the physical distance between where your application and cache are hosted. This change impacts round-trip network latencies from your application to the cache. The extra latency is expected to fall within an acceptable range for most applications. We recommend you test your application to ensure it does well with a zone-redundant cache.
8086

8187
### Enterprise and Enterprise Flash tiers
8288

@@ -87,12 +93,49 @@ A cache in either Enterprise tier runs on a Redis Enterprise _cluster_. It alway
8793

8894
The Enterprise cluster divides Azure Cache for Redis data into partitions internally. Each partition has a _primary_ and at least one _replica_. Each data node holds one or more partitions. The Enterprise cluster ensures that the primary and replica(s) of any partition are never collocated on the same data node. Partitions replicate data asynchronously from primaries to their corresponding replicas.
8995

96+
#### Zone Down Experience for Enterprise tiers
97+
9098
When a data node becomes unavailable or a network split happens, a failover similar to the one described in [Standard replication](#standard-replication-for-high-availability) takes place. The Enterprise cluster uses a quorum-based model to determine which surviving nodes participate in a new quorum. It also promotes replica partitions within these nodes to primaries as needed.
9199

100+
### Regional availability
101+
102+
Zone-redundant Premium tier caches are available in the following regions:
103+
104+
| Americas | Europe | Middle East | Africa | Asia Pacific |
105+
|---|---|---|---|---|
106+
| Brazil South | France Central | Qatar Central | South Africa North | Australia East |
107+
| Canada Central | Germany West Central | | | Central India |
108+
| Central US | North Europe | | | Japan East |
109+
| East US | Norway East | | | Korea Central |
110+
| East US 2 | UK South | | | Southeast Asia |
111+
| South Central US | West Europe | | | East Asia |
112+
| US Gov Virginia | Sweden Central | | | China North 3 |
113+
| West US 2 | Switzerland North | | | |
114+
| West US 3 | | | | |
115+
116+
Zone-redundant Enterprise and Enterprise Flash tier caches are available in the following regions:
117+
118+
| Americas | Europe | Middle East | Africa | Asia Pacific |
119+
|---|---|---|---|---|
120+
| Canada Central* | North Europe | | | Australia East |
121+
| Central US* | UK South | | | Central India |
122+
| East US | West Europe | | | Southeast Asia |
123+
| East US 2 | | | | |
124+
| South Central US | | | | |
125+
| West US 2 | | | | |
126+
127+
\* Enterprise Flash tier not available in this region.
128+
129+
#### Availability zone redeployment and migration
130+
131+
Currently, the only way to convert your cache from a non-AZ configuration to an AZ configuration is to redeploy the cache. To learn how to redeploy your current cache, see [Migrate an Azure Cache for Redis instance to availability zone support](/azure/availability-zones/migrate-cache-redis).
132+
92133
## Persistence
93134

94135
Applicable tiers: **Premium**, **Enterprise (preview)**, **Enterprise Flash (preview)**
95136

137+
Recommended for: **Data durability**
138+
96139
Because your cache data is stored in memory, a rare and unplanned failure of multiple nodes can cause all the data to be dropped. To avoid losing data completely, [Redis persistence](https://redis.io/topics/persistence) allows you to take periodic snapshots of in-memory data, and store it to your storage account. If you experience a failure across multiple nodes causing data loss, your cache loads the snapshot from storage account. For more information, see [Configure data persistence for a Premium Azure Cache for Redis instance](cache-how-to-premium-persistence.md).
97140

98141
### Storage account for persistence
@@ -103,17 +146,22 @@ Consider choosing a geo-redundant storage account to ensure high availability of
103146

104147
Applicable tiers: **Premium**, **Enterprise**, **Enterprise Flash**
105148

149+
Recommended for: **Disaster recovery**
150+
106151
Azure cache for Redis supports the option to import and export Redis Database (RDB) files to provide data portability. It allows you to import data into Azure Cache for Redis or export data from Azure Cache for Redis by using an RDB snapshot. The RDB snapshot from a premium cache is exported to a blob in an Azure Storage Account. You can create a script to trigger export periodically to your storage account. For more information, see [Import and Export data in Azure Cache for Redis](cache-how-to-import-export-data.md).
107152

108153
### Storage account for export
109154

110155
Consider choosing a geo-redundant storage account to ensure high availability of your exported data. For more information, see [Azure Storage redundancy](../storage/common/storage-redundancy.md?toc=%2fazure%2fstorage%2fblobs%2ftoc.json).
111156

112-
## Geo-replication
157+
## Passive Geo-replication
113158

114159
Applicable tiers: **Premium**
115160

116-
[Geo-replication](cache-how-to-geo-replication.md) is a mechanism for linking two or more Azure Cache for Redis instances, typically spanning two Azure regions. Geo-replication is designed mainly for disaster recovery. Two Premium tier cache instances are connected through geo-replication in a way that provides reads and writes to your primary cache, and that data is replicated to the secondary cache.
161+
Recommended for: **Disaster recovery - single region**
162+
163+
[Geo-replication](cache-how-to-geo-replication.md) is a mechanism for linking two or more Azure Cache for Redis instances, typically spanning two Azure regions. Geo-replication is designed mainly for cross-region disaster recovery. Two Premium tier cache instances are connected through geo-replication in a way that provides reads and writes to your primary cache, and that data is replicated to the secondary cache.
164+
117165
For more information on how to set it up, see [Configure geo-replication for Premium Azure Cache for Redis instances](./cache-how-to-geo-replication.md).
118166

119167
If the region hosting the primary cache goes down, you’ll need to start the failover by: first, unlinking the secondary cache, and then, updating your application to point to the secondary cache for reads and writes.
@@ -122,7 +170,9 @@ If the region hosting the primary cache goes down, you’ll need to start the fa
122170

123171
Applicable tiers: **Enterprise**, **Enterprise Flash**
124172

125-
The Enterprise tiers support a more advanced form of geo-replication called [active geo-replication](cache-how-to-active-geo-replication.md). The Azure Cache for Redis Enterprise software uses conflict-free replicated data types to support writes to multiple cache instances, merges changes, and resolves conflicts. You can join up to five Enterprise tier cache instances in different Azure regions to form a geo-replication group.
173+
Recommended for: **High Availability**, **Disaster recovery - multi-region**
174+
175+
The Enterprise tiers support a more advanced form of geo-replication called [active geo-replication](cache-how-to-active-geo-replication.md) that offers both higher availability and cross-region disaster recovery across multiple regions. The Azure Cache for Redis Enterprise software uses conflict-free replicated data types to support writes to multiple cache instances, merges changes, and resolves conflicts. You can join up to five Enterprise tier cache instances in different Azure regions to form a geo-replication group.
126176

127177
An application using such a cache can read and write to any of the geo-distributed cache instances through their corresponding endpoints. The application should use what is the closest to each application instance, giving you the lowest latency. For more information, see [Configure active geo-replication for Enterprise Azure Cache for Redis instances](cache-how-to-active-geo-replication.md).
128178

@@ -136,7 +186,7 @@ For more information on force-unlinking, see [Force-Unlink if there's region out
136186

137187
Applicable tiers: **Standard**, **Premium**, **Enterprise**, **Enterprise Flash**
138188

139-
If you experience a regional outage, consider recreating your cache in a different region, and updating your application to connect to the new cache instead. It's important to understand that data will be lost during a regional outage. Your application code should be resilient to data loss.
189+
If you experience a regional outage, consider recreating your cache in a different region, and updating your application to connect to the new cache instead. It's important to understand that data is lost during a regional outage. Your application code should be resilient to data loss.
140190

141191
Once the affected region is restored, your unavailable Azure Cache for Redis is automatically restored, and available for use again. For more strategies for moving your cache to a different region, see [Move Azure Cache for Redis instances to different regions](./cache-moving-resources.md).
142192

0 commit comments

Comments
 (0)