从集群中移除节点 - Amazon ElastiCache
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

从集群中移除节点

每次更改您的 Memcached 集群中的节点数时,您必须至少重新映射部分键空间,以便它映射到正确的节点。有关对 Memcached 集群进行负载均衡的更多详细信息,请参阅配置 ElastiCache 客户端以实现高效负载均衡

您可以使用 Amazon Web Services Management Console、Amazon CLI 或 ElastiCache API 从集群中删除节点。

从集群中移除节点(控制台)
  1. 登录 Amazon Web Services Management Console 并打开 ElastiCache 控制台 (https://console.aws.amazon.com/elasticache/)。

  2. 从右上角的列表中,选择要从中删除节点的集群所在的 Amazon 区域。

  3. 在导航窗格中,选择在您要删除节点的集群上运行的引擎。

    此时会显示运行所选引擎的集群的列表。

  4. 从集群列表中,选择要从中删除节点的集群的名称。

    此时会显示集群节点的列表。

  5. 选择要删除的节点的节点 ID 左侧的复选框。使用 ElastiCache 控制台时,一次只能删除一个节点,因此选择多个节点表明您无法使用 Delete node(删除节点)按钮。

    此时将显示删除节点页面。

  6. 要删除节点,请完成删除节点页面,然后选择删除节点。要保留节点,请选择取消

新添加和删除请求对待处理请求的影响
场景 待处理的操作 新建请求 结果

方案 1

删除

删除

新的删除请求(待处理或立即)将替换待处理的删除请求。

例如,如果节点 0001、0003 和 0007 处于等待删除状态,同时发出了删除节点 0002 和 0004 的新请求,则只删除节点 0002 和 0004。节点 0001、0003 和 0007 不会被删除。

方案 2

删除

创建

新的创建请求(待处理或立即)将替换待处理的删除请求。

例如,如果节点 0001、0003 和 0007 处于等待删除状态,同时发出了创建节点的新请求,则会创建一个新节点,节点 0001、0003 和 0007 不会被删除。

方案三

创建

删除

新的删除请求(待处理或立即)将替换待处理的创建请求。

例如,如果存在创建两个节点的待处理请求,同时发出了删除节点 0003 的新请求,则不会创建新节点,节点 0003 会被删除。

方案 4

创建

创建

新创建请求将添加到待处理创建请求中。

例如,如果存在创建两个节点的待处理请求,同时发出了创建三个节点的新请求,则新请求将添加到待处理请求中,并将创建五个节点。

重要

如果新创建请求设置为 Apply Immediately - Yes(立即应用 – 是),则立即执行所有创建请求。如果新创建请求设置为 Apply Immediately - No(立即应用 – 否),则所有创建请求为待处理。

要确定哪些操作处于待处理状态,请选择 Description(描述)选项卡,然后查看显示了多少待处理的创建或删除操作。您不能同时拥有待处理的创建操作和待处理的删除操作。

  1. 确定要删除的节点的 ID。有关更多信息,请参阅查看集群的详细信息

  2. modify-cache-cluster CLI 操作与要删除的节点列表一起使用,如下例所示。

    要使用命令行界面从集群中移除节点,请结合以下参数使用命令 modify-cache-cluster

    • --cache-cluster-id 要从其中删除节点的缓存集群的 ID。

    • --num-cache-nodes --num-cache-nodes 参数指定应用修改后此集群中应有的节点的数量。

    • --cache-node-ids-to-remove 要从此集群中删除的节点 ID 的列表。

    • --apply-immediately--no-apply-immediately 指定是立即移除这些节点还是在下一维护时段移除这些节点。

    • --region 指定要从其中删除节点的集群的 Amazon 区域。

    以下示例从集群 my-cluster 中立即删除节点 0001。

    对于 Linux、macOS 或 Unix:

    aws elasticache modify-cache-cluster \ --cache-cluster-id my-cluster \ --num-cache-nodes 2 \ --cache-node-ids-to-remove 0001 \ --region us-east-2 \ --apply-immediately

    对于 Windows:

    aws elasticache modify-cache-cluster ^ --cache-cluster-id my-cluster ^ --num-cache-nodes 2 ^ --cache-node-ids-to-remove 0001 ^ --region us-east-2 ^ --apply-immediately

    此操作将生成类似于以下内容的输出(JSON 格式):

    { "CacheCluster": { "Engine": "memcached", "CacheParameterGroup": { "CacheNodeIdsToReboot": [], "CacheParameterGroupName": "default.memcached1.4", "ParameterApplyStatus": "in-sync" }, "CacheClusterId": "my-cluster", "PreferredAvailabilityZone": "us-east-2b", "ConfigurationEndpoint": { "Port": 11211, "Address": "rlh-mem000.7ef-example.cfg.usw2.cache.amazonaws.com" }, "CacheSecurityGroups": [], "CacheClusterCreateTime": "2016-09-21T16:28:28.973Z", 9dcv5r "AutoMinorVersionUpgrade": true, "CacheClusterStatus": "modifying", "NumCacheNodes": 3, "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:", "SecurityGroups": [ { "Status": "active", "SecurityGroupId": "sg-dbe93fa2" } ], "CacheSubnetGroupName": "default", "EngineVersion": "1.4.24", "PendingModifiedValues": { "NumCacheNodes": 2, "CacheNodeIdsToRemove": [ "0001" ] }, "PreferredMaintenanceWindow": "sat:09:00-sat:10:00", "CacheNodeType": "cache.m3.medium", } }

有关更多信息,请参阅 Amazon CLI 主题 describe-cache-clustermodify-cache-cluster

要使用 ElastiCache API 删除节点,请使用缓存集群 ID 和要删除节点的列表调用 ModifyCacheCluster API 操作,如下所示:

  • CacheClusterId 要从其中删除节点的缓存集群的 ID。

  • NumCacheNodes NumCacheNodes 参数指定应用修改后此集群中应有的节点的数量。

  • CacheNodeIdsToRemove.member.n 要从集群中移除的节点 ID 的列表。

    • CacheNodeIdsToRemove.member.1=0004

    • CacheNodeIdsToRemove.member.1=0005

  • ApplyImmediately 指定是立即移除这些节点还是在下一维护时段移除这些节点。

  • Region 指定要从其中删除节点的集群的 Amazon 区域。

以下示例从集群 my-cluster 中立即删除节点 0004 和 0005。

https://elasticache.us-west-2.amazonaws.com/ ?Action=ModifyCacheCluster &CacheClusterId=my-cluster &ApplyImmediately=true &CacheNodeIdsToRemove.member.1=0004 &CacheNodeIdsToRemove.member.2=0005 &NumCacheNodes=3 &Region us-east-2 &Version=2014-12-01 &SignatureVersion=4 &SignatureMethod=HmacSHA256 &Timestamp=20141201T220302Z &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>

有关更多信息,请参阅 ElastiCache API 主题 ModifyCacheCluster