从头创建 Redis(已禁用集群模式)复制组 - ElastiCache 适用于 Redis 的 Amazon
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

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

您可以使用 ElastiCache 控制台、Amazon CLI 或 ElastiCache API 从头创建 Redis(已禁用集群模式)复制组。Redis(已禁用集群模式)复制组始终有一个节点组、一个主集群和最多 5 个只读副本。Redis(已禁用集群模式)复制组不支持对数据分区。

注意

每个集群的节点/分片限制最高可提高到 500。若要请求提高限制,请参阅 Amazon Service Limits 并在请求中包含实例类型。

要从头开始创建 Redis(已禁用集群模式)复制组,请采用以下方法之一:

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

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

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

--replication-group-id

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

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

  • 必须包含 1 – 40 个字母数字字符或连字符。

  • 必须以字母开头。

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

  • 不能以连字符结束。

--replication-group-description

复制组的描述。

--num-cache-clusters

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

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

--cache-node-type

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

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

有关各节点类型性能详细信息,请参阅 Amazon EC2 实例类型

--data-tiering-enabled

如果您使用的是 r6gd 节点类型,请设置此参数。如果您不想使用数据分层功能,则设置 --no-data-tiering-enabled。有关更多信息,请参阅数据分层

--cache-parameter-group

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

--network-type

ipv4ipv6dual-stack。如果选择双堆栈,则必须将 --IpDiscovery 参数设置为 ipv4ipv6

--engine

redis

--engine-version

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

节点的名称会通过将 -00# 添加到复制组名称的后面,从复制组名称得出。例如,通过使用复制组名称 myReplGroup,主集群的名称将为 myReplGroup-001 以及只读副本的名称将为 myReplGroup-002myReplGroup-006

如果要在复制组上启用传输中加密或静态加密,请添加 --transit-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、macOS 或 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 \ --engine redis

对于 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 ^ --engine redis

此命令的输出如下所示。

{ "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", "DataTiering": "disabled", "PendingModifiedValues": {} } }

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

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

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

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

ReplicationGroupId

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

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

  • 必须包含 1 – 40 个字母数字字符或连字符。

  • 必须以字母开头。

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

  • 不能以连字符结束。

ReplicationGroupDescription

您对复制组的描述。

NumCacheClusters

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

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

CacheNodeType

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

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

有关各节点类型性能详细信息,请参阅 Amazon EC2 实例类型

--data-tiering-enabled

如果您使用的是 r6gd 节点类型,请设置此参数。如果您不想使用数据分层功能,则设置 --no-data-tiering-enabled。有关更多信息,请参阅数据分层

CacheParameterGroup

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

--network-type

ipv4ipvdual-stack。如果选择双堆栈,则必须将 --IpDiscovery 参数设置为 ipv4ipv6

引擎

redis

EngineVersion

6.0

节点的名称会通过将 -00# 添加到复制组名称的后面,从复制组名称得出。例如,通过使用复制组名称 myReplGroup,主集群的名称将为 myReplGroup-001 以及只读副本的名称将为 myReplGroup-002myReplGroup-006

如果要在复制组上启用传输中加密或静态加密,请添加 TransitEncryptionEnabled=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.redis6.x &Engine=redis &EngineVersion=6.0 &NumCacheClusters=3 &ReplicationGroupDescription=test%20group &ReplicationGroupId=myReplGroup &Version=2015-02-02 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20150202T192317Z &X-Amz-Credential=<credential>

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