本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在线缩减
缩减 Redis 缓存集群(控制台)
以下过程介绍如何使用 ElastiCache 管理控制台缩减 Redis 集群。在此过程中,Redis 集群将继续处理请求,且停机时间降至最短。
缩减 Redis 集群(控制台)
-
登录 Amazon Web Services Management Console 并打开 ElastiCache 控制台 (https://console.aws.amazon.com/elasticache/
)。 -
从导航窗格中,选择 Redis clusters(Redis 集群)。
-
从集群列表中,选择首选集群。
-
选择 Modify(修改)。
-
在 Modify Cluster 向导中:
-
从 Node type 列表中选择您希望扩展到的节点类型。要缩减,请选择小于现有节点的节点类型。请注意,并不是可缩减到所有节点类型。
-
-
如果您要立即执行缩减过程,请选中立即应用框。如果立即应用框处于未选中状态,则在此集群的下一维护时段内执行缩减过程。
-
选择 Modify(修改)。
如果您在上一步选择了 Apply immediately,则集群的状态将变为 modifying。当状态变为 available 时,即表示修改完成,您可以开始使用新集群。
缩减 Redis 缓存集群 (Amazon CLI)
以下过程介绍如何使用 Amazon CLI 缩减 Redis 缓存集群。在此过程中,Redis 集群将继续处理请求,且停机时间降至最短。
缩减 Redis 缓存集群 (Amazon CLI)
-
通过运行带以下参数的 Amazon CLI
list-allowed-node-type-modifications
命令,确定您可缩减为的节点类型。对于 Linux、macOS 或 Unix:
aws elasticache list-allowed-node-type-modifications \ --replication-group-id
my-replication-group-id
对于 Windows:
aws elasticache list-allowed-node-type-modifications ^ --replication-group-id
my-replication-group-id
以上命令的输出类似于此处所示 (JSON 格式)。
{ "ScaleUpModifications": [ "cache.m3.2xlarge", "cache.m3.large", "cache.m3.xlarge", "cache.m4.10xlarge", "cache.m4.2xlarge", "cache.m4.4xlarge", "cache.m4.large", "cache.m4.xlarge", "cache.r3.2xlarge", "cache.r3.4xlarge", "cache.r3.8xlarge", "cache.r3.large", "cache.r3.xlarge" ] "ScaleDownModifications": [ "cache.t2.micro", "cache.t2.small ", "cache.t2.medium ", "cache.t1.small" ] }
有关更多信息,请参阅 Amazon CLI 参考中的 list-allowed-node-type-modifications。
-
使用 Amazon CLI
modify-replication-group
命令和以下参数修改复制组以缩减为较小的新节点类型。--replication-group-id
– 要缩减到的复制组的名称。--cache-node-type
– 要扩展缓存集群的新节点类型。此值必须是步骤 1 中由list-allowed-node-type-modifications
命令返回的节点类型之一。--cache-parameter-group-name
– [可选] 如果您使用reserved-memory
管理集群的预留内存,则使用此参数。指定为您的新节点类型预留正确内存量的自定义缓存参数组。如果您在使用reserved-memory-percent
,则可以忽略此参数。--apply-immediately
– 使纵向扩展过程立即得到应用。要将收缩流程推迟到此集群的下一维护时段,请使用--no-apply-immediately
参数。
对于 Linux、macOS 或 Unix:
aws elasticache modify-replication-group \ --replication-group-id
my-redis-cluster
\ --cache-node-typecache.t2.micro
\ --apply-immediately对于 Windows:
aws elasticache modify-replication-group ^ --replication-group-id
my-redis-cluster
^ --cache-node-typecache.t2.micro
^ --apply-immediately以上命令的输出类似于此处所示 (JSON 格式)。
{ "ReplicationGroup": { "Status": "modifying", "Description": "my-redis-cluster", "NodeGroups": [ { "Status": "modifying", "Slots": "0-16383", "NodeGroupId": "0001", "NodeGroupMembers": [ { "PreferredAvailabilityZone": "us-east-1f", "CacheNodeId": "0001", "CacheClusterId": "my-redis-cluster-0001-001" }, { "PreferredAvailabilityZone": "us-east-1d", "CacheNodeId": "0001", "CacheClusterId": "my-redis-cluster-0001-002" } ] } ], "ConfigurationEndpoint": { "Port": 6379, "Address": "my-redis-cluster.r7gdfi.clustercfg.use1.cache.amazonaws.com" }, "ClusterEnabled": true, "ReplicationGroupId": "my-redis-cluster", "SnapshotRetentionLimit": 1, "AutomaticFailover": "enabled", "SnapshotWindow": "07:30-08:30", "MemberClusters": [ "my-redis-cluster-0001-001", "my-redis-cluster-0001-002" ], "CacheNodeType": "cache.t2.micro", "DataTiering": "disabled" "PendingModifiedValues": {} } }
有关更多信息,请参阅 Amazon CLI 参考中的 modify-replication-group。
-
如果您使用了
--apply-immediately
,请使用带以下参数的 Amazon CLIdescribe-cache-clusters
命令检查缓存集群的状态。当状态变为 available 时,您便可开始使用较小的新缓存集群节点。
缩减 Redis 缓存集群 (ElastiCache API)
以下过程使用 ElastiCache API 将复制组从其当前节点类型缩减为较小的新节点类型。在此过程中,Redis 集群将继续处理请求,且停机时间降至最短。
缩减为较小的节点类型所需的时间因节点类型和当前缓存集群中的数据量而异。
缩减 (ElastiCache API)
-
使用带以下参数的 ElastiCache API
ListAllowedNodeTypeModifications
操作确定您可缩减为的节点类型。ReplicationGroupId
– 复制组的名称。使用此参数可描述特定复制组而非所有复制组。
https://elasticache.us-west-2.amazonaws.com/ ?Action=ListAllowedNodeTypeModifications &ReplicationGroupId=MyReplGroup &Version=2015-02-02 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20150202T192317Z &X-Amz-Credential=<credential>
有关更多信息,请参阅 Amazon ElastiCache API 参考中的 ListAllowedNodeTypeModifications。
-
使用带以下参数的
ModifyReplicationGroup
ElastiCache API 操作将当前复制组缩减为新的节点类型。ReplicationGroupId
– 复制组的名称。CacheNodeType
– 此复制组中缓存集群的较小新节点类型。此值必须是步骤 1 中由ListAllowedNodeTypeModifications
操作返回的实例类型之一。CacheParameterGroupName
– [可选] 如果您使用reserved-memory
管理集群的预留内存,则使用此参数。指定为您的新节点类型预留正确内存量的自定义缓存参数组。如果您在使用reserved-memory-percent
,则可以忽略此参数。ApplyImmediately
– 设置为true
可促使立即应用缩减流程。要将缩减流程推迟到下一维护时段,请使用ApplyImmediately
=false
。
https://elasticache.us-west-2.amazonaws.com/ ?Action=ModifyReplicationGroup &ApplyImmediately=true &CacheNodeType=cache.t2.micro &CacheParameterGroupName=redis32-m3-2xl &ReplicationGroupId=myReplGroup &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20141201T220302Z &Version=2014-12-01 &X-Amz-Algorithm=&AWS;4-HMAC-SHA256 &X-Amz-Date=20141201T220302Z &X-Amz-SignedHeaders=Host &X-Amz-Expires=20141201T220302Z &X-Amz-Credential=<credential> &X-Amz-Signature=<signature>
有关更多信息,请参阅 Amazon ElastiCache API 参考中的 ModifyReplicationGroup。