Skip to content
ElastiCache for Redis/Valkey
Sub-page 1 of 9
Core one-way-door · Free

Enabling Cluster Mode Is a One-Way Door — Decide Before You Need It

Decision drivers
  • Realistic ceiling on dataset size and write throughput over the cluster's lifetime
  • Whether the client library is cluster-protocol-capable already
  • Whether the application uses multiple Redis/Valkey database indices (blocks cluster mode — single-database only)
  • Tolerance for a supervised migration project if this needs revisiting later

Production premise

Cluster mode only exists on node-based ElastiCache. Serverless shards your data automatically and has no cluster-mode toggle at all, so this page applies once you've committed to — or are evaluating — node-based deployment.

Within node-based, you get two shapes. Cluster mode disabled runs Valkey as a single logical dataset: one primary, up to 5 replicas. Cluster mode enabled splits the data across multiple nodes — up to 90 shards by default, extendable on request — so writes scale horizontally.

AWS's own migration path between the two is explicit. It runs one direction only.

Failure mode & inflection point

The door swings one way. You can migrate a cache from cluster mode disabled to enabled; AWS's documentation states the reverse plainly: "Reverting this configuration is not possible."

The migration has preconditions. The cluster must run Valkey 7.2+ (or Redis OSS 7.0+). Every key must live in database 0. The client must speak the cluster protocol, and auto-failover must already be configured with at least one replica behind it.

That list is where a late migration hurts. If your application already depends on multiple database indexes, or on a client with no cluster awareness, the move means real application changes — not just a config flip.

Production guardrail

Decide against your actual scaling ceiling rather than your current size. Cluster mode disabled caps you at what one primary can absorb; only cluster mode scales writes horizontally. If there's a real chance the dataset or the write throughput will outgrow a single shard's capacity, start in cluster mode now.

If you stay cluster-mode-disabled, at least run a cluster-protocol-aware client from day one. That keeps the migration open instead of betting on a clean one later. If you're genuinely unsure, "compatible" mode exists as a bridge state: clients connect via either protocol during a supervised transition. Just know the bridge runs one direction, same as the migration it serves.