如果當前伸縮組的生命週期掛鈎不能滿足業務需求,您無需做刪除操作,調用ModifyLifecycleHook,通過待修改生命週期掛鈎的ID或名稱,伸縮組的ID等參數,修改一個生命週期掛鈎的資訊,包括生命週期掛鈎適用的伸縮活動類型,生命週期掛鈎為伸縮組活動設定的等待時間,等待狀態結束後的下一步動作等資訊。
介面說明
您可以通過以下兩種方式指定待修改的生命週期掛鈎:
- 只指定生命週期掛鈎ID(
LifecycleHookId),此時將忽略伸縮組ID(ScalingGroupId)和生命週期掛鈎名稱(LifecycleHookName)參數。 - 同時指定伸縮組ID(
ScalingGroupId)與生命週期掛鈎名稱(LifecycleHookName),因為在一個伸縮組內同一個生命週期掛鈎名稱是唯一的。
調試
您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。
請求參數
|
名稱 |
類型 |
是否必選 |
樣本值 |
描述 |
| Action | String | 是 | ModifyLifecycleHook | 系統規定參數。取值:ModifyLifecycleHook。 |
| LifecycleHookId | String | 否 | ash-bp1fxuqyi98w0aib**** | 待修改生命週期掛鈎的ID,用於指定生命週期掛鈎。 |
| ScalingGroupId | String | 否 | asg-bp18p2yfxow2dloq**** | 伸縮組的ID,用於指定生命週期掛鈎。 |
| LifecycleHookName | String | 否 | test_SCAL**** | 待修改生命週期掛鈎的名稱,用於指定生命週期掛鈎。 |
| DefaultResult | String | 否 | CONTINUE | 等待狀態結束後的下一步動作。取值範圍:
當伸縮組發生彈性收縮活動(SCALE_IN)並觸發多個生命週期掛鈎時,如果一個生命週期掛鈎的 |
| HeartbeatTimeout | Integer | 否 | 600 | 生命週期掛鈎為伸縮組活動設定的等待時間,等待狀態逾時後會執行下一步動作。取值範圍:30~21600,單位:秒。 您可以調用RecordLifecycleActionHeartbeat延長ECS執行個體的等待時間,也可以調用CompleteLifecycleAction提前結束伸縮活動的等待狀態。 |
| LifecycleTransition | String | 否 | SCALE_IN | 生命週期掛鈎適用的伸縮活動類型,取值範圍:
|
| NotificationMetadata | String | 否 | Test | 伸縮活動的等待狀態的固定字串資訊。參數長度不能超過4096個字元。 Auto Scaling每次推送訊息到通知對象時,會同時發送您預先指定的 |
| NotificationArn | String | 否 | acs:mns:cn-beijing:161456884340****:queue/modifyLifecycleHo**** | 生命週期掛鈎通知物件識別碼。設定本參數時支援以下通知方式:
參數格式中的變數含義如下:
|
| RegionId | String | 否 | cn-beijing | 伸縮組所屬的地區ID。 |
| LifecycleHookStatus | String | 否 | Active | 修改當前生命週期掛鈎的狀態。取值範圍:
如果不設定該參數,則當前生命週期掛鈎狀態保持為原有狀態。 說明 生命週期掛鈎建立成功後,系統預設為啟動狀態。 |
返回資料
名稱 |
類型 |
樣本值 |
描述 |
| RequestId | String | 473469C7-AA6F-4DC5-B3DB-A3DC0DE3**** | 請求ID。 |
樣本
請求樣本
http(s)://ess.aliyuncs.com/?Action=ModifyLifecycleHook
&LifecycleHookId=ash-bp1fxuqyi98w0aib****
&ScalingGroupId=asg-bp18p2yfxow2dloq****
&LifecycleHookName=test_SCALE_IN
&DefaultResult=CONTINUE
&HeartbeatTimeout=600
&LifecycleTransition=SCALE_IN
&NotificationMetadata=Test
&NotificationArn=acs:mns:cn-beijing:161456884340****:queue/modifyLifecycleHo****
&RegionId=cn-beijing
&LifecycleHookStatus=Active
&公用請求參數
正常返回樣本
XML格式
HTTP/1.1 200 OK
Content-Type:application/xml
<ModifyLifecycleHookResponse>
<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>
</ModifyLifecycleHookResponse>
JSON格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****"
}
錯誤碼
訪問錯誤中心查看更多錯誤碼。
HttpCode |
錯誤碼 |
錯誤資訊 |
描述 |
400 |
InvalidParamter |
The specified value of parameter is not valid. |
參數值不合法。 |
400 |
InvalidLifecycleHookId.NotExist |
The specified lifecycleHookId not exist. |
指定的LifecycleHookId不存在。 |
400 |
InvalidLifecycleHookName.NotExist |
The specified lifecycleHookName you provided not exist. |
指定的LifecycleHookName不存在。 |
400 |
InvalidNotificationArn |
The specified parameter NotificationArn is invalid. |
指定的NotificationArn不存在。 |
400 |
UnsupportedNotificationType.CurrentRegion |
The NotificationType is not supported in the special region which scalingGroup belongs to. |
當前地區不支援該通知方式。 |
400 |
LifecycleHook |
The specified queue does not exist. |
指定的MNS隊列不存在。 |
400 |
TopicNotExist |
The specified topic does not exist. |
指定的MNS主題不存在。 |