将 PutLifecycleHook 与 CLI 配合使用 - Amazon A EC2 uto Scaling
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

PutLifecycleHook 与 CLI 配合使用

以下代码示例演示如何使用 PutLifecycleHook

CLI
Amazon CLI

示例 1:创建生命周期挂钩

此示例创建一个生命周期挂钩,该挂钩将在任何新启动的实例上调用,超时时间为 4800 秒。这对于在用户数据脚本完成之前保持实例处于等待状态或使用调用 Lambd Amazon a 函数非常有用。 EventBridge

aws autoscaling put-lifecycle-hook \ --auto-scaling-group-name my-asg \ --lifecycle-hook-name my-launch-hook \ --lifecycle-transition autoscaling:EC2_INSTANCE_LAUNCHING \ --heartbeat-timeout 4800

此命令不生成任何输出。如果已存在同名的生命周期挂钩,则该挂钩将被新的生命周期挂钩覆盖。

有关更多信息,请参阅 Amazon A EC2 uto Scaling 用户指南中的 Amazon A EC2 uto Scaling 生命周期挂钩

示例 2:发送 Amazon SNS 电子邮件以通知您实例状态转换

此示例创建一个包含 Amazon SNS 主题和 IAM 角色的生命周期挂钩,用于在实例启动时接收通知。

aws autoscaling put-lifecycle-hook \ --auto-scaling-group-name my-asg \ --lifecycle-hook-name my-launch-hook \ --lifecycle-transition autoscaling:EC2_INSTANCE_LAUNCHING \ --notification-target-arn arn:aws:sns:us-west-2:123456789012:my-sns-topic \ --role-arn arn:aws:iam::123456789012:role/my-auto-scaling-role

此命令不生成任何输出。

有关更多信息,请参阅 Amazon A EC2 uto Scaling 用户指南中的 Amazon A EC2 uto Scaling 生命周期挂钩

示例 3:向 Amazon SQS 队列发布消息

此示例创建一个生命周期挂钩,该挂钩将包含元数据的消息发布到指定的 Amazon SQS 队列。

aws autoscaling put-lifecycle-hook \ --auto-scaling-group-name my-asg \ --lifecycle-hook-name my-launch-hook \ --lifecycle-transition autoscaling:EC2_INSTANCE_LAUNCHING \ --notification-target-arn arn:aws:sqs:us-west-2:123456789012:my-sqs-queue \ --role-arn arn:aws:iam::123456789012:role/my-notification-role \ --notification-metadata "SQS message metadata"

此命令不生成任何输出。

有关更多信息,请参阅 Amazon A EC2 uto Scaling 用户指南中的 Amazon A EC2 uto Scaling 生命周期挂钩

  • 有关 API 的详细信息,请参阅Amazon CLI 命令参考PutLifecycleHook中的。

PowerShell
适用于 PowerShell V4 的工具

示例 1:此示例将指定的生命周期挂钩添加到指定的自动扩缩组。

Write-ASLifecycleHook -AutoScalingGroupName my-asg -LifecycleHookName "myLifecycleHook" -LifecycleTransition "autoscaling:EC2_INSTANCE_LAUNCHING" -NotificationTargetARN "arn:aws:sns:us-west-2:123456789012:my-sns-topic" -RoleARN "arn:aws:iam::123456789012:role/my-iam-role"
  • 有关 API 的详细信息,请参阅 Amazon Tools for PowerShell Cmdlet 参考 (V 4) PutLifecycleHook中的。

适用于 PowerShell V5 的工具

示例 1:此示例将指定的生命周期挂钩添加到指定的自动扩缩组。

Write-ASLifecycleHook -AutoScalingGroupName my-asg -LifecycleHookName "myLifecycleHook" -LifecycleTransition "autoscaling:EC2_INSTANCE_LAUNCHING" -NotificationTargetARN "arn:aws:sns:us-west-2:123456789012:my-sns-topic" -RoleARN "arn:aws:iam::123456789012:role/my-iam-role"
  • 有关 API 的详细信息,请参阅 Amazon Tools for PowerShell Cmdlet 参考 (V 5) PutLifecycleHook中的。

有关 S Amazon DK 开发者指南和代码示例的完整列表,请参阅将此服务与 Amazon SDK 配合使用。本主题还包括有关入门的信息以及有关先前的 SDK 版本的详细信息。