修改集群模式 - Amazon ElastiCache
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

修改集群模式

Valkey 或 Redis OSS 是一种分布式内存数据库,支持分片和复制。ElastiCache(兼容 Valkey 或 Redis OSS)集群是分布式实现,它允许在多个节点间对数据进行分区。ElastiCache for Redis OSS 集群有两种操作模式:“已启用集群模式”(CME)和“已禁用集群模式”(CMD)。在 CME 中,Valkey 和 Redis OSS 引擎充当具有多个分片和节点的分布式数据库,而在 CMD 中,Valkey 和 Redis OSS 充当单个节点。

从 CMD 迁移到 CME 之前,必须满足以下条件:

重要

集群模式配置只能从“已禁用集群模式”更改为“已启用集群模式”。无法还原此配置。

  • 集群只能在数据库 0 中拥有密钥。

  • 应用程序必须使用能够使用集群协议的 Valkey 或 Redis OSS 客户端,并使用配置端点。

  • 必须在至少有 1 个副本的集群上启用自动失效转移。

  • 迁移所需的最低引擎版本为 Valkey 7.2 及更高版本,或 Redis OSS 7.0 及更高版本。

要从 CMD 迁移到 CME,必须将集群模式配置从“已禁用集群模式”更改为“已启用集群模式”。这是一个两步过程,可确保迁移过程中集群的可用性。

注意

您需要为参数组提供已启用集群的配置,也就是说,cluster-enabled 参数设置为 yes。如果您使用的是原定设置参数组,则 ElastiCache for Redis OSS 将自动选择具有已启用集群的配置的相应原定设置参数组。对于 CMD 集群,cluster-enabled 参数值设置为 no。当集群移至兼容模式时,作为修改操作的一部分,cluster-enabled 参数值将更新为 yes

有关更多信息,请参阅 使用 ElastiCache 参数组配置引擎参数

  1. 准备 – 创建一个测试 CME 集群,并确保您的堆栈已准备好使用它。ElastiCache for Redis OSS 无法验证您是否准备就绪。有关更多信息,请参阅 创建 Valkey 或 Redis OSS 集群

  2. 将现有 CMD 集群配置修改为“与集群模式兼容”– 在此模式下,将部署单个分片,ElastiCache for Redis OSS 既可以用作单个节点,也可以用作单个分片集群。兼容模式意味着客户端应用程序可以使用任一协议与集群通信。在此模式下,必须重新配置应用程序才能开始使用 Valkey 或 Redis OSS 集群协议和配置端点。要将 Valkey 或 Redis OSS 集群模式更改为“与集群模式兼容”,请执行以下步骤:

    注意

    在兼容模式下,不允许对集群执行其他修改操作,例如扩缩和引擎版本。此外,在 ModifyReplicationGroup 请求中定义集群模式参数时,无法修改参数(不包括 cacheParameterGroupName)。

    1. 使用 Amazon Web Services 管理控制台时,请参阅修改复制组并将集群模式设置为兼容

    2. 使用 API,请参阅 ModifyReplicationGroup 并将 ClusterMode 参数更新为 compatible

    3. 使用 Amazon CLI,请参阅 modify-replication-group 并将 cluster-mode 参数更新为 compatible

    将 Valkey 或 Redis OSS 集群模式更改为“与集群模式兼容”后,DescribeReplicationGroups API 将返回 ElastiCache for Redis OSS 集群配置端点。集群配置端点是应用程序可以用来连接到集群的单个端点。有关更多信息,请参阅 查找 ElastiCache 中的缓存连接端点

  3. 将集群配置修改为“已启用集群模式” - 在将集群模式设置为“与集群模式兼容”后,第二步是将集群配置修改为“已启用集群模式”。在此模式下,单个分片正在运行,客户现在可以扩缩其集群或修改其他集群配置。

    要将集群模式更改为已启用,请执行以下步骤:

    开始之前,请确保您的 Valkey 或 Redis OSS 客户端已迁移到使用集群协议,并且集群的配置端点未在使用中。

    1. 使用 Amazon Web Services 管理控制台时,请参阅修改复制组并将集群模式设置为已启用

    2. 使用 API,请参阅 ModifyReplicationGroup 并将 ClusterMode 参数更新为 enabled

    3. 使用 Amazon CLI,请参阅 modify-replication-group 并将 cluster-mode 参数更新为 enabled

    在将集群模式更改为已启用后,端点将按照 Valkey 或 Redis OSS 集群规范进行配置。DescribeReplicationGroups API 将返回集群模式参数(值为 enabled)和现在可供应用程序用于连接到集群的集群端点。

    请注意,一旦集群模式更改为已启用,集群端点就会发生变化。请确保使用新端点更新您的应用程序。

您也可以选择从“与集群模式兼容”恢复为“已禁用集群模式”(CMD)并保留原始配置。

将集群配置从“与集群模式兼容”修改为“已禁用集群模式”
  1. 使用 Amazon Web Services 管理控制台时,请参阅修改复制组并将集群模式设置为已禁用

  2. 使用 API,请参阅 ModifyReplicationGroup 并将 ClusterMode 参数更新为 disabled

  3. 使用 Amazon CLI,请参阅 modify-replication-group 并将 cluster-mode 参数更新为 disabled

将集群模式更改为已禁用后,DescribeReplicationGroups API 会将集群模式参数返回为 disabled