本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在中处理分片 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(已启用集群模式)。
查找分区的 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
-
登录 AWS Management Console 并打开 ElastiCache 控制台,网址为 https://console.aws.amazon.com/elasticache/
。 -
在导航窗格上,选择 Valkey 或 Redis OSS,然后选择要为其查找分片的 Valkey 或 RedisOSS(已启用集群模式)复制组的名称。IDs
-
在 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>