本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
修改集群模式
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
。
有关更多信息,请参阅使用参数组配置引擎参数。
准备 – 创建一个测试 CME 集群,并确保您的堆栈已准备好使用它。ElastiCache for Redis 无法验证您是否准备就绪。有关更多信息,请参阅创建集群。
将现有 CMD 集群配置修改为“与集群模式兼容” – 在此模式下,将部署单个分片,ElastiCache for Redis 既可以用作单个节点,也可以用作单个分片集群。兼容模式意味着客户端应用程序可以使用任一协议与集群通信。在此模式下,必须重新配置应用程序才能开始使用 Redis 集群协议和配置端点。要将 Redis 集群模式更改为“与集群模式兼容”,请执行以下步骤:
注意
在兼容模式下,不允许对集群执行其他修改操作,例如扩缩和引擎版本。此外,在 ModifyReplicationGroup 请求中定义集群模式参数时,无法修改参数(不包括
cacheParameterGroupName
)。使用 Amazon Web Services Management Console时,请参阅修改复制组并将集群模式设置为兼容
使用 API,请参阅 ModifyReplicationGroup 并将
ClusterMode
参数更新为compatible
。使用 Amazon CLI,请参阅 modify-replication-group 并将
cluster-mode
参数更新为compatible
。
将 Redis 集群模式更改为“与集群模式兼容”后,DescribeReplicationGroups API 将返回 ElastiCache for Redis 集群配置端点。集群配置端点是应用程序可以用来连接到集群的单个端点。有关更多信息,请参阅查找连接端点。
将集群配置修改为“已启用集群模式” - 在将集群模式设置为“与集群模式兼容”后,第二步是将集群配置修改为“已启用集群模式”。在此模式下,单个分片正在运行,客户现在可以扩缩其集群或修改其他集群配置。
要将集群模式更改为已启用,请执行以下步骤:
开始之前,请确保您的 Redis 客户端已迁移到使用集群协议,并且集群的配置端点未在使用中。
使用 Amazon Web Services Management Console时,请参阅修改复制组并将集群模式设置为已启用。
使用 API,请参阅 ModifyReplicationGroup 并将
ClusterMode
参数更新为enabled
。使用 Amazon CLI,请参阅 modify-replication-group 并将
cluster-mode
参数更新为enabled
。
在将集群模式更改为已启用后,端点将按照 Redis 集群规范进行配置。DescribeReplicationGroups API 将返回集群模式参数(值为
enabled
)和现在可供应用程序用于连接到集群的集群端点。请注意,一旦集群模式更改为已启用,集群端点就会发生变化。请确保使用新端点更新您的应用程序。
您也可以选择从“与集群模式兼容”恢复为“已禁用集群模式”(CMD)并保留原始配置。
将集群配置从“与集群模式兼容”修改为“已禁用集群模式”
-
使用 Amazon Web Services Management Console时,请参阅修改复制组并将集群模式设置为已禁用
使用 API,请参阅 ModifyReplicationGroup 并将
ClusterMode
参数更新为disabled
。使用 Amazon CLI,请参阅 modify-replication-group 并将
cluster-mode
参数更新为disabled
。
将集群模式更改为已禁用后,DescribeReplicationGroups API 会将集群模式参数返回为 disabled
。