RemoveInstances - 从一个伸缩组删除一台或多台实例

如果当前伸缩组状态为启用状态,且伸缩组内不存在执行中的伸缩活动,您可以调用API RemoveInstances从一个伸缩组删除一台或多台不再需要的实例。

接口说明

  • 调用本接口前请确保满足以下条件:
    • 伸缩组处于启用(Active)状态。
    • 伸缩组中没有正在执行的伸缩活动。
说明 当伸缩组没有执行中的伸缩活动时,该接口可以绕过冷却时间(DefaultCooldown)直接执行。
  • 如果一台 ECS 实例由弹性伸缩自动创建,或者您手动添加但已托管给伸缩组,从伸缩组删除该 ECS 实例时,ECS 实例触发了节省停机效果或者被释放。
  • 如果一台 ECS 实例由您手动添加且未托管给伸缩组,从伸缩组删除该 ECS 实例时,ECS 实例不会被停止或者释放。
  • 如果当前伸缩组的实例数(TotalCapacity)减去该接口指定的实例数小于伸缩组内最小实例数(MinSize),则调用失败。

调用该接口返回成功,只是表示弹性伸缩服务接受了该接口调用的请求,伸缩活动可以执行,但不代表伸缩活动能够执行成功。您需要通过返回的 ScalingActivityId 查看该伸缩活动的执行状态。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
ess:DetachInstancesupdate
*ScalingGroup
acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}

请求参数

名称类型必填描述示例值
ScalingGroupIdstring

伸缩组的 ID。

asg-bp18p2yfxow2dloq****
RemovePolicystring

指定被删除 ECS 实例的动作。取值范围:

  • recycle:ECS 实例触发了节省停机效果。

    说明 仅在ScalingPolicyrecycle时生效。
  • release:ECS 实例被释放。

CreateScalingGroup 的 ScalingPolicy 参数指定伸缩组的回收模式,但实例被删除时的具体动作,由 RemoveInstances 的 RemovePolicy 参数决定。例如:

  • ScalingPolicy 为 recycle,且 RemovePolicy 为 recycle,ECS 实例触发了节省停机效果。
  • ScalingPolicy 为 recycle,且 RemovePolicy 为 release,ECS 实例被释放。
  • ScalingPolicy 为 release,且 RemovePolicy 为 recycle,ECS 实例被释放。
  • ScalingPolicy 为 release,且 RemovePolicy 为 release,ECS 实例被释放。

默认值:release。

release
DecreaseDesiredCapacityboolean

是否修改期望实例数。取值范围:

  • true:从伸缩组删除 ECS 实例后,期望实例数也减少相应台数。
  • false:从伸缩组删除 ECS 实例后,期望实例数不会变化。

默认值:true。

true
IgnoreInvalidInstanceboolean

从伸缩组删除一批实例时,是否忽略其中无效的实例。取值范围:

  • true:从伸缩组中删除一批实例时,会忽略其中无效的实例。如果存在无效的实例,并且有效的实例被成功删除时,伸缩活动执行状态也会显示为警告状态,可以从伸缩活动详情查看无效的实例。
  • false:从伸缩组中删除一批实例时,不会忽略无效的实例。如果一批实例中存在无效的实例,请求会报错。

默认值:false。

false
InstanceIdsarray

待删除 ECS 实例的 ID。

string

待删除 ECS 实例的 ID。

i-28wt4****
RegionIdstring

伸缩组所属的地域 ID。

cn-qingdao
ClientTokenstring

保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。只支持 ASCII 字符,且不能超过 64 个字符。更多信息,请参见如何保证幂等性

123e4567-e89b-12d3-a456-42665544****
StopInstanceTimeoutinteger

缩容流程中等待 ECS 实例停机成功的超时时间,单位为秒。 取值范围:30~240。

说明
  • 该参数值默认从伸缩组继承,您也可以在调用 RemoveInstances 时重新设置。
  • 该参数仅在 RemovePolicy = release 模式下的缩容流程里生效。
  • 如果设置了该参数,系统会最长等待 StopInstanceTimeout 时间将实例停机成功,超时后无论实例是否成功停机都会继续缩容。
  • 如果没有设置该参数,系统会长时间等待实例停机成功,只有实例停机成功后才继续缩容,停机失败时,缩容流程会回滚,缩容失败。
  • 60

    返回参数

    名称类型描述示例值
    object
    ScalingActivityIdstring

    伸缩活动的 ID。

    asa-bp175o6f6ego3r2j****
    RequestIdstring

    请求 ID。

    473469C7-AA6F-4DC5-B3DB-A3DC0DE3****

    示例

    正常返回示例

    JSON格式

    {
      "ScalingActivityId": "asa-bp175o6f6ego3r2j****",
      "RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****"
    }

    错误码

    HTTP status code错误码错误信息
    500InternalErrorThe request processing has failed due to some unknown error, exception or failure.

    访问错误中心查看更多错误码。

    变更历史

    变更时间变更内容概要操作
    2024-10-16OpenAPI 错误码发生变更、OpenAPI 入参发生变更查看变更详情
    2024-05-21OpenAPI 错误码发生变更、OpenAPI 入参发生变更查看变更详情