Amazon ElastiCache
用户指南 (API 版本 2015-02-02)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

从备份还原并执行可选的群集规模调整

您可以随时将 Redis .rdb 备份文件中的数据还原到新群集中。

Amazon ElastiCache for Redis 还原流程支持以下操作:

  • 从 Redis (已禁用集群模式) 群集升级到运行 Redis 版本 3.2.4 的 Redis (已启用集群模式) 群集。

     

  • 将您从自管理 Redis 群集创建的一个或多个 .rdb 备份文件,迁移到 Redis (已启用集群模式) 群集的单个 ElastiCache。

    .rdb 文件必须放在 S3 中来执行还原。

     

  • 在新群集中指定多个分片 (API/CLI:节点组),其数量不同于创建备份文件时所用群集中分片的数量。

     

  • 为新群集指定不同的节点类型,可以更大,也可以更小。如果要缩减到较小的节点类型,则必须确保新节点类型拥有足量内存以适应您的数据和 Redis 开销。有关更多信息,请参阅 选择节点大小

     

  • 以不同于创建备份文件时所用群集中的方法,配置新 Redis (已启用集群模式) 群集的槽。

重要

  • 您无法将使用 Redis (已启用集群模式) 群集创建的备份还原到 Redis (已禁用集群模式) 群集。

  • Redis (已启用集群模式)群集不支持多个数据库。因此,还原到 Redis (已启用集群模式) 时,如果 RDB 文件引用多个数据库,还原将会失败。

从备份还原群集时,是否需要进行任何更改取决于以下情况:使用 ElastiCache 控制台时,取决于您在 Restore Cluster 对话框中进行的选择;或者,使用 AWS CLI 或 ElastiCache API 进行还原时,取决于使用的参数值。

在还原操作过程中,ElastiCache 会创建新群集,然后使用备份文件中的数据填充。此过程完成后,Redis 群集即完成预热,准备好接受请求。

重要

在继续之前,请确保您已创建要从中进行还原的群集备份。有关更多信息,请参阅 进行手动备份

如果要从外部创建的备份进行还原,请参阅使用外部创建的备份为新群集做种 (Redis)

以下过程向您演示如何使用 ElastiCache 控制台、AWS CLI 或 ElastiCache API 将备份还原到新群集。

(控制台) 从备份还原

您可以将 Redis 备份还原到单节点 Redis (已禁用集群模式) 群集,或者还原到具有只读副本 (复制组) 的 Redis 群集 (可以为 Redis (已禁用集群模式) 或 Redis (已启用集群模式))。

(控制台) 将备份还原到新群集

  1. 登录 AWS 管理控制台 并通过以下网址打开 ElastiCache 控制台:https://console.amazonaws.cn/elasticache/

  2. 从导航窗格中,选择 Backups

  3. 在备份列表中,选择您要从中进行还原的备份名称左侧的复选框。

  4. 选择 Restore

  5. 完成 Restore Cluster 对话框。请确保填写了所有必需字段以及任何其他您要更改默认值的字段。

    Redis (已禁用集群模式)

    1. Cluster ID - 必需。新群集的名称。

    2. Engine version compatibility - 您要运行的面向 Redis 的 ElastiCache 的引擎版本。

    3. Cluster mode enabled (scale out) - 选择此项可将 Redis (已禁用集群模式) 群集转换为 Redis (已启用集群模式) (引擎版本将为 3.2.4)。

      如果您选择 Cluster mode enabled (scale out)

      1. 选择您希望新群集拥有的分片数 (API/CLI:节点组)。

      2. 选择您希望各分片拥有的只读副本数。

      3. 根据需要在槽中分发键。

    4. Node Type - 指定您需要的新群集的节点类型。

    5. Availability zone(s) - 指定您希望如何选择群集的可用区。

    6. Port - 仅当您希望新群集使用不同端口时才更改此项。

    7. Choose a VPC - 选择在其中创建此群集的 VPC。

    8. Parameter Group - 选择为所选节点类型预留了足够 Redis 内存开销的参数组。

     

    Redis (已启用集群模式)

    1. Cluster ID - 必需。新群集的名称。

    2. Cluster mode enabled (scale out) - 为 Redis (已启用集群模式) 群集选择此项。对 Redis (已禁用集群模式) 群集清除此项。

    3. Node Type - 指定您需要的新群集的节点类型。

    4. Number of Shards - 选择您希望新群集拥有的分片 (API/CLI:节点组) 数量。

    5. Replicas per Shard - 选择您希望各分片拥有的只读副本节点数量。

    6. Slots and keyspaces - 选择您希望如何在分片之间分发键。如果您选择指定键分发,请完成为各分片指定键范围的表。

    7. Availability zone(s) - 指定您希望如何选择群集的可用区。

    8. Port - 仅当您希望新群集使用不同端口时才更改此项。

    9. Choose a VPC - 选择在其中创建此群集的 VPC。

    10. Parameter Group - 选择为所选节点类型预留了足够 Redis 内存开销的参数组。

  6. 根据需要完成设置后,选择 Launch Cluster

(AWS CLI) 从备份还原

您可以使用 AWS CLI 操作 create-cache-cluster 将 Redis (已禁用集群模式) 备份还原到单节点 Redis (已禁用集群模式) 群集,或者使用 AWS CLI 操作 create-replication-group 并使用 Redis .rdb 文件为其做种,从而将其还原到具有只读副本 (复制组) 的 Redis 群集 (可以为 Redis (已禁用集群模式) 或 Redis (已启用集群模式))。

使用 create-cache-clustercreate-replication-group 操作时,请确保包括参数 --snapshot-name--snapshot-arns,以使用来自备份的数据为新群集或复制组做种。

有关更多信息,请参阅下列内容:

(ElastiCache API) 从备份还原

您可以使用 ElastiCache API 操作 CreateCacheCluster 将 Redis 备份还原到单节点 Redis (已禁用集群模式) 群集,或者使用 ElastiCache API 操作 CreateReplicationGrooup 并使用 Redis .rdb 文件为其做种,从而将其还原到具有只读副本 (复制组) 的 Redis 群集 (可以为 Redis (已禁用集群模式) 或 Redis (已启用集群模式))。

使用 CreateCacheClusterCreateReplicationGroup 操作时,请确保包括参数 SnapshotNameSnapshotArns,以使用来自备份的数据为新群集或复制组做种。

有关更多信息,请参阅下列内容: