Supported ElastiCache (Redis OSS) versions - Amazon ElastiCache (Redis OSS)
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

Supported ElastiCache (Redis OSS) versions

ElastiCache Serverless caches support the following Redis OSS versions:

ElastiCache (Redis OSS) version 7.1 (enhanced)

This release contains performance improvements which enable workloads to drive higher throughput and lower operation latencies. ElastiCache 7.1 introduces two main enhancements :

We extended the enhanced I/O threads functionality to also handle the presentation layer logic. By presentation layer, we mean the Enhanced I/O threads which are now not only reading client input, but also parsing the input into Redis OSS binary command format. This is then forwarded to the main thread for execution which provides performance gain. Improved Redis OSS memory access pattern. Execution steps from many data structure operations are interleaved, to ensure parallel memory access and reduced memory access latency. When running ElastiCache on Graviton3-based R7g.4xlarge or larger, customers can achieve over 1 million requests per second per node. With the performance improvements to ElastiCache (Redis OSS) v7.1, customers can achieve up to 100% more throughput and 50% lower P99 latency relative to ElastiCache (Redis OSS) v7.0. These enhancements are enabled on node sizes with at least 8 physical cores (2xlarge on Graviton, and 4xlarge on x86), regardless of the CPU type and require no client changes.

Note

ElastiCache v7.1 is compatible with Redis OSS v7.0.

ElastiCache (Redis OSS) version 7.0 (enhanced)

ElastiCache (Redis OSS) 7.0 adds a number of improvements and support for new functionality:

  • Redis OSS Functions: ElastiCache (Redis OSS) 7 adds support for Redis OSS Functions, and provides a managed experience enabling developers to execute LUA scripts with application logic stored on the ElastiCache cluster, without requiring clients to re-send the scripts to the server with every connection.

  • ACL improvements: ElastiCache (Redis OSS) 7 adds support for the next version of Redis OSS Access Control Lists (ACLs). With ElastiCache (Redis OSS) 7, clients can now specify multiple sets of permissions on specific keys or keyspaces in Redis OSS.

  • Sharded Pub/Sub: ElastiCache (Redis OSS) 7 adds support to run Redis OSS Pub/Sub functionality in a sharded way when running ElastiCache in Cluster Mode Enabled (CME). Redis OSS Pub/Sub capabilities enable publishers to issue messages to any number of subscribers on a channel. With Amazon ElastiCache (Redis OSS) 7, channels are bound to a shard in the ElastiCache cluster, eliminating the need to propagate channel information across shards resulting in improved scalability.

  • Enhanced I/O multiplexing: ElastiCache (Redis OSS) version 7 introduces enhanced I/O multiplexing, which delivers increased throughput and reduced latency for high-throughput workloads that have many concurrent client connections to an ElastiCache cluster. For example, when using a cluster of r6g.xlarge nodes and running 5200 concurrent clients, you can achieve up to 72% increased throughput (read and write operations per second) and up to 71% decreaseed P99 latency, compared with ElastiCache (Redis OSS) version 6.

For more information on the Redis OSS 7.0 release, see Redis OSS 7.0 Release Notes at Redis OSS on GitHub.

ElastiCache (Redis OSS) version 6.2 (enhanced)

ElastiCache (Redis OSS) 6.2 includes performance improvements for TLS-enabled clusters using x86 node types with 8 vCPUs or more or Graviton2 node types with 4 vCPUs or more. These enhancements improve throughput and reduce client connection establishment time by offloading encryption to other vCPUs. With Redis OSS 6.2, you can also manage access to Pub/Sub channels with Access Control List (ACL) rules.

With this version, we also introduce support for data tiering on cluster nodes containing locally attached NVMe SSD. For more information, see Data tiering in ElastiCache.

Redis OSS engine version 6.2.6 also introduces support for native JavaScript Object Notation (JSON) format, a simple, schemaless way to encode complex datasets inside Redis OSS clusters. With JSON support, you can leverage the performance and Redis OSS APIs for applications that operate over JSON. For more information, see Getting started with JSON. Also included are JSON-related metrics, JsonBasedCmds and JsonBasedCmdsLatency, that are incorporated into CloudWatch to monitor the usage of this datatype. For more information, see Metrics for Redis OSS.

