Amazon ElastiCache
User Guide (API Version 2015-02-02)

Scaling Redis Clusters with Replica Nodes

A Redis cluster with replica nodes (called replication group in the API/CLI) provides high availability via replication that has Multi-AZ with automatic failover enabled. A cluster with replica nodes is a logical collection of up to 6 Redis clusters where one cluster, the Primary, is able to serve both read and write requests. All the other clusters in the cluster are read-only replicas of the Primary. Data written to the Primary is asynchronously replicated to all the read replicas in the cluster. Because Redis (cluster mode disabled) does not support partitioning your data across multiple clusters, each cluster in a Redis (cluster mode disabled) replication group contains the entire cache dataset. Redis (cluster mode enabled) clusters support partitioning your data across up to 15 shards.


Due to the current limitations on Redis (cluster mode enabled), to scale the node type, number of shards (called node groups in the API/CLI), or the number of replicas in the shard of a Redis (cluster mode enabled) cluster with replica nodes, you must create a new Redis (cluster mode enabled) cluster with the new node type, number of shards, or number of replicas and then delete the old cluster.

To change the data capacity of your cluster you must scale it up to a larger node type, or down to a smaller node type.

To change the read capacity of your cluster, add more read replicas, up to a maximum of 5, or remove read replicas.

The ElastiCache scaling up process is designed to make a best effort to retain your existing data and requires successful Redis replication. For Redis clusters with replicas, we recommend that sufficient memory be made available to Redis as described in the topic Ensuring You Have Sufficient Memory to Create a Redis Snapshot.

The scaling down process is completely manual and makes no attempt at data retention other than what you do.