RemoveInstances - 從一個伸縮組刪除一台或多台執行個體

更新時間:
Copy as MD

如果當前伸縮組狀態為啟用狀態,且伸縮組內不存在執行中的伸縮活動,您可以調用API RemoveInstances從一個伸縮組刪除一台或多台不再需要的執行個體。

介面說明

  • 調用本介面前請確保滿足以下條件:
    • 伸縮組處於啟用(Active)狀態。

    • 伸縮組中沒有正在執行的伸縮活動。

說明

當伸縮組沒有執行中的伸縮活動時,該介面可以繞過冷卻時間(DefaultCooldown)直接執行。

  • 如果一台 ECS 執行個體由Auto Scaling自動建立,或者您手動添加但已託管給伸縮組,從伸縮組刪除該 ECS 執行個體時,ECS 執行個體觸發了節省停機效果或者被釋放。

  • 如果一台 ECS 執行個體由您手動添加且未託管給伸縮組,從伸縮組刪除該 ECS 執行個體時,ECS 執行個體不會被停止或者釋放。

  • 如果當前伸縮組的執行個體數(TotalCapacity)減去該介面指定的執行個體數小於伸縮組內最小執行個體數(MinSize),則調用失敗。

調用該介面返回成功,只是表示Auto Scaling服務接受了該介面調用的請求,伸縮活動可以執行,但不代表伸縮活動能夠執行成功。您需要通過返回的 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.

訪問錯誤中心查看更多錯誤碼。

變更歷史

更多資訊,參考變更詳情