You specify the engine version by using 6.2. ElastiCache (Redis OSS) will automatically invoke the preferred patch version of Redis OSS 6.2 that is available. For example, when you create/modify a cache cluster, you set the --engine-version parameter to 6.2. The cluster will be launched with the current available preferred patch version of Redis OSS 6.2 at the creation/modification time. Specifying engine version 6.x in the API will result in the latest minor version of Redis OSS 6.

For existing 6.0 clusters, you can opt-in to the next auto minor version upgrade by setting the AutoMinorVersionUpgrade parameter to yes in the CreateCacheCluster, ModifyCacheCluster, CreateReplicationGroup or ModifyReplicationGroup APIs. ElastiCache (Redis OSS) will upgrade the minor version of your existing 6.0 clusters to 6.2 using self-service updates. For more information, see Self-service updates in Amazon ElastiCache.

When calling the DescribeCacheEngineVersions API, the EngineVersion parameter value will be set to 6.2 and the actual engine version with the patch version will be returned in the CacheEngineVersionDescription field. 

For more information on the Redis OSS 6.2 release, see Redis OSS 6.2 Release Notes at Redis OSS on GitHub.

ElastiCache (Redis OSS) version 6.0 (enhanced)

Amazon ElastiCache (Redis OSS) introduces the next version of the Redis OSS engine, which includes Authenticating Users with Role Based Access Control, client-side caching and significant operational improvements.

Beginning with Redis OSS 6.0, ElastiCache (Redis OSS) will offer a single version for each Redis OSS minor release, rather than offering multiple patch versions. ElastiCache (Redis OSS) will automatically manage the patch version of your running cache clusters, ensuring improved performance and enhanced security.

You can also opt-in to the next auto minor version upgrade by setting the AutoMinorVersionUpgrade parameter to yes and ElastiCache (Redis OSS) will manage the minor version upgrade, through self-service updates. For more information, see Service updates in ElastiCache.

You specify the engine version by using 6.0. ElastiCache (Redis OSS) will automatically invoke the preferred patch version of Redis OSS 6.0 that is available. For example, when you create/modify a cache cluster, you set the --engine-version parameter to 6.0. The cluster will be launched with the current available preferred patch version of Redis OSS 6.0 at the creation/modification time. Any request with a specific patch version value will be rejected, an exception will be thrown and the process will fail.

When calling the DescribeCacheEngineVersions API, the EngineVersion parameter value will be set to 6.0 and the actual engine version with the patch version will be returned in the CacheEngineVersionDescription field. 

For more information on the Redis OSS 6.0 release, see Redis OSS 6.0 Release Notes at Redis OSS on GitHub.

ElastiCache (Redis OSS) version 5.0.6 (enhanced)

