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

从头创建 Redis (已禁用集群模式)复制组

您可以使用 ElastiCache 控制台、AWS CLI 或 ElastiCache API 从头创建 Redis (已禁用集群模式)复制组。Redis (已禁用集群模式) 复制组始终有一个节点组、一个主集群和最多 5 个只读副本。配置的范围可以从 90 个分片和 0 个副本到 15 个分片和 5 个副本,这是允许的最大副本数。Redis (已禁用集群模式) 复制组不支持对数据分区。

注意

对于每个集群,可将节点/分片限制提高到最大值 250。要请求提高限制,请参阅 AWS 服务限制并在请求中包含实例类型。

从头创建 Redis (已禁用集群模式)复制组 (AWS CLI)

以下过程使用 AWS CLI 创建 Redis (已禁用集群模式)复制组。

在从头创建 Redis (已禁用集群模式)复制组时,您通过单次调用 AWS CLI create-replication-group 命令创建复制组及其所有节点。包括以下参数。

--replication-group-id

正在创建的复制组的名称。

Redis (已禁用集群模式) 复制组命名约束

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

  • 必须以字母开头。

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

  • 不能以连字符结尾。

--replication-group-description

复制组的描述.

--num-cache-clusters

要使用此复制组、主集群和只读副本创建的节点的数目。

如果您启用多可用区 (--automatic-failover-enabled),则 --num-cache-clusters 值必须至少为 2。

--cache-node-type

复制组中的每个节点的节点类型。

ElastiCache 支持以下节点类型。一般而言,与其上一代类型对应项相比,最新一代类型以更低的成本提供了更多内存和计算能力。

  • 通用型:

    • 最新一代:

      T2 节点类型:cache.t2.microcache.t2.smallcache.t2.medium

      M3 节点类型:cache.m3.mediumcache.m3.largecache.m3.xlargecache.m3.2xlarge

      M4 节点类型:cache.m4.largecache.m4.xlargecache.m4.2xlargecache.m4.4xlargecache.m4.10xlarge

    • 上一代:(不推荐)

      T1 节点类型:cache.t1.micro

      M1 节点类型:cache.m1.smallcache.m1.mediumcache.m1.largecache.m1.xlarge

  • 计算优化:

    • 上一代:(不推荐)

      C1 节点类型:cache.c1.xlarge

  • 内存优化:

    • 最新一代:

      R3 节点类型:cache.r3.largecache.r3.xlargecache.r3.2xlargecache.r3.4xlargecache.r3.8xlarge

      R4 节点类型:cache.r4.largecache.r4.xlargecache.r4.2xlargecache.r4.4xlargecache.r4.8xlargecache.r4.16xlarge

    • 上一代:(不推荐)

      M2 节点类型:cache.m2.xlargecache.m2.2xlargecache.m2.4xlarge

其他节点类型信息

  • 所有 T2 实例均在 Amazon Virtual Private Cloud (Amazon VPC) 中创建。

  • T2 实例不支持 Redis 备份和还原。

  • T1 或 T2 实例不支持 Redis 仅附加文件 (AOF)。

  • T1 实例不支持具有自动故障转移功能的 Redis 多可用区。

  • 仅当使用 default.redis3.2.cluster.on 参数组或从中派生的参数组运行 Redis (已启用集群模式) 3.2.4 或更高版本时,T2 实例才支持具有自动故障转移功能的 Redis 多可用区。

  • Redis 版本 2.8.22 及更高版本不支持 Redis 配置变量 appendonlyappendfsync

--cache-parameter-group

指定与您的引擎版本对应的参数组。如果您在运行 Redis 3.2.4 或更高版本,请指定 default.redis3.2 参数组或者从 default.redis3.2 派生参数组来创建 Redis (已禁用集群模式)复制组。有关更多信息,请参阅Redis 特定的参数

--engine

redis

--engine-version

要拥有最丰富的功能,请选择最新的引擎版本。

节点的名称将派生自复制组名称,方法是通过将 -00# 添加到复制组名称的后面。例如,通过使用复制组名称 myReplGroup,主集群的名称将为 myReplGroup-001 以及只读副本的名称将为 myReplGroup-002myReplGroup-006

如果要在复制组上启用传输中加密或静态加密,请添加 --trasit-encryption-enabled 和/或 --at-rest-encryption-enabled 参数并满足以下条件。

  • 您的复制组必须运行 Redis 版本 3.2.6 或 4.0.10.

  • 复制组必须在 Amazon VPC 中创建。

  • 还必须包含参数 --cache-subnet-group

  • 还必须提供 --auth-token 参数以及客户为对此集群执行操作所需的 AUTH 令牌指定的字符串值 (密码)。

以下操作使用三个节点(一个主节点和两个副本节点)创建 Redis (已禁用集群模式)复制组 sample-repl-group

对于 Linux, OS X, or Unix:

aws elasticache create-replication-group \ --replication-group-id sample-repl-group \ --replication-group-description "Demo cluster with replicas" \ --num-cache-clusters 3 \ --cache-node-type cache.m4.large \ --cache-parameter-group default.redis3.2 \ --engine redis \ --engine-version 3.2.4

对于 Windows:

aws elasticache create-replication-group ^ --replication-group-id sample-repl-group ^ --replication-group-description "Demo cluster with replicas" ^ --num-cache-clusters 3 ^ --cache-node-type cache.m4.large ^ --cache-parameter-group default.redis3.2 ^ --engine redis ^ --engine-version 3.2.4

