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

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

修改集群模式

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

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

重要

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

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

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

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

  • 迁移所需的最低 Redis 引擎版本为 7.0。

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

注意

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

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

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

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

    注意

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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