使用分区 - Amazon MemoryDB for Redis
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

使用分区

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

当您使用Amazon Web Services Management Console,您可以指定集群中的分片数和分片中的节点数。有关更多信息,请参阅创建内存数据库集群

分片中每个节点的计算、存储和内存规格均相同。通过 MemoryDB API 可以控制集群范围的属性,如节点数、安全设置和系统维护时段。

有关更多信息,请参阅 MemoryDB 的离线重新分片和分片重新平衡MemoryDB 的在线重新分片和分片重新平衡

寻找碎片的名字

您可以使用Amazon Web Services Management Console,Amazon CLI或者 MemoryDB API。

以下过程使用Amazon Web Services Management Console找到 MemoryDB 集群的分片名称。

  1. 登录到Amazon Web Services Management Console然后在以下位置打开 MemoryDB and Redis 控制台https://console.aws.amazon.com/memorydb/.

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

  3. 在下选择集群名称你想找到谁的碎片名字。

  4. 分片和节点选项卡中,查看下面的分片列表名称. 您还可以展开每个节点以查看其节点的详细信息。

要查找 MemoryDB 集群的分片(分片)名称,请使用Amazon CLI手术describe-clusters使用以下可选参数。

  • --cluster-name— 用来将输出限制为指定集群的详细信息的可选参数。如果忽略此参数,将返回最多 100 个集群的详细信息。

  • --show-shard-details— 返回分片的详细信息,包括它们的名字。

此命令将返回 my-cluster 的详细信息。

对于 Linux、macOS 或 Unix:

aws memorydb describe-clusters \ --cluster-name my-cluster --show-shard-details

对于 Windows:

aws memorydb describe-clusters ^ --cluster-name my-cluster --show-shard-details

其中返回以下 JSON 响应:

添加换行符以便于阅读。

{ "Clusters": [ { "Name": "my-cluster", "Status": "available", "NumberOfShards": 1, "Shards": [ { "Name": "0001", "Status": "available", "Slots": "0-16383", "Nodes": [ { "Name": "my-cluster-0001-001", "Status": "available", "AvailabilityZone": "us-east-1a", "CreateTime": "2021-08-21T20:22:12.405000-07:00", "Endpoint": { "Address": "clustercfg.my-cluster.xxxxx.memorydb.us-east-1.amazonaws.com", "Port": 6379 } }, { "Name": "my-cluster-0001-002", "Status": "available", "AvailabilityZone": "us-east-1b", "CreateTime": "2021-08-21T20:22:12.405000-07:00", "Endpoint": { "Address": "clustercfg.my-cluster.xxxxx.memorydb.us-east-1.amazonaws.com", "Port": 6379 } } ], "NumberOfNodes": 2 } ], "ClusterEndpoint": { "Address": "clustercfg.my-cluster.xxxxx.memorydb.us-east-1.amazonaws.com", "Port": 6379 }, "NodeType": "db.r6g.large", "EngineVersion": "6.2", "EnginePatchVersion": "6.2.4", "ParameterGroupName": "default.memorydb-redis6", "ParameterGroupStatus": "in-sync", "SubnetGroupName": "my-sg", "TLSEnabled": true, "ARN": "arn:aws:memorydb:us-east-1:xxxxxexamplearn:cluster/my-cluster", "SnapshotRetentionLimit": 0, "MaintenanceWindow": "wed:03:00-wed:04:00", "SnapshotWindow": "04:30-05:30", "ACLName": "my-acl", "AutoMinorVersionUpgrade": true } ] }

要查找 MemoryDB 集群的分片 ID,请使用 API 操作DescribeClusters使用以下可选参数。

  • ClusterName— 用来将输出限制为指定集群的详细信息的可选参数。如果忽略此参数,将返回最多 100 个集群的详细信息。

  • ShowShardDetails— 返回分片的详细信息,包括它们的名字。

此命令将返回 my-cluster 的详细信息。

对于 Linux、macOS 或 Unix:

https://memory-db.us-east-1.amazonaws.com/ ?Action=DescribeClusters &ClusterName=sample-cluster &ShowShardDetails=true &Version=2021-01-01 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20210802T192317Z &X-Amz-Credential=<credential>