全部产品
Search
文档中心

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

更新时间:Aug 27, 2026

如果当前伸缩组状态为启用状态,且伸缩组内不存在执行中的伸缩活动,您可以调用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:DetachInstances

update

*ScalingGroup

acs:ess:{#regionId}:{#accountId}:scalinggroup/{#ScalingGroupId}

请求参数

名称

类型

必填

描述

示例值

ScalingGroupId

string

伸缩组的 ID。

asg-bp18p2yfxow2dloq****

RemovePolicy

string

指定被删除 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

DecreaseDesiredCapacity

boolean

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

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

  • false:从伸缩组删除 ECS 实例后,期望实例数不会变化。

默认值:true。

true

IgnoreInvalidInstance

boolean

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

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

  • false:从伸缩组中删除一批实例时,不会忽略无效的实例。如果一批实例中存在无效的实例,请求会报错。

默认值:false。

false

InstanceIds

array

待删除 ECS 实例的 ID。

string

待删除 ECS 实例的 ID。

i-28wt4****

RegionId

string

伸缩组所属的地域 ID。

cn-qingdao

ClientToken

string

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

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

StopInstanceTimeout

integer

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

说明
  • 该参数值默认从伸缩组继承,您也可以在调用 RemoveInstances 时重新设置。

  • 该参数仅在 RemovePolicy = release 模式下的缩容流程里生效。

  • 如果设置了该参数,系统会最长等待 StopInstanceTimeout 时间将实例停机成功,超时后无论实例是否成功停机都会继续缩容。

  • 如果没有设置该参数,系统会长时间等待实例停机成功,只有实例停机成功后才继续缩容,停机失败时,缩容流程会回滚,缩容失败。

60

LifecycleHookContext

object

生命周期挂钩上下文信息。

DisableLifecycleHook

boolean

伸缩活动禁用所有生命周期挂钩。取值范围:

  • true:禁用。

  • false:不禁用。

false

IgnoredLifecycleHookIds

array

伸缩活动禁用的生命周期挂钩 ID 列表。

string

伸缩活动禁用的生命周期挂钩 ID 列表。

ash-bp14zolna43z266bq***

LifecycleHookResult

string

返回参数

名称

类型

描述

示例值

object

ScalingActivityId

string

伸缩活动的 ID。

asa-bp175o6f6ego3r2j****

RequestId

string

请求 ID。

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

IgnoredInstances

array<object>

object

InstanceId

string

Code

string

Message

string

示例

正常返回示例

JSON格式

{
  "ScalingActivityId": "asa-bp175o6f6ego3r2j****",
  "RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****",
  "IgnoredInstances": [
    {
      "InstanceId": "",
      "Code": "",
      "Message": ""
    }
  ]
}

错误码

HTTP status code

错误码

错误信息

描述

500 InternalError The request processing has failed due to some unknown error, exception or failure.

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

变更历史

更多信息,参考变更详情