开发者社区> 问答> 正文

修改生命周期挂钩


修改一个生命周期挂钩的属性(ModifyLifecycleHook)。

描述


您可以通过以下两种方式修改生命周期挂钩:


  • 指定生命周期挂钩 ID(LifecycleHookId),此时将忽略 ScalingGroupId 和 LifecycleHookName 参数。

  • 同时指定伸缩组 ID(ScalingGroupId)与生命周期挂钩名称(LifecycleHookName)。


请求参数

名称类型是否必需描述
ActionString系统规定参数,取值:ModifyLifecycleHook
LifecycleHookIdString生命周期挂钩 ID,用于指定生命周期挂钩,不支持修改。
ScalingGroupIdString伸缩组 ID,用于指定生命周期挂钩,不支持修改。
LifecycleHookNameString生命周期挂钩名称,用于指定生命周期挂钩,不支持修改。
LifecycleTransitionString生命周期挂钩适用的伸缩活动类型。取值范围:
  • SCALE_OUT:伸缩组弹性扩张活动
  • SCALE_IN:伸缩组弹性收缩活动
HeartbeatTimeoutInteger生命周期挂钩为伸缩组活动设置的等待时间,等待状态超时后会执行下一步动作(DefaultResult)。取值范围:[30, 21600],单位为秒,默认值:600。创建了生命周期挂钩后,您可以调用 RecordLifecycleActionHeartbeat 延长 ECS 实例的等待时间,也可以调用 CompleteLifecycleAction 提前结束伸缩活动的等待状态。
DefaultResultString等待状态结束后的下一步动作。取值范围:
  • CONTINUE:继续响应弹性扩张活动或者继续响应弹性收缩活动。
  • ABANDON:直接释放弹性扩张活动创建出来的 ECS 实例或者直接将弹性收缩活动中的 ECS 实例从伸缩组移除。
默认值:CONTINUE当伸缩组发生弹性收缩活动(SCALE_IN)并触发多个生命周期挂钩时,DefaultResult=ABANDON 的生命周期挂钩触发的等待状态结束时,会提前将其它对应的等待状态提前结束。其他情况下,下一步动作均以最后一个结束等待状态的下一步动作为准。
NotificationArnString生命周期挂钩通知对象标识符。目前我们支持消息服务 MNS 队列或主题,参数取值格式:acs:ess:{region}:{account-id}:{resource-relative-id}。
  • region:伸缩组所在的地域
  • account-id:阿里云账号 ID
例如:
  • MNS 队列:acs:ess:{region}:{account-id}:queue/{queuename}
  • MNS 主题:acs:ess:{region}:{account-id}:topic/{topicname}
NotificationMetadataString伸缩活动的等待状态的固定字符串信息。参数长度不能超过 128 个字符。弹性伸缩每次推送消息到通知对象时,会同时发送您预先指定的 NotificationMetadata 参数值,便于管理和标记不同类别的通知信息。当您同时指定了 NotificationArn 参数时,NotificationMetadata 参数方可生效。


返回参数

名称类型描述
RequestIdString请求 ID


示例



请求示例

  1. http://ess.aliyuncs.com/?Action=ModifyLifecycleHook
  2. &ScalingGroupId=AG6CQdPU8OKdwLjgZcJ2eaQ
  3. &LifecycleHookName=测试SCALE_IN
  4. &LifecycleTransition=SCALE_IN
  5. &DefaultResult=ABANDON
  6. &NotificationArn=acs:ess:cn-hangzhou:1111111111:queue/queue2
  7. &NotificationMetadata=Test
  8. &<公共请求参数>


返回示例


XML 格式
  1. <ModifyLifecycleHookResponse>
  2.     <RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>
  3. </ModifyLifecycleHookResponse>

JSON 格式
  1. {
  2.     "RequestId": "04F0F334-1335-436C-A1D7-6C044FE73368"
  3. }


错误码


以下为本接口特有的错误码。更多错误码,请访问 API 错误中心
错误代码错误信息HTTP 状态码说明
InvalidParamterThe specified value of parameter is not valid.400参数值不合法
InvalidLifecycleHookId.NotExistThe specified lifecycleHookId not exist.400指定的 LifecycleHookId 不存在。
InvalidLifecycleHookName.NotExistThe specified lifecycleHookName you provided not exist.400指定的 LifecycleHookName不存在。
InvalidNotificationArnThe specified param “notificationArn” is invalid.400指定的 NotificationArn 不存在。
UnsupportedNotificationType.CurrentRegionThe notificationNotificationType “notificationType” is not supported in the special region which scalingGroup belong to.400当前地域不支持该通知方式。
QueueNotExistThe specified queue does not exist.400指定的 MNS 队列不存在。
TopicNotExistThe specified topic does not exist.400指定的 MNS 主题不存在。

展开
收起
青蛙跳 2018-08-17 13:56:12 1393 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
对象的生命期管理 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载