开发者社区 问答 正文

延期生命周期活动



延长一个生命周期挂钩触发的被挂起的 ECS 实例的等待时间(RecordLifecycleActionHeartbeat)。ECS 实例的等待时间最长不能超过 6 小时,每次等待状态最多能被延时 20 次。

请求参数

名称类型是否必需描述
ActionString系统规定参数,取值:RecordLifecycleActionHeartbeat
LifecycleHookIdString生命周期挂钩 ID。
LifecycleActionTokenString伸缩活动的等待状态标识符,您可以从生命周期挂钩指定的消息服务队列或主题中获取。
HeartbeatTimeoutInteger生命周期挂钩为伸缩组活动设置的等待时间,等待状态超时后会执行下一步动作(DefaultResult)。取值范围:[30, 21600],单位为秒,默认值:600。创建了生命周期挂钩后,您可以调用 RecordLifecycleActionHeartbeat 延长 ECS 实例的等待时间,也可以调用 CompleteLifecycleAction 提前结束伸缩活动的等待状态。


返回参数

名称类型描述
RequestIdString请求 ID


示例



请求示例

  1. http://ess.aliyuncs.com/?Action=RecordLifecycleActionHeartbeat
  2. &LifecycleHookId=ash-xxxxxxxxxxx
  3. &LifecycleActionToken=aaaa-bbbbb-cccc-ddddd
  4. &LifecycleActionResult=CONTINUE
  5. &<公共请求参数>


返回示例


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

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


错误码


以下为本接口特有的错误码。更多错误码,请访问 API 错误中心
错误代码错误信息HTTP 状态码说明
InvalidParamterThe specified value of parameter is not valid.400指定的参数值不合法。
LifecycleHookIdAndLifecycleActionToken.InvalidThe specified lifecycleActionToken and lifecycleHookId you provided does not match any in process lifecycle action.400根据指定的 LifecycleActionToken无法匹配 LifecycleHookId。
[tr=rgb(239, 251, 255)][td]LifecycleAction.TimeExceeded The specified parameter heartbeatTime exceed lifecycleAction max suspend time.400等待时间最长不能超过 6 小时。 LifecycleAction.RecordTimesExceededThe specified lifecycleAction exceed lifecycleAction max record times.400每次等待状态最多能被延时 20 次。

展开
收起
青蛙跳 2018-08-17 13:57:02 1504 分享 版权
阿里云 AI 助理回答

要延长一个生命周期挂钩触发的被挂起的ECS实例的等待时间,您需要调用RecordLifecycleActionHeartbeat接口。以下是操作的具体步骤和参数说明:

操作步骤

  1. 确认实例状态:确保您的ECS实例当前正处于由生命周期挂钩触发的挂起状态。

  2. 准备请求参数

    • Action: 必填,固定值为RecordLifecycleActionHeartbeat
    • lifecycleHookId: 必填,提供生命周期挂钩的ID。
    • lifecycleActionToken: 必填,从消息服务队列或通过API获取的伸缩活动等待状态标识符。
    • HeartbeatTimeout(可选): 设置新的等待时间(单位为秒),默认值为600秒,范围在30到21600秒之间。此参数用于延长等待时间。
  3. 构造API请求:根据阿里云ECS API的规范,构建HTTP请求。例如:

    http://ess.aliyuncs.com/?Action=RecordLifecycleActionHeartbeat
    &lifecycleHookId=您的生命周期挂钩ID
    &lifecycleActionToken=您的生命周期动作令牌
    &HeartbeatTimeout=您希望设置的等待时间(如不修改,默认为600)
    

    其中,您的生命周期挂钩ID您的生命周期动作令牌需替换为实际值。

  4. 发送请求:通过HTTP客户端发送上述构造的请求至阿里云ECS API服务器。

返回参数

  • RequestId: 该字段返回请求的唯一标识,用于跟踪和排查问题。

注意事项

  • 超时限制:ECS实例的最长等待时间不能超过6小时,并且每次挂起状态最多只能被延时20次。
  • 参数合法性:确保提供的lifecycleHookIdlifecycleActionToken匹配正确,且HeartbeatTimeout值在允许的范围内。
  • 监控与调整:合理设置等待时间以避免资源浪费,并监控执行情况以便适时调整策略。

请按照以上步骤操作,即可成功延长ECS实例在生命周期挂钩中的挂起等待时间。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答