調用API SetInstancesProtection可以保護或停止保護伸縮組內的一台或者多台ECS執行個體。開啟ECS執行個體的保護功能後,伸縮組自動縮容時該執行個體不會被終止或釋放,僅可手動在控制台或通過調用API RemoveInstances刪除該執行個體。
介面說明
ECS執行個體開啟保護狀態後:
- 執行個體保持此狀態,直至您停止保護狀態。
- 即使伸縮組內執行個體數量的變化和監控任務觸發自動縮容的伸縮活動,也不會移除處於保護狀態的ECS執行個體。您需要自行移出ECS執行個體後才能釋放ECS執行個體。具體操作,請參見移出ECS執行個體。
- ECS執行個體被停止或者重啟時,不會更新ECS執行個體的健全狀態檢查狀態。
調試
您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。
請求參數
|
名稱 |
類型 |
是否必選 |
樣本值 |
描述 |
| Action | String | 是 | SetInstancesProtection | 系統規定參數。取值:SetInstancesProtection。 |
| ScalingGroupId | String | 是 | asg-bp18p2yfxow2dloq**** | 伸縮組的ID。 |
| ProtectedFromScaleIn | Boolean | 是 | true | 伸縮組自動縮容時是否保護ECS執行個體,使該執行個體不被終止或移出伸縮組。取值範圍:
|
| InstanceId.N | String | 否 | i-28wt4**** | ECS執行個體的ID。N的取值範圍:1~20。 |
返回資料
名稱 |
類型 |
樣本值 |
描述 |
| RequestId | String | 473469C7-AA6F-4DC5-B3DB-A3DC0DE3**** | 請求ID。 |
樣本
請求樣本
http(s)://ess.aliyuncs.com/?Action=SetInstancesProtection
&ScalingGroupId=asg-bp18p2yfxow2dloq****
&ProtectedFromScaleIn=true
&InstanceId=["i-28wt4****"]
&公用請求參數
正常返回樣本
XML格式
HTTP/1.1 200 OK
Content-Type:application/xml
<SetInstancesProtectionResponse>
<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>
</SetInstancesProtectionResponse>
JSON格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****"
}
錯誤碼
訪問錯誤中心查看更多錯誤碼。
HttpCode |
錯誤碼 |
錯誤資訊 |
描述 |
400 |
IncorrectScalingGroupStatus |
The current status of the specified scaling group does not support this action. |
您需要啟用伸縮組。 |
403 |
Forbidden.Unauthorized |
A required authorization for the specified action is not supplied. |
您還未被授權使用SetInstancesProtection介面。 |
404 |
InvalidInstanceId.NotFound |
Instance “XXX” does not exist. |
指定的ECS執行個體不存在。 |
404 |
InvalidScalingGroupId.NotFound |
The specified scaling group does not exist. |
指定的伸縮組不存在。 |