此命令的输出如下所示。

{ "ReplicationGroup": { "Status": "creating", "Description": "Demo cluster with replicas", "ClusterEnabled": false, "ReplicationGroupId": "sample-repl-group", "SnapshotRetentionLimit": 0, "AutomaticFailover": "disabled", "SnapshotWindow": "01:30-02:30", "MemberClusters": [ "sample-repl-group-001", "sample-repl-group-002", "sample-repl-group-003" ], "CacheNodeType": "cache.m4.large", "PendingModifiedValues": {} } }

有关其他信息和可能要使用的参数,请参阅 AWS CLI 主题 create-replication-group

从头创建 Redis (已禁用集群模式)复制组 (ElastiCache API)

以下过程使用 ElastiCache API 创建 Redis (已禁用集群模式)复制组。

在从头创建 Redis (已禁用集群模式)复制组时,您通过单次调用 ElastiCache API CreateReplicationGroup 操作来创建复制组及其所有节点。包括以下参数。

ReplicationGroupId

正在创建的复制组的名称。

Redis (已启用集群模式) 复制组命名约束

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

  • 必须以字母开头。

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

  • 不能以连字符结尾。

ReplicationGroupDescription

您对复制组的描述。

NumCacheClusters

要使用此复制组、主集群和只读副本创建的节点的总数。

如果您启用多可用区 (AutomaticFailoverEnabled=true),则 NumCacheClusters 值必须至少为 2。

CacheNodeType

复制组中的每个节点的节点类型。

ElastiCache 支持以下节点类型。一般而言,与其上一代类型对应项相比,最新一代类型以更低的成本提供了更多内存和计算能力。

  • 通用型:

    • 最新一代:

      T2 节点类型:cache.t2.microcache.t2.smallcache.t2.medium

      M3 节点类型:cache.m3.mediumcache.m3.largecache.m3.xlargecache.m3.2xlarge

      M4 节点类型:cache.m4.largecache.m4.xlargecache.m4.2xlargecache.m4.4xlargecache.m4.10xlarge

    • 上一代:(不推荐)

      T1 节点类型:cache.t1.micro

      M1 节点类型:cache.m1.smallcache.m1.mediumcache.m1.largecache.m1.xlarge

  • 计算优化:

    • 上一代:(不推荐)

      C1 节点类型:cache.c1.xlarge

  • 内存优化:

    • 最新一代:

      R3 节点类型:cache.r3.largecache.r3.xlargecache.r3.2xlargecache.r3.4xlargecache.r3.8xlarge

      R4 节点类型:cache.r4.largecache.r4.xlargecache.r4.2xlargecache.r4.4xlargecache.r4.8xlargecache.r4.16xlarge

    • 上一代:(不推荐)

      M2 节点类型:cache.m2.xlargecache.m2.2xlargecache.m2.4xlarge

其他节点类型信息

  • 所有 T2 实例均在 Amazon Virtual Private Cloud (Amazon VPC) 中创建。

  • T2 实例不支持 Redis 备份和还原。

  • T1 或 T2 实例不支持 Redis 仅附加文件 (AOF)。

  • T1 实例不支持具有自动故障转移功能的 Redis 多可用区。

  • 仅当使用 default.redis3.2.cluster.on 参数组或从中派生的参数组运行 Redis (已启用集群模式) 3.2.4 或更高版本时,T2 实例才支持具有自动故障转移功能的 Redis 多可用区。

  • Redis 版本 2.8.22 及更高版本不支持 Redis 配置变量 appendonlyappendfsync

CacheParameterGroup

指定与您的引擎版本对应的参数组。如果您在运行 Redis 3.2.4 或更高版本,请指定 default.redis3.2 参数组或者从 default.redis3.2 派生参数组来创建 Redis (已禁用集群模式)复制组。有关更多信息,请参阅Redis 特定的参数

引擎

redis

引擎版本

3.2.4

节点的名称将派生自复制组名称,方法是通过将 -00# 添加到复制组名称的后面。例如,通过使用复制组名称 myReplGroup,主集群的名称将为 myReplGroup-001 以及只读副本的名称将为 myReplGroup-002myReplGroup-006

如果要在复制组上启用传输中加密或静态加密,请添加 TrasitEncryptionEnabled=true 和/或 AtRestEncryptionEnabled=true 参数并满足以下条件。

  • 您的复制组必须运行 Redis 版本 3.2.6 或 4.0.10.

  • 复制组必须在 Amazon VPC 中创建。

  • 还必须包含参数 CacheSubnetGroup

  • 还必须提供 AuthToken 参数以及客户为对此集群执行操作所需的 AUTH 令牌指定的字符串值 (密码)。

以下操作使用三个节点(一个主节点和两个副本节点)创建 Redis (已禁用集群模式)复制组 myReplGroup

https://elasticache.us-west-2.amazonaws.com/ ?Action=CreateReplicationGroup &CacheNodeType=cache.m4.large &CacheParameterGroup=default.redis3.2 &Engine=redis &EngineVersion=3.2.4 &NumCacheClusters=3 &ReplicationGroupDescription=test%20group &ReplicationGroupId=myReplGroup &Version=2015-02-02 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20150202T192317Z &X-Amz-Credential=<credential>

有关其他信息和可能要使用的参数,请参阅 ElastiCache API 主题 CreateReplicationGroup