本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
您可以使用、或 MemoryDB API 动态增加或减少 MemoryDB 集群中只读副本的 AWS CLI数量。 AWS Management Console所有分片的副本数量必须相同。
增加集群中的副本数量
您可以将一个 MemoryDB 集群中每个分片的副本数量最多增加到 5 个。你可以使用 AWS Management Console、或 MemoryDB AWS CLI API 来做到这一点。
使用 AWS Management Console
要增加 MemoryDB 集群(控制台)中的副本数量,请参阅 从集群中添加/移除节点。
使用 AWS CLI
要增加 MemoryDB 集群中的副本数量,请使用带有以下参数的 update-cluster
命令:
-
--cluster-name
– 必需。确定要在其中增加副本数量的集群。 -
--replica-configuration
– 必需。允许设置副本数量。若要增加副本数量,请将ReplicaCount
属性设置为您希望在此操作结束时在此分片中所具有的副本数量。
以下示例将集群 my-cluster
中的副本数量增加到 2 个。
对于 Linux、macOS 或 Unix:
aws memorydb update-cluster \ --cluster-name my-cluster \ --replica-configuration \ ReplicaCount=2
对于 Windows:
aws memorydb update-cluster ^ --cluster-name my-cluster ^ --replica-configuration ^ ReplicaCount=2
返回以下 JSON 响应:
{
"Cluster": {
"Name": "my-cluster",
"Status": "updating",
"NumberOfShards": 1,
"ClusterEndpoint": {
"Address": "clustercfg.my-cluster.xxxxx.memorydb.us-east-1.amazonaws.com"
,
"Port": 6379
},
"NodeType": "db.r6g.large",
"EngineVersion": "6.2",
"EnginePatchVersion": "6.2.6",
"ParameterGroupName": "default.memorydb-redis6",
"ParameterGroupStatus": "in-sync",
"SubnetGroupName": "my-sg",
"TLSEnabled": true,
"ARN": "arn:aws:memorydb:us-east-1:xxxxxxexamplearn:cluster/my-cluster"
,
"SnapshotRetentionLimit": 0,
"MaintenanceWindow": "wed:03:00-wed:04:00",
"SnapshotWindow": "04:30-05:30",
"DataTiering": "false",
"AutoMinorVersionUpgrade": true
}
}
若要在已更新集群的状态从更新变为可用后查看其详细信息,请使用以下命令:
对于 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.xxxxxx.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.xxxxxx.memorydb.us-east-1.amazonaws.com"
, "Port": 6379 } }, { "Name": "my-cluster-0001-003", "Status": "available", "AvailabilityZone": "us-east-1a", "CreateTime": "2021-08-22T12:59:31.844000-07:00", "Endpoint": { "Address":"clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com"
, "Port": 6379 } } ], "NumberOfNodes": 3 } ], "ClusterEndpoint": { "Address":"clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com"
, "Port": 6379 }, "NodeType": "db.r6g.large", "EngineVersion": "6.2", "EnginePatchVersion": "6.2.6", "ParameterGroupName": "default.memorydb-redis6", "ParameterGroupStatus": "in-sync", "SubnetGroupName": "my-sg", "TLSEnabled": true, "ARN":"arn:aws:memorydb:us-east-1:xxxxxxexamplearn:cluster/my-cluster"
, "SnapshotRetentionLimit": 0, "MaintenanceWindow": "wed:03:00-wed:04:00", "SnapshotWindow": "04:30-05:30", "ACLName": "my-acl", "DataTiering": "false", "AutoMinorVersionUpgrade": true } ] }
有关使用 CLI 增加副本数量的更多信息,请参阅AWS CLI 命令参考中的 update-cluster。
使用 MemoryDB API
要增加 MemoryDB 分片中的副本数量,请使用带有以下参数的 UpdateCluster
操作:
-
ClusterName
– 必需。确定要在其中增加副本数量的集群。 -
ReplicaConfiguration
– 必需。允许设置副本数量。若要增加副本数量,请将ReplicaCount
属性设置为您希望在此操作结束时在此分片中所具有的副本数量。
以下示例将集群 sample-cluster
中的副本数量增加到 3 个。在完成此示例后,每个分片中将有 3 个副本。无论是带单个分片的 MemoryDB 集群还是带多个分片的 MemoryDB 集群,此数字都适用。
https://memory-db.us-east-1.amazonaws.com/ ?Action=UpdateCluster &ReplicaConfiguration.ReplicaCount=3 &ClusterName=sample-cluster &Version=2021-01-01 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20210802T192317Z &X-Amz-Credential=<credential>
有关使用 API 增加副本数量的更多信息,请参阅UpdateCluster。
减少集群中的副本数量
您可以减少 MemoryDB 集群中的副本数量。您可以将副本数量减少为 0,但如果主节点出现故障,则无法失效转移到副本。
您可以使用 AWS Management Console、 AWS CLI 或 MemoryDB API 来减少集群中的副本数量。
使用 AWS Management Console
要减少 MemoryDB 集群(控制台)中的副本数量,请参阅 从集群中添加/移除节点。
使用 AWS CLI
要减少 MemoryDB 集群中的副本数量,请使用带有以下参数的 update-cluster
命令:
-
--cluster-name
– 必需。确定要在其中减少副本数量的集群。 -
--replica-configuration
– 必需。ReplicaCount
– 设置此属性指定想要的副本节点数量。
以下示例使用 --replica-configuration
将集群 my-cluster
中的副本数量减少为指定值。
对于 Linux、macOS 或 Unix:
aws memorydb update-cluster \ --cluster-name my-cluster \ --replica-configuration \ ReplicaCount=1
对于 Windows:
aws memorydb update-cluster ^ --cluster-name my-cluster ^ --replica-configuration ^ ReplicaCount=1 ^
返回以下 JSON 响应:
{ "Cluster": { "Name": "my-cluster", "Status": "updating", "NumberOfShards": 1, "ClusterEndpoint": { "Address":
"clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com"
, "Port": 6379 }, "NodeType": "db.r6g.large", "EngineVersion": "6.2", "EnginePatchVersion": "6.2.6", "ParameterGroupName": "default.memorydb-redis6", "ParameterGroupStatus": "in-sync", "SubnetGroupName": "my-sg", "TLSEnabled": true, "ARN":"arn:aws:memorydb:us-east-1:xxxxxxexamplearn:cluster/my-cluster"
, "SnapshotRetentionLimit": 0, "MaintenanceWindow": "wed:03:00-wed:04:00", "SnapshotWindow": "04:30-05:30", "DataTiering": "false", "AutoMinorVersionUpgrade": true } }
若要在已更新集群的状态从更新变为可用后查看其详细信息,请使用以下命令:
对于 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.xxxxxx.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.xxxxxx.memorydb.us-east-1.amazonaws.com"
, "Port": 6379 } } ], "NumberOfNodes": 2 } ], "ClusterEndpoint": { "Address":"clustercfg.my-cluster.xxxxxx.memorydb.us-east-1.amazonaws.com"
, "Port": 6379 }, "NodeType": "db.r6g.large", "EngineVersion": "6.2", "EnginePatchVersion": "6.2.6", "ParameterGroupName": "default.memorydb-redis6", "ParameterGroupStatus": "in-sync", "SubnetGroupName": "my-sg", "TLSEnabled": true, "ARN":"arn:aws:memorydb:us-east-1:xxxxxxexamplearn:cluster/my-cluster"
, "SnapshotRetentionLimit": 0, "MaintenanceWindow": "wed:03:00-wed:04:00", "SnapshotWindow": "04:30-05:30", "ACLName": "my-acl", "DataTiering": "false", "AutoMinorVersionUpgrade": true } ] }
有关使用 CLI 减少副本数量的更多信息,请参阅AWS CLI 命令参考中的 update-cluster。
使用 MemoryDB API
要减少 MemoryDB 集群中的副本数量,请使用带有以下参数的 UpdateCluster
操作:
-
ClusterName
– 必需。确定要在其中减少副本数量的集群。 -
ReplicaConfiguration
– 必需。允许设置副本数量。ReplicaCount
– 设置此属性指定想要的副本节点数量。
以下示例使用 ReplicaCount
将集群 sample-cluster
中的副本数量减少为 1 个。在完成此示例后,每个分片中将有一个副本。无论是带单个分片的 MemoryDB 集群还是带多个分片的 MemoryDB 集群,此数字都适用。
https://memory-db.us-east-1.amazonaws.com/
?Action=UpdateCluster
&ReplicaConfiguration.ReplicaCount=1
&ClusterName=sample-cluster
&Version=2021-01-01
&SignatureVersion=4
&SignatureMethod=HmacSHA256
&Timestamp=20210802T192317Z
&X-Amz-Credential=<credential>
有关使用 API 减少副本数量的更多信息,请参阅UpdateCluster。