创建生命周期挂钩

最近更新时间:2021-07-21 08:03:12

我的收藏

1. 接口描述

接口请求域名: as.tencentcloudapi.com 。

本接口(CreateLifecycleHook)用于创建生命周期挂钩。

  • 您可以为生命周期挂钩配置消息通知,弹性伸缩会通知您的CMQ消息队列,通知内容形如:
{
"Service": "Tencent Cloud Auto Scaling",
"Time": "2019-03-14T10:15:11Z",
"AppId": "1251783334",
"ActivityId": "asa-fznnvrja",
"AutoScalingGroupId": "asg-rrrrtttt",
"LifecycleHookId": "ash-xxxxyyyy",
"LifecycleHookName": "my-hook",
"LifecycleActionToken": "3080e1c9-0efe-4dd7-ad3b-90cd6618298f",
"InstanceId": "ins-aaaabbbb",
"LifecycleTransition": "INSTANCE_LAUNCHING",
"NotificationMetadata": ""
}

默认接口请求频率限制:20次/秒。

注意:本接口支持金融区地域。由于金融区和非金融区是隔离不互通的,因此当公共参数 Region 为金融区地域(例如 ap-shanghai-fsi)时,需要同时指定带金融区地域的域名,最好和 Region 的地域保持一致,例如:as.ap-shanghai-fsi.tencentcloudapi.com。

推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:CreateLifecycleHook。
Version String 公共参数,本接口取值:2018-04-19。
Region String 公共参数,详见产品支持的 地域列表
AutoScalingGroupId String 伸缩组ID
LifecycleHookName String 生命周期挂钩名称。名称仅支持中文、英文、数字、下划线(_)、短横线(-)、小数点(.),最大长度不能超128个字节。
LifecycleTransition String 进行生命周期挂钩的场景,取值范围包括 INSTANCE_LAUNCHING 和 INSTANCE_TERMINATING
DefaultResult String 定义伸缩组在生命周期挂钩超时的情况下应采取的操作,取值范围是 CONTINUE 或 ABANDON,默认值为 CONTINUE
HeartbeatTimeout Integer 生命周期挂钩超时之前可以经过的最长时间(以秒为单位),范围从30到7200秒,默认值为300秒
NotificationMetadata String 弹性伸缩向通知目标发送的附加信息,默认值为空字符串""。最大长度不能超过1024个字节。
NotificationTarget NotificationTarget 通知目标
LifecycleTransitionType String 进行生命周期挂钩的场景类型,取值范围包括NORMAL 和 EXTENSION。说明:设置为EXTENSION值,在AttachInstances、DetachInstances、RemoveInstaces接口时会触发生命周期挂钩操作,值为NORMAL则不会在这些接口中触发生命周期挂钩。

3. 输出参数

参数名称 类型 描述
LifecycleHookId String 生命周期挂钩ID
RequestId String 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 创建生命周期挂钩,采用默认值

创建生命周期挂钩,在实例创建场景下生效。DefaultResult采用默认值,即CONTINUE。HeartbeatTimeout采用默认值,即300秒。

输入示例

https://as.tencentcloudapi.com/?Action=CreateLifecycleHook
&AutoScalingGroupId=asg-8fbozqja
&LifecycleHookName=one-hook-default
&LifecycleTransition=INSTANCE_LAUNCHING
&<公共请求参数>

输出示例

{
"Response": {
  "LifecycleHookId": "ash-8azjzxj9",
  "RequestId": "4fa9fd2e-5b6c-49fe-9ba7-ed2ee62d8271"
}
}

示例2 创建生命周期挂钩

创建生命周期挂钩,在实例创建场景下生效,DefaultResult设置为ABANDON,HeartbeatTimeout设置为360秒。

输入示例

https://as.tencentcloudapi.com/?Action=CreateLifecycleHook
&AutoScalingGroupId=asg-8fbozqja
&DefaultResult=ABANDON
&HeartbeatTimeout=360
&LifecycleHookName=one-hook
&LifecycleTransition=INSTANCE_LAUNCHING
&<公共请求参数>

输出示例

{
"Response": {
  "LifecycleHookId": "ash-heyubibl",
  "RequestId": "5e414011-3359-45bd-8ba4-5b503d3fd3f6"
}
}

示例3 创建生命周期挂钩,通知CMQ队列模型

创建生命周期挂钩,在实例创建场景下生效,DefaultResult设置为CONTINUE,HeartbeatTimeout设置为120秒,通知名为“one-queue”的CMQ队列模型。

输入示例

https://as.tencentcloudapi.com/?Action=CreateLifecycleHook
&AutoScalingGroupId=asg-8fbozqja
&DefaultResult=CONTINUE
&HeartbeatTimeout=120
&LifecycleHookName=launch-queue
&LifecycleTransition=INSTANCE_LAUNCHING
&NotificationMetadata=queue
&NotificationTarget.TargetType=CMQ_QUEUE
&NotificationTarget.QueueName=one-queue
&<公共请求参数>

输出示例

{
"Response": {
  "LifecycleHookId": "ash-fbjiexz7",
  "RequestId": "d3cf27b7-3090-4317-9107-d2eac986a446"
}
}

示例4 创建生命周期挂钩,通知CMQ主题模型

创建生命周期挂钩,在实例销毁场景下生效,DefaultResult设置为ABANDON,HeartbeatTimeout设置为120秒,通知名为“one-topic”的CMQ主题模型。

输入示例

https://as.tencentcloudapi.com/?Action=CreateLifecycleHook
&AutoScalingGroupId=asg-8fbozqja
&DefaultResult=ABANDON
&HeartbeatTimeout=120
&LifecycleHookName=terminate-topic
&LifecycleTransition=INSTANCE_TERMINATING
&NotificationMetadata=topic
&NotificationTarget.TargetType=CMQ_TOPIC
&NotificationTarget.TopicName=one-topic
&<公共请求参数>

输出示例

{
"Response": {
  "LifecycleHookId": "ash-oq76wsrx",
  "RequestId": "cdb7670b-0412-444f-9d2f-0da9cd07c410"
}
}

5. 开发者资源

腾讯云 API 平台

腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。

API Inspector

用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。

SDK

云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

命令行工具

6. 错误码

以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码

错误码 描述
InternalError 内部错误。
InvalidParameter 参数错误。
InvalidParameter.Conflict 参数冲突,指定的多个参数冲突,不能同时存在。
InvalidParameterValue 参数取值错误。
InvalidParameterValue.Filter 无效的过滤器。
InvalidParameterValue.InvalidAutoScalingGroupId 伸缩组ID无效。
InvalidParameterValue.LifecycleHookNameDuplicated 生命周期挂钩名称重复。
InvalidParameterValue.Range 取值超出指定范围。
LimitExceeded.QuotaNotEnough 当前剩余配额不足。
MissingParameter 缺少参数错误。
ResourceNotFound.AutoScalingGroupNotFound 伸缩组不存在。
ResourceNotFound.CmqQueueNotFound 指定的 CMQ queue 不存在。
ResourceUnavailable.CmqTopicHasNoSubscriber 指定的 CMQ Topic 无订阅者。
目录