調用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. |
指定的伸縮組不存在。 |