Amazon ElastiCache (Redis OSS) introduces the next version of the Redis OSS engine, which includes bug fixes and the following cumulative updates:

  • Engine stability guarantee in special conditions.

  • Improved Hyperloglog error handling.

  • Enhanced handshake commands for reliable replication.

  • Consistent message delivery tracking via XCLAIM command.

  • Improved LFU field management in objects.

  • Enhanced transaction management when using ZPOP.

  • Ability to rename commands: A parameter called rename-commands that allows you to rename potentially dangerous or expensive Redis OSS commands that might cause accidental data loss, such as FLUSHALL or FLUSHDB. This is similar to the rename-command configuration in open source Redis OSS. However, ElastiCache has improved the experience by providing a fully managed workflow. The command name changes are applied immediately, and automatically propagated across all nodes in the cluster that contain the command list. There is no intervention required on your part, such as rebooting nodes.

    The following examples demonstrate how to modify existing parameter groups. They include the rename-commands parameter, which is a space-separated list of commands you want to rename:

    aws elasticache modify-cache-parameter-group --cache-parameter-group-name custom_param_group --parameter-name-values "ParameterName=rename-commands, ParameterValue='flushall restrictedflushall'" --region region

    In this example, the rename-commands parameter is used to rename the flushall command to restrictedflushall.

    To rename multiple commands, use the following:

    aws elasticache modify-cache-parameter-group --cache-parameter-group-name custom_param_group --parameter-name-values "ParameterName=rename-commands, ParameterValue='flushall restrictedflushall flushdb restrictedflushdb''" --region region

    To revert any change, re-run the command and exclude any renamed values from the ParameterValue list that you want to retain, as shown following:

    aws elasticache modify-cache-parameter-group --cache-parameter-group-name custom_param_group --parameter-name-values "ParameterName=rename-commands, ParameterValue='flushall restrictedflushall'" --region region

    In this case, the flushall command is renamed to restrictedflushall and any other renamed commands revert to their original command names.

    Note

    When renaming commands, you are restricted to the following limitations:

    • All renamed commands should be alphanumeric.

    • The maximum length of new command names is 20 alphanumeric characters.

    • When renaming commands, ensure that you update the parameter group associated with your cluster.

    • To prevent a command's use entirely, use the keyword blocked, as shown following:

      aws elasticache modify-cache-parameter-group --cache-parameter-group-name custom_param_group --parameter-name-values "ParameterName=rename-commands, ParameterValue='flushall blocked'" --region region

    For more information on the parameter changes and a list of what commands are eligible for renaming, see Redis OSS 5.0.3 parameter changes.

  • Redis OSS Streams: This models a log data structure that allows producers to append new items in real time. It also allows consumers to consume messages either in a blocking or nonblocking fashion. Streams also allow consumer groups, which represent a group of clients to cooperatively consume different portions of the same stream of messages, similar to Apache Kafka. For more information, see Introduction to Redis OSS Streams.

  • Support for a family of stream commands, such as XADD, XRANGE and XREAD. For more information, see Redis OSS Streams Commands.

  • A number of new and renamed parameters. For more information, see Redis OSS 5.0.0 parameter changes.

  • A new Redis OSS metric, StreamBasedCmds.

  • Slightly faster snapshot time for Redis OSS nodes.

Important

ElastiCache (Redis OSS) has back-ported two critical bug fixes from Redis OSS open source version 5.0.1. They are listed following:

  • RESTORE mismatch reply when certain keys have already expired.

  • The XCLAIM command can potentially return a wrong entry or desynchronize the protocol.

Both of these bug fixes are included in ElastiCache (Redis OSS) support for Redis OSS engine version 5.0.0 and are consumed in future version updates.

For more information, see Redis OSS 5.0.6 Release Notes at Redis OSS on GitHub.

ElastiCache (Redis OSS) version 5.0.5 (deprecated, use version 5.0.6)

Amazon ElastiCache (Redis OSS) introduces the next version of the Redis OSS engine;. It includes online configuration changes for ElastiCache (Redis OSS) of auto-failover clusters during all planned operations. You can now scale your cluster, upgrade the Redis OSS engine version and apply patches and maintenance updates while the cluster stays online and continues serving incoming requests. It also includes bug fixes.

For more information, see Redis OSS 5.0.5 Release Notes at Redis OSS on GitHub.

ElastiCache (Redis OSS) version 5.0.4 (deprecated, use version 5.0.6)

Amazon ElastiCache (Redis OSS) introduces the next version of the Redis OSS engine supported by Amazon ElastiCache. It includes the following enhancements:

  • Engine stability guarantee in special conditions.

  • Improved Hyperloglog error handling.

  • Enhanced handshake commands for reliable replication.

  • Consistent message delivery tracking via XCLAIM command.

  • Improved LFU field management in objects.

  • Enhanced transaction management when using ZPOP.

For more information, see Redis OSS 5.0.4 Release Notes at Redis OSS on GitHub.

ElastiCache (Redis OSS) version 5.0.3 (deprecated, use version 5.0.6)

Amazon ElastiCache (Redis OSS) introduces the next version of the Redis OSS engine supported by Amazon ElastiCache which includes bug fixes.

ElastiCache (Redis OSS) version 5.0.0 (deprecated, use version 5.0.6)

