准备源和目标 Redis 节点以进行迁移 - 用于 Redis 的 Amazon ElastiCache
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

准备源和目标 Redis 节点以进行迁移

您必须确保已经满足了下面提到的所有四个先决条件,然后才能开始从 ElastiCache 控制台、API 或 AWS CLI 开始迁移。

准备源和目标 Redis 节点以进行迁移

  1. 确定目标 ElastiCache 部署,并确保您可以将数据迁移到该部署。

    现有或新创建的 ElastiCache 部署应满足以下要求才能进行迁移:

    • 使用 Redis 引擎 5.0.5 或更高版本禁用了其集群模式。

    • 它没有启用传输中加密或静态加密。

    • 它已启用多可用区。

    • 它具有足够的可用内存以容纳 EC2 实例上的 Redis 中的数据。要配置正确的保留内存设置,请参阅管理预留内存

    • 如果 使用 CLI 或 Redis 版本 5.0.6 之后使用 CLI 或控制台,则可以直接从 Redis 版本 2.8.21 以前迁移到 Redis 版本 5.0.5 之后。我们不建议迁移到 Redis 版本 5.0.5。Redis 版本 5.0.6 提供更高的稳定性和安全性。

  2. 确保 EC2 上的 Redis 与 ElastiCache for Redis 部署的配置兼容。

    至少,目标 ElastiCache 部署中的所有以下内容应与 Redis 配置兼容才能进行 Redis 复制:

    • Redis 集群应采用禁用了集群模式的配置。

    • EC2 实例上的 Redis 不应启用 Redis AUTH。

    • Redis 配置 protected-mode 应设置为 no

    • 如果在 Redis 配置中具有 bind 配置,应对其进行更新以允许来自 ElastiCache 节点的请求。

    • ElastiCache 节点和 EC2 实例上的 Redis 的逻辑数据库数量应该相同。该值是在 Redis 配置中使用 databases 设置的。

    • 不应重命名执行数据修改的 Redis 命令,以使数据复制成功完成。

    • 要将数据从 Redis 集群复制到 ElastiCache,请确保具有足够的 CPU 和内存以处理该额外的负载。该负载来自于 Redis 集群创建并通过网络传输到 ElastiCache 节点的 RDB 文件。

  3. 执行以下操作,以确保 EC2 实例可以连接到 ElastiCache:

    • 确保 EC2 实例的 IP 地址是私有的。

    • 在与 EC2 实例上的 Redis 相同的 Virtual Private Cloud (VPC) 中分配或创建 ElastiCache 部署(建议)。

    • 如果 VPCs 不同,请设置 VPC 对等以允许节点之间的访问。有关 VPC 对等的更多信息,请参阅用于访问 Amazon VPC 中的 ElastiCache 集群的访问模式

    • 附加到 EC2 实例上 Redis 的安全组应允许来自 ElastiCache 节点的入站流量。

  4. 在数据迁移完成后,确保应用程序可以将流量传送到 ElastiCache 节点。有关更多信息,请参阅用于访问 Amazon VPC 中的 ElastiCache 集群的访问模式