跳至内容

如何更改我的 ElastiCache for Valkey 或 ElastiCache for Redis OSS 集群的集群模式?

2 分钟阅读
0

我想将我的 Amazon ElastiCache for Valkey 或 Amazon ElastiCache for Redis OSS 集群的集群模式从“禁用集群模式”更改为“启用集群模式”。

简短描述

**注意:**您只能将集群模式配置从“禁用集群模式”更改为“启用集群模式”。对集群模式进行此更改后,将无法恢复配置。

先决条件:

  • 集群必须仅在数据库 0 中拥有键。
  • 应用程序必须使用可以使用集群协议和配置端点的 Valkey 或 Redis OSS 客户端。
  • 对于集群,您必须开启自动失效转移,并且至少拥有 1 个副本。
  • 要进行迁移,您的集群必须拥有 Valkey 7.2 及更高版本或 Redis OSS 7.0 及更高版本的引擎版本。有关详细信息,请参阅修改集群模式。

要将集群模式从“禁用集群模式”更新为“启用集群模式”,请完成以下任务:

  1. 将集群模式从“禁用集群模式”更新为 Compatible(兼容)。
  2. 将集群模式从 Compatible(兼容)更新为“启用集群模式”。

**注意:**在此迁移过程中,集群仍然可用。

解决方法

在切换到 Compatible(兼容)模式之前,您必须将 cluster-enabled 参数设置为 yes。如果您使用默认参数组,则 ElastiCache for Valkey 和 ElastiCache for Redis OSS 会选择该默认参数组。此默认参数组已将 cluster-enabled 配置设置为 yes,您无需执行任何操作。

**注意:**如果您使用自定义参数组,请在修改集群时选择新的参数组。或者,为同一引擎系列创建新的参数组,并将 cluster-enabled 参数设置为 yes。

将集群模式从“禁用集群模式”更新为“兼容”

**注意:**如果您在运行 AWS 命令行界面 (AWS CLI) 命令时收到错误,请参阅 AWS CLI 错误故障排除。此外,请确保您使用的是最新版本的 AWS CLI。

在 Compatible(兼容)模式下,ElastiCache 会部署单个分片来与该节点一起使用。通过此配置,客户端应用程序可以使用任一协议与集群进行通信。

完成以下步骤:

  1. 打开 ElastiCache 控制台。
  2. 在导航窗格中,选择您的资源类型,然后选择您的集群。
  3. 选择 Modify(修改)。
  4. 在 Cluster mode(集群模式)下,选择 Compatible(兼容)。
  5. (可选)选择自定义参数组,并将 cluster-enabled 参数设置为 yes。
    **注意:**如果您使用默认参数组,则无需执行任何操作。
  6. 选择 Preview changes(预览更改),然后选择 Save changes(保存更改)。

要使用 AWS CLI 修改集群,请运行 modify-replication-group 命令,并将 cluster-mode(集群模式)参数更新为 compatible(兼容)。

示例:

aws elasticache modify-replication-group \
    --replication-group-id test-cluster \
    --cluster-mode compatible  \
    --apply-immediately

**注意:**在前面的示例中,请将 test-cluster 替换为您的集群名称。有关详细信息,请参阅修改复制组。

在集群模式更改为 Compatible(兼容)后,您可以使用新创建的配置端点从应用程序测试“启用集群模式”连接。您还可以使用主端点和读取器端点来为集群的现有“禁用集群模式”连接提供服务。

在 Compatible(兼容)模式下,您还可以恢复到“禁用集群模式”,并保留原始配置。

将集群模式从“兼容”更新为“启用集群模式”

在将所有 Valkey 或 Redis OSS 客户端迁移到“启用集群模式”后,客户端应用程序将具备集群感知能力。在此状态下,您可以将集群模式参数设置为 enabled(启用)。

完成以下步骤:

  1. 打开 ElastiCache 控制台。
  2. 在导航窗格中,选择您的资源类型,然后选择您的集群。
  3. 选择 Modify(修改)。
  4. 在 Cluster mode(集群模式)下,选择 Enabled(启用)。
  5. 选择 Preview changes(预览更改),然后选择 Save changes(保存更改)。

要使用 AWS CLI 修改集群,请运行 modify-replication-group 命令,并将 cluster-mode(集群模式)参数更新为 enabled(启用)。

示例:

aws elasticache modify-replication-group \
    --replication-group-id test-cluster \
    --cluster-mode enabled  \
    --apply-immediately

**注意:**在前面的示例中,请将 test-cluster 替换为您的集群名称。

集群模式更改完成后,集群端点也会改变。由于主端点或读取器端点不再存在,因此请确保使用新的配置端点更新您的应用程序。

**注意:**最佳做法是查看客户端相关文档,以将客户端配置为支持与(已启用集群模式的)集群进行交互。有关详细信息,请参阅 Valkey 网站上的 Cluster specification。

相关信息

复制: Valkey 和 Redis OSS 禁用集群模式 vs.启用集群模式

最佳实践: Redis 客户端和 Amazon ElastiCache for Redis

AWS 官方已更新 1 年前