Amazon ElastiCache (Redis OSS) introduces the next major version of the Redis OSS engine supported by Amazon ElastiCache. ElastiCache (Redis OSS) 5.0.0 brings support for the following improvements:

  • Redis OSS Streams: This models a log data structure that allows producers to append new items in real time. It also allows consumers to consume messages either in a blocking or nonblocking fashion. Streams also allow consumer groups, which represent a group of clients to cooperatively consume different portions of the same stream of messages, similar to Apache Kafka. For more information, see Introduction to Redis OSS Streams.

  • Support for a family of stream commands, such as XADD, XRANGE and XREAD. For more information, see Redis OSS Streams Commands.

  • A number of new and renamed parameters. For more information, see Redis OSS 5.0.0 parameter changes.

  • A new Redis OSS metric, StreamBasedCmds.

  • Slightly faster snapshot time for Redis OSS nodes.

ElastiCache (Redis OSS) version 4.0.10 (enhanced)

Amazon ElastiCache (Redis OSS) introduces the next major version of the Redis OSS engine supported by Amazon ElastiCache. ElastiCache (Redis OSS) 4.0.10 brings support the following improvements:

Redis OSS (cluster mode disabled) users running Redis OSS version 3.2.10 can use the console to upgrade their clusters via online upgrade.

Comparing ElastiCache (Redis OSS) cluster resizing and encryption support
Version
Feature 3.2.6 3.2.10 4.0.10 and later
Online cluster resizing * No Yes Yes
In-transit encryption ** Yes No Yes
At rest encryption ** Yes No Yes
* Adding, removing, and rebalancing shards.
** Required for FedRAMP, HIPAA, and PCI DSS compliant applications. For more information, see Compliance validation for Amazon ElastiCache.

Past End of Life (EOL) versions (3.x)

ElastiCache (Redis OSS) version 3.2.10 (enhanced)

Amazon ElastiCache (Redis OSS) introduces the next major version of the Redis OSS engine supported by Amazon ElastiCache. ElastiCache (Redis OSS) 3.2.10 introduces online cluster resizing to add or remove shards from the cluster while it continues to serve incoming I/O requests. ElastiCache (Redis OSS) 3.2.10 users have all the functionality of earlier Redis OSS versions except the ability to encrypt their data. This ability is currently available only in version 3.2.6.

Comparing ElastiCache (Redis OSS) versions 3.2.6 and 3.2.10
Version
Feature 3.2.6 3.2.10
Online cluster resizing * No Yes
In-transit encryption ** Yes No
At rest encryption ** Yes No
* Adding, removing, and rebalancing shards.
** Required for FedRAMP, HIPAA, and PCI DSS compliant applications. For more information, see Compliance validation for Amazon ElastiCache.

For more information, see the following:

ElastiCache (Redis OSS) version 3.2.6 (enhanced)

Amazon ElastiCache (Redis OSS) introduces the next major version of the Redis OSS engine supported by Amazon ElastiCache. ElastiCache (Redis OSS) 3.2.6 users have all the functionality of earlier Redis OSS versions plus the option to encrypt their data. For more information, see the following:

ElastiCache (Redis OSS) version 3.2.4 (enhanced)

Amazon ElastiCache (Redis OSS) version 3.2.4 introduces the next major version of the Redis OSS engine supported by Amazon ElastiCache. ElastiCache (Redis OSS) 3.2.4 users have all the functionality of earlier Redis OSS versions available to them plus the option to run in cluster mode or non-cluster mode. The following table summarizes .

Comparing Redis OSS 3.2.4 non-cluster mode and cluster mode
Feature Non-cluster mode Cluster mode
Data partitioning No Yes
Geospatial indexing Yes Yes
Change node type Yes Yes *
Replica scaling Yes Yes *
Scale out No Yes *
Database support Multiple Single

Parameter group

default.redis3.2 **

default.redis3.2.cluster.on **

*  See Restoring from a backup into a new cache

** Or one derived from it.

Notes:
  • Partitioning – the ability to split your data across 2 to 500 node groups (shards) with replication support for each node group.

  • Geospatial indexing – Redis OSS 3.2.4 introduces support for geospatial indexing via six GEO commands. For more information, see the Redis OSS GEO* command documentation Redis OSS Commands: GEO on the Redis OSS Commands page (filtered for GEO).

For information about additional Redis OSS 3 features, see Redis OSS 3.2 release notes and Redis OSS 3.0 release notes.

Currently ElastiCache managed Redis OSS (cluster mode enabled) does not support the following Redis OSS 3.2 features:

  • Replica migration

  • Cluster rebalancing

  • Lua debugger

