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

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

修改集群模式

Redis OSS 是一个分布式内存数据库,支持分片和复制。 ElastiCache (Redis OSS) 集群是 Redis OSS 的分布式实现,它允许在多个 Redis OSS 节点之间对数据进行分区。 ElastiCache (Redis OSS)集群有两种操作模式:启用集群模式 (CME) 和禁用集群模式 (CMD)。在芝加哥商品交易所中,Redis OSS充当具有多个分片和节点的分布式数据库,而在CMD中,Redis OSS作为单个节点工作。

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

重要

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

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

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

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

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

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

注意

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

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

  1. 准备 — 创建一个测试 CME 集群,并确保您的堆栈已准备好使用它。 ElastiCache (Redis OSS) 无法验证你的准备情况。有关更多信息,请参阅 创建集群

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

    注意

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

    1. 使用 Amazon Web Services Management Console,查看修改复制组并将集群模式设置为 “兼容

    2. 使用 API,查看ClusterMode参数ModifyReplicationGroup并将其更新为compatible

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

    将 Redis OSS 集群模式更改为兼容集群模式后,DescribeReplicationGroupsAPI 将返回 ElastiCache (Redis OSS) 集群配置终端节点。集群配置端点是应用程序可以用来连接到集群的单个端点。有关更多信息,请参阅 查找连接端点

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

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

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

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

    2. 使用 API,查看ClusterMode参数ModifyReplicationGroup并将其更新为enabled

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

    将集群模式更改为启用后,将按照 Redis OSS 集群规范配置终端节点。DescribeReplicationGroupsAPI 将返回集群模式参数为,enabled以及现在可供应用程序用来连接集群的集群终端节点。

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

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

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

  2. 使用 API,查看ClusterMode参数ModifyReplicationGroup并将其更新为disabled

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

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