在中处理分片 ElastiCache - 亚马逊 ElastiCache

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

在中处理分片 ElastiCache

分片(API/CLI: 节点组)是一到六个 ElastiCache 的集合,其中包含 Valkey 或 Redis OSS 节点。一个 Valkey 或 RedisOSS(已禁用集群模式)集群的分片永远不会超过一个。使用分片,您可以将大型数据库分成更小、更快、更易于管理的部分,称为数据分片。这可以通过将操作分配到多个单独的部分来提高数据库效率。使用分片可以带来许多好处,包括提高性能、可扩展性和成本效益。

您可以创建具有更多分片和更少副本的集群,每个集群最多可包含 90 个节点。此集群配置的范围可以从 90 个分片和 0 个副本到 15 个分片和 5 个副本,这是允许的最大副本数。集群的数据分配到该集群的各个分片上。如果分片包含多个节点,则该分片实现了一个节点作为读取/写入主节点且其他节点为只读副本节点的复制。

如果引擎版本为 Valkey 7.2 或 Redis OSS 5.0.6 或更高,则每个集群的节点或分片限制可以增加到最多 500 个。例如,您可以选择配置一个 500 节点的集群,范围介于 83 个分片(一个主分片和 5 个副本分片)和 500 个分片(一个主分片,无副本分片)之间。确保可提供足够的 IP 地址来满足增长需求。常见的缺陷包括子网组中的子网CIDR范围太小,或者子网被其他集群共享并大量使用。有关更多信息,请参阅 创建子网组

对于低于 5.0.6 的版本,每个集群的限制为 250。

若要请求提高限制,请参阅 AWS Service Limits 并选择限制类型 Nodes per cluster per instance type(每个实例类型的每个集群的节点数)

使用 ElastiCache 控制台创建 Valkey 或 RedisOSS(已启用集群模式)集群时,需要指定集群中的分片数和分片中的节点数。有关更多信息,请参阅 创建 Valkey 或 RedisOSS(已启用集群模式)集群(控制台)。如果您使用 ElastiCache API或 AWS CLI 创建集群(在 API /中称为复制组CLI),则可以独立配置分片(API/CLI: 节点组)中的节点数。有关更多信息,请参阅下列内容:

  • API: CreateReplicationGroup

  • CLI: create-replication-group

分片中每个节点的计算、存储和内存规格均相同。 ElastiCache API允许您控制分片范围的属性,例如节点数量、安全设置和系统维护时段。

图片:Valkey 或 Redis OSS 分片配置。

Valkey 或 Redis OSS 分片配置

有关更多信息,请参阅Valkey 或 Redis 的离线重新分片OSS(已启用集群模式)Valkey 或 Redis 的在线重新分片OSS(已启用集群模式)

查找分区的 ID

您可以使用、 AWS CLI 或来查找分片 AWS Management Console的 ID。 ElastiCache API

使用 AWS Management Console

适用于 Valkey 或 RedisOSS(已禁用集群模式)

Valkey 或 RedisOSS(已禁用集群模式)复制组分片始终IDs为。0001

适用于 Valkey 或 RedisOSS(已启用集群模式)

以下过程使用查找 Valkey 或 RedisOSS(已启用集群模式)的复制组的分片 ID。 AWS Management Console

在 Valkey 或 RedisOSS(已启用集群模式)复制组中查找分片 ID
  1. 登录 AWS Management Console 并打开 ElastiCache 控制台,网址为 https://console.aws.amazon.com/elasticache/

  2. 在导航窗格上,选择 ValkeyRedis OSS,然后选择要为其查找分片的 Valkey 或 RedisOSS(已启用集群模式)复制组的名称。IDs

  3. Shard Name(分区名称)列中,分区 ID 是分区名称的最后四位数字。

使用 AWS CLI

要查找 Valkey 或 Redis(已禁用集群模式)或 Valkey 或 RedisOSS(已启用集群模式)复制组的分片OSS(节点组)ID,请使用describe-replication-groups带有以下可选参数的 AWS CLI 操作。

  • --replication-group-id – 用来将输出限制为指定复制组的详细信息的可选参数。如果忽略此参数,将返回最多 100 个复制组的详细信息。

此命令将返回 sample-repl-group 的详细信息。

对于 Linux、macOS 或 Unix:

aws elasticache describe-replication-groups \ --replication-group-id sample-repl-group

对于 Windows:

aws elasticache describe-replication-groups ^ --replication-group-id sample-repl-group

该命令的输出类似于此处所示。分片(节点组)的 ID 是 highlighted 在这里可以更轻松地找到它们。

{ "ReplicationGroups": [ { "Status": "available", "Description": "2 shards, 2 nodes (1 + 1 replica)", "NodeGroups": [ { "Status": "available", "Slots": "0-8191", "NodeGroupId": "0001", "NodeGroupMembers": [ { "PreferredAvailabilityZone": "us-west-2c", "CacheNodeId": "0001", "CacheClusterId": "sample-repl-group-0001-001" }, { "PreferredAvailabilityZone": "us-west-2a", "CacheNodeId": "0001", "CacheClusterId": "sample-repl-group-0001-002" } ] }, { "Status": "available", "Slots": "8192-16383", "NodeGroupId": "0002", "NodeGroupMembers": [ { "PreferredAvailabilityZone": "us-west-2b", "CacheNodeId": "0001", "CacheClusterId": "sample-repl-group-0002-001" }, { "PreferredAvailabilityZone": "us-west-2a", "CacheNodeId": "0001", "CacheClusterId": "sample-repl-group-0002-002" } ] } ], "ConfigurationEndpoint": { "Port": 6379, "Address": "sample-repl-group.9dcv5r.clustercfg.usw2.cache.amazonaws.com" }, "ClusterEnabled": true, "ReplicationGroupId": "sample-repl-group", "SnapshotRetentionLimit": 1, "AutomaticFailover": "enabled", "SnapshotWindow": "13:00-14:00", "MemberClusters": [ "sample-repl-group-0001-001", "sample-repl-group-0001-002", "sample-repl-group-0002-001", "sample-repl-group-0002-002" ], "CacheNodeType": "cache.m3.medium", "DataTiering": "disabled", "PendingModifiedValues": {} } ] }

要查找 Valkey 或 Redis(已禁用集群模式)或 Valkey 或 RedisOSS(已启用集群模式)复制组的分片OSS(节点组)ID,请使用describe-replication-groups带有以下可选参数的 AWS CLI 操作。

  • ReplicationGroupId – 用来将输出限制为指定复制组的详细信息的可选参数。如果省略此参数,则详细信息最多为 xxx 将返回复制组。

此命令将返回 sample-repl-group 的详细信息。

对于 Linux、macOS 或 Unix:

https://elasticache.us-west-2.amazonaws.com/ ?Action=DescribeReplicationGroup &ReplicationGroupId=sample-repl-group &Version=2015-02-02 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20150202T192317Z &X-Amz-Credential=<credential>