ElastiCache multi-AZ setup with no replica

0

My customer is migrating to ElastiCache for Redis. They don't require their cluster to be highly available, so to save cost want to run with a single replica of data. Due to high write load it may require multiple shards, meaning cluster mode enabled cluster, which requires multi-az to be enabled.

From what I can see contrary to RDS, multi-AZ in ElastiCache uses one of the regular read replicas for failover, it doesn't keep a special replica just for the failover scenario. I see that I can run a cluster as multi-AZ with 0 read replicas, so it just has the primary nodes. In such a setup having multi-AZ enabled seems meaningless since there is nowhere to fail to in case the primary node fails.
Is there a benefit to running a cluster without replicas as multi-AZ besides the fact that it's required for cluster mode enabled setup?
Also if a cluster with a single writer will be sufficient to this customer, running it as cluster mode enabled with 1 shard and 0 replicas vs running it as single node cluster probably has the benefit of being able to add more nodes and shards easily if the workload changes over time. Are there any advantages like performance to running a single node cluster in this case?

AWS
專家
已提問 4 年前檢視次數 1001 次
1 個回答
0
已接受的答案

Unless there is a specific requirement to use cluster-mode-disabled, we suggest that customers start with cluster-mode-enabled because they can:

  • scale horizontally in an incremental fashion
  • reduce the blast radius of a single primary node (shard) failure
  • scale vertically (just like cluster-mode-disabled as well)

There are no performance benefits in choosing cluster-mode-disabled, even if the intent is to run a single writer/primary node with no replicas.

There are a few reasons why a customer may want to choose cluster-mode-disabled, though, a few examples:

  • Redis pubsub use cases can generate significant traffic as each message is replicated to each primary (and then to each primary's replica nodes)
  • if customer's preferred client library does not support cluster mode
  • if a required third party application does not support cluster mode

Using Multi-AZ with no read replicas will still help reduce the blast radius if there are two or more shards. Having primary nodes in different AZs means the remaining shards in the active AZs will continue to operate. If all nodes are placed in a single AZ and there is an AZ failure, then all nodes, of course, are unavailable.

AWS
已回答 4 年前

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南