ElastiCache disables the following Redis OSS 3.2 management commands:

  • cluster meet

  • cluster replicate

  • cluster flushslots

  • cluster addslots

  • cluster delslots

  • cluster setslot

  • cluster saveconfig

  • cluster forget

  • cluster failover

  • cluster bumpepoch

  • cluster set-config-epoch

  • cluster reset

For information about Redis OSS 3.2.4 parameters, see Redis OSS 3.2.4 parameter changes.

Past End of Life (EOL) versions (2.x)

ElastiCache (Redis OSS) version 2.8.24 (enhanced)

Redis OSS improvements added since version 2.8.23 include bug fixes and logging of bad memory access addresses. For more information, see Redis OSS 2.8 release notes.

ElastiCache (Redis OSS) version 2.8.23 (enhanced)

Redis OSS improvements added since version 2.8.22 include bug fixes. For more information, see Redis OSS 2.8 release notes. This release also includes support for the new parameter close-on-slave-write which, if enabled, disconnects clients who attempt to write to a read-only replica.

For more information on Redis OSS 2.8.23 parameters, see Redis OSS 2.8.23 (enhanced) added parameters in the ElastiCache User Guide.

ElastiCache (Redis OSS) version 2.8.22 (enhanced)

Redis OSS improvements added since version 2.8.21 include the following:

  • Support for forkless backups and synchronizations, which allows you to allocate less memory for backup overhead and more for your application. For more information, see How synchronization and backup are implemented. The forkless process can impact both latency and throughput. When there is high write throughput, when a replica re-syncs, it can be unreachable for the entire time it is syncing.

  • If there is a failover, replication groups now recover faster because replicas perform partial syncs with the primary rather than full syncs whenever possible. Additionally, both the primary and replicas no longer use the disk during syncs, providing further speed gains.

  • Support for two new CloudWatch metrics.

    • ReplicationBytes – The number of bytes a replication group's primary cluster is sending to the read replicas.

    • SaveInProgress – A binary value that indicates whether or not there is a background save process running.

    For more information, see Monitoring use with CloudWatch Metrics.

  • A number of critical bug fixes in replication PSYNC behavior. For more information, see Redis OSS 2.8 release notes.

  • To maintain enhanced replication performance in Multi-AZ replication groups and for increased cluster stability, non-ElastiCache replicas are no longer supported.

  • To improve data consistency between the primary cluster and replicas in a replication group, the replicas no longer evict keys independent of the primary cluster.

  • Redis OSS configuration variables appendonly and appendfsync are not supported on Redis OSS version 2.8.22 and later.

  • In low-memory situations, clients with a large output buffer might be disconnected from a replica cluster. If disconnected, the client needs to reconnect. Such situations are most likely to occur for PUBSUB clients.

ElastiCache (Redis OSS) version 2.8.21

Redis OSS improvements added since version 2.8.19 include a number of bug fixes. For more information, see Redis OSS 2.8 release notes.

ElastiCache (Redis OSS) version 2.8.19

Redis OSS improvements added since version 2.8.6 include the following:

  • Support for HyperLogLog. For more information, see Redis OSS new data structure: HyperLogLog.

  • The sorted set data type now has support for lexicographic range queries with the new commands ZRANGEBYLEX, ZLEXCOUNT, and ZREMRANGEBYLEX.

  • To prevent a primary node from sending stale data to replica nodes, the master SYNC fails if a background save (bgsave) child process is aborted.

  • Support for the HyperLogLogBasedCommands CloudWatch metric. For more information, see Metrics for Redis OSS.

ElastiCache (Redis OSS) version 2.8.6

Redis OSS improvements added since version 2.6.13 include the following:

  • Improved resiliency and fault tolerance for read replicas.

  • Support for partial resynchronization.

  • Support for user-defined minimum number of read replicas that must be available at all times.

  • Full support for pub/sub—notifying clients of events on the server.

  • Automatic detection of a primary node failure and failover of your primary node to a secondary node.

ElastiCache (Redis OSS) version 2.6.13

Redis OSS version 2.6.13 was the initial version of Redis OSS supported by Amazon ElastiCache (Redis OSS). Multi-AZ is not supported on Redis OSS 2.6.13.