Amazon ElastiCache
用户指南 (API Version 2015-02-02)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

进行手动备份

除了自动备份以外,您还可以随时创建手动 备份。与在指定保留期之后自动删除的自动备份不同,手动备份并没有在超过之后就会自动删除的保留期。您必须手动删除任何手动备份。即使您删除某个集群或节点,该集群或节点的所有手动备份都会保留。如果您不再需要保留某个手动备份,您必须自行显式删除它。

手动备份对于测试和存档非常有用。例如,假设您开发了一组基线数据用于测试。您可以创建这些数据的手动备份并在需要时还原数据。对用于修改数据的应用程序进行测试之后,您可通过创建新集群并从基线备份还原来重置数据。集群准备就绪后,您可以再次针对基线数据测试应用程序 - 并且可根据需要随时重复此过程。

除了直接创建手动备份外,您还可以通过下列方法之一创建手动备份:

您可以使用 AWS 管理控制台、AWS CLI 或 ElastiCache API 创建节点的手动备份。

(控制台) 创建手动备份

(控制台)创建群集的备份

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

  2. 在左侧导航窗格中,选择 Redis

    此时将出现 Redis 群集屏幕。

  3. 选择要备份的 Redis 集群名称左侧的复选框。

  4. 选择 Backup

  5. Create Backup 对话框的 Backup Name 框中键入备份的名称。建议该名称指明所备份的群集以及进行备份的日期和时间。

    群集命名约束

    • 必须包含 1 到 20 个字母数字字符或连字符。

    • 必须以字母开头。

    • 不能包含两个连续的连字符。

    • 不能以连字符结尾。

  6. 选择 Create Backup

    群集的状态将变为快照。当状态变回 available 时,备份已完成。

(AWS CLI) 创建手动备份

要使用 AWS CLI 创建集群的手动备份,请使用带以下参数的 create-snapshot AWS CLI 操作:

  • --cache-cluster-id - Redis (已禁用集群模式) 集群的名称,没有副本用作备份的源。在备份 Redis (已禁用集群模式) 集群时,使用此参数。

    重要

    此参数的值必须是 Redis (已禁用集群模式) 集群中的特定节点。如果没有只读副本,则该值是集群的名称,例如 myCluster。如果有只读副本,则该值是节点之一的名称,可以是主节点,也可以是只读副本,例如 myCluster-001myCluster-002

  • --replication-group-id - 用作备份源的 Redis (已启用集群模式) 集群的名称 (CLI/API:复制组)。在备份 Redis (已启用集群模式) 集群时,使用此参数。

     

  • --snapshot-name - 要创建的快照的名称。

    群集命名约束

    • 必须包含 1 到 20 个字母数字字符或连字符。

    • 必须以字母开头。

    • 不能包含两个连续的连字符。

    • 不能以连字符结尾。

示例 1:备份没有副本节点的 Redis (已禁用集群模式) 群集

以下 AWS CLI 操作从没有只读副本的 Redis (已禁用集群模式) 集群 myNonClusteredRedis 创建备份 bkup-20150515

对于 Linux, OS X, or Unix:

aws elasticache create-snapshot \ --cache-cluster-id myNonClusteredRedis \ --snapshot-name bkup-20150515

对于 Windows:

aws elasticache create-snapshot ^ --cache-cluster-id myNonClusteredRedis ^ --snapshot-name bkup-20150515

示例 2:备份有副本节点的 Redis (已禁用集群模式) 群集

以下 AWS CLI 操作从带有一个或多个只读副本的 Redis (已禁用集群模式) 集群 myNonClusteredRedis 创建备份 bkup-20150515

对于 Linux, OS X, or Unix:

aws elasticache create-snapshot \ --cache-cluster-id myNonClusteredRedis-001 \ --snapshot-name bkup-20150515

对于 Windows:

aws elasticache create-snapshot ^ --cache-cluster-id myNonClusteredRedis-001 ^ --snapshot-name bkup-20150515

示例输出:备份有副本节点的 Redis (已禁用集群模式) 群集

操作的输出将类似于下文。

{ "Snapshot": { "Engine": "redis", "CacheParameterGroupName": "default.redis3.2", "VpcId": "vpc-91280df6", "CacheClusterId": "myNonClusteredRedis-001", "SnapshotRetentionLimit": 0, "NumCacheNodes": 1, "SnapshotName": "bkup-20150515", "CacheClusterCreateTime": "2017-01-12T18:59:48.048Z", "AutoMinorVersionUpgrade": true, "PreferredAvailabilityZone": "us-east-1c", "SnapshotStatus": "creating", "SnapshotSource": "manual", "SnapshotWindow": "08:30-09:30", "EngineVersion": "3.2.4", "NodeSnapshots": [ { "CacheSize": "", "CacheNodeId": "0001", "CacheNodeCreateTime": "2017-01-12T18:59:48.048Z" } ], "CacheSubnetGroupName": "default", "Port": 6379, "PreferredMaintenanceWindow": "wed:07:30-wed:08:30", "CacheNodeType": "cache.m3.2xlarge" } }

示例 3:备份 Redis (已启用集群模式) 集群

以下 AWS CLI 操作从 Redis (已启用集群模式) 集群 myClusteredRedis 创建备份 bkup-20150515。请注意使用 --replication-group-id 而非 --cache-cluster-id 来标识源。

对于 Linux, OS X, or Unix:

aws elasticache create-snapshot \ --replication-group-id myClusteredRedis \ --snapshot-name bkup-20150515

对于 Windows:

aws elasticache create-snapshot ^ --replication-group-id myClusteredRedis ^ --snapshot-name bkup-20150515

示例输出:备份 Redis (已启用集群模式) 集群

此操作的输出将类似于下文。

{ "Snapshot": { "Engine": "redis", "CacheParameterGroupName": "default.redis3.2.cluster.on", "VpcId": "vpc-91280df6", "NodeSnapshots": [ { "CacheSize": "", "NodeGroupId": "0001" }, { "CacheSize": "", "NodeGroupId": "0002" } ], "NumNodeGroups": 2, "SnapshotName": "bkup-20150515", "ReplicationGroupId": "myClusteredRedis", "AutoMinorVersionUpgrade": true, "SnapshotRetentionLimit": 1, "AutomaticFailover": "enabled", "SnapshotStatus": "creating", "SnapshotSource": "manual", "SnapshotWindow": "10:00-11:00", "EngineVersion": "3.2.4", "CacheSubnetGroupName": "default", "ReplicationGroupDescription": "2 shards 2 nodes each", "Port": 6379, "PreferredMaintenanceWindow": "sat:03:30-sat:04:30", "CacheNodeType": "cache.r3.large" } }

AWS CLI 另请参阅

有关更多信息,请参阅 AWS Command Line Interface Reference 中的 create-snapshot

(ElastiCache API) 创建手动备份

要使用 ElastiCache API 创建集群的手动备份,请使用带以下参数的 CreateSnapshot ElastiCache API 操作:

  • CacheClusterId - Redis (已禁用集群模式) 集群的名称,没有副本用作备份的源。在备份 Redis (已禁用集群模式) 集群时,使用此参数。

    重要

    此参数的值必须是 Redis (已禁用集群模式) 集群中的特定节点。如果没有只读副本,则该值是集群的名称,例如 myCluster。如果有只读副本,则该值是节点之一的名称,可以是主节点,也可以是只读副本之一,例如 myCluster-001myCluster-002

  • ReplicationGroupId - 用作备份源的 Redis (已启用集群模式) 集群 (对于 CLI 或 API,为复制组) 的名称。在备份 Redis (已启用集群模式) 集群时,使用此参数。

  • SnapshotName - 要创建的备份的名称。

    群集命名约束

    • 必须包含 1 到 20 个字母数字字符或连字符。

    • 必须以字母开头。

    • 不能包含两个连续的连字符。

    • 不能以连字符结尾。

示例 1:备份没有副本节点的 Redis (已禁用集群模式) 群集

以下 ElastiCache API 操作从没有只读副本的 Redis (已禁用集群模式) 集群 myNonClusteredRedis 创建备份 bkup-20150515

https://elasticache.us-west-2.amazonaws.com/ ?Action=CreateSnapshot &CacheClusterId=myNonClusteredRedis &SnapshotName=bkup-20150515 &Version=2015-02-02 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20150202T192317Z &X-Amz-Credential=<credential>

示例 2:备份有副本节点的 Redis (已禁用集群模式) 群集

以下 ElastiCache API 操作从带有一个或多个只读副本的 Redis (已禁用集群模式) 集群 myNonClusteredRedis 创建备份 bkup-20150515

https://elasticache.us-west-2.amazonaws.com/ ?Action=CreateSnapshot &CacheClusterId=myNonClusteredRedis-001 &SnapshotName=bkup-20150515 &Version=2015-02-02 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20150202T192317Z &X-Amz-Credential=<credential>

示例 3:备份 Redis (已启用集群模式) 集群

以下 ElastiCache API 操作从 Redis (已启用集群模式) 集群 myClusteredRedis 创建备份 bkup-20150515。请注意使用 ReplicationGroupId 而非 CacheClusterId 来标识源。

https://elasticache.us-west-2.amazonaws.com/ ?Action=CreateSnapshot &ReplicationGroupId=myClusteredRedis &SnapshotName=bkup-20150515 &Version=2015-02-02 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20150202T192317Z &X-Amz-Credential=<credential>

ElastiCache API 另请参阅

有关更多信息,请参阅 Amazon ElastiCache API Reference 中的 CreateSnapshot