ウォームプールのイベントとパターンの例 - Amazon EC2 Auto Scaling

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ウォームプールのイベントとパターンの例

Amazon EC2 Auto Scaling は、Amazon でいくつかの事前定義されたパターンをサポートしています EventBridge。これは、イベントパターンが作成される方法を簡素化します。フォームでフィールド値を選択すると、 によってパターン EventBridge が生成されます。現在、Amazon EC2 Auto Scaling は、ウォームプールがある Auto Scaling グループによって発行されるイベントに対して事前定義されたパターンをサポートしていません。パターンは、JSON オブジェクトとして入力する必要があります。このセクションと「ウォームプールイベントの EventBridge ルールを作成する」トピックでは、イベントパターンを使用してイベントを選択し、それらをターゲットに送信する方法を説明します。

Amazon EC2 Auto Scaling が に送信するウォームプール関連のイベントをフィルタリングする EventBridge ルールを作成するには EventBridge、イベントの detailセクションの Originおよび Destinationフィールドを含めます。

OriginおよびDestination の値には以下を指定できます。

EC2 | AutoScalingGroup | WarmPool

イベントの例

Auto Scaling グループにライフサイクルフックを追加すると、インスタンスが待機状態に移行すると EventBridge、Amazon EC2 Auto Scaling はイベントを に送信します。詳細については、「Auto Scaling グループのウォームプールでライフサイクルフックを使用する」を参照してください。

このセクションには、Auto Scaling グループにウォームプールがある場合のこれらのイベントの例が含まれています。イベントは、ベストエフォートベースで出力されます。

注記

スケーリングが成功 EventBridge したときに Amazon EC2 Auto Scaling が に送信するイベントについては、「」を参照してください成功したスケーリングイベント。スケーリングが失敗した場合のイベントについては、「失敗したスケーリングイベント」を参照してください。

スケールアウトライフサイクルアクション

インスタンスがスケールアウトイベントの待機状態に移行するときに配信されるイベントには、detail-type の値として EC2 Instance-launch Lifecycle Action が含まれます。detail オブジェクト内の Origin および Destination 属性の値は、インスタンスがどこから来てどこへ行くのかを示します。

このスケールアウトイベントの例では、新しいインスタンスが起動し、ウォームプールに追加されるため、その状態が Warmed:Pending:Wait に変わります。詳細については、「ウォームプール内のインスタンスのライフサイクル状態の移行」を参照してください。

{ "version": "0", "id": "12345678-1234-1234-1234-123456789012", "detail-type": "EC2 Instance-launch Lifecycle Action", "source": "aws.autoscaling", "account": "123456789012", "time": "2021-01-13T00:12:37.214Z", "region": "us-west-2", "resources": [ "auto-scaling-group-arn" ], "detail": { "LifecycleActionToken": "71514b9d-6a40-4b26-8523-05e7eEXAMPLE", "AutoScalingGroupName": "my-asg", "LifecycleHookName": "my-launch-lifecycle-hook", "EC2InstanceId": "i-1234567890abcdef0", "LifecycleTransition": "autoscaling:EC2_INSTANCE_LAUNCHING", "NotificationMetadata": "additional-info", "Origin": "EC2", "Destination": "WarmPool" } }

このスケールアウトイベントの例では、インスタンスがウォームプールから Auto Scaling グループに追加されるため、インスタンスの状態は Pending:Wait に変わります。詳細については、「ウォームプール内のインスタンスのライフサイクル状態の移行」を参照してください。

{ "version": "0", "id": "12345678-1234-1234-1234-123456789012", "detail-type": "EC2 Instance-launch Lifecycle Action", "source": "aws.autoscaling", "account": "123456789012", "time": "2021-01-19T00:35:52.359Z", "region": "us-west-2", "resources": [ "auto-scaling-group-arn" ], "detail": { "LifecycleActionToken": "19cc4d4a-e450-4d1c-b448-0de67EXAMPLE", "AutoScalingGroupName": "my-asg", "LifecycleHookName": "my-launch-lifecycle-hook", "EC2InstanceId": "i-1234567890abcdef0", "LifecycleTransition": "autoscaling:EC2_INSTANCE_LAUNCHING", "NotificationMetadata": "additional-info", "Origin": "WarmPool", "Destination": "AutoScalingGroup" } }

スケールインライフサイクルアクション

インスタンスがスケールインイベントの待機状態に移行するときに配信されるイベントには、detail-type の値として EC2 Instance-terminate Lifecycle Action が含まれます。detail オブジェクト内の Origin および Destination 属性の値は、インスタンスがどこから来てどこへ行くのかを示します。

このスケールインイベントの例では、インスタンスがウォームプールに戻されるため、インスタンスの状態は Warmed:Pending:Wait に変わります。詳細については、「ウォームプール内のインスタンスのライフサイクル状態の移行」を参照してください。

{ "version": "0", "id": "12345678-1234-1234-1234-123456789012", "detail-type": "EC2 Instance-terminate Lifecycle Action", "source": "aws.autoscaling", "account": "123456789012", "time": "2022-03-28T00:12:37.214Z", "region": "us-west-2", "resources": [ "auto-scaling-group-arn" ], "detail": { "LifecycleActionToken": "42694b3d-4b70-6a62-8523-09a1eEXAMPLE", "AutoScalingGroupName": "my-asg", "LifecycleHookName": "my-termination-lifecycle-hook", "EC2InstanceId": "i-1234567890abcdef0", "LifecycleTransition": "autoscaling:EC2_INSTANCE_TERMINATING", "NotificationMetadata": "additional-info", "Origin": "AutoScalingGroup", "Destination": "WarmPool" } }

イベントパターンの例

前のセクションでは、Amazon EC2 Auto Scaling によって生成されるイベント例を説明します。

EventBridge イベントパターンは、一致するイベントと同じ構造です。イベントのパターンでは、照合する対象のフィールドを引用符で囲み、検出したい値を指定します。

イベント内の次のフィールドは、ルールで定義され、アクションをトリガーするイベントパターンを形成します。

"source": "aws.autoscaling"

イベントが Amazon EC2 Auto Scaling Group からのものであることを特定します。

"detail-type": "EC2 Instance-launch Lifecycle Action"

イベントタイプを特定します。

"Origin": "EC2"

インスタンスがどこから来ているかを識別します。

"Destination": "WarmPool"

インスタンスがどこに行くかを識別します。

次のサンプルイベントパターンを使用して、ウォームプールに入るインスタンスに関連付けられているすべての EC2 Instance-launch Lifecycle Action イベントをキャプチャします。

{ "source": [ "aws.autoscaling" ], "detail-type": [ "EC2 Instance-launch Lifecycle Action" ], "detail": { "Origin": [ "EC2" ], "Destination": [ "WarmPool" ] } }

次のサンプルイベントパターンを使用して、スケールアウトイベントのためにウォームプールから取り出されるインスタンスに関連付けられたすべての EC2 Instance-launch Lifecycle Action イベントをキャプチャします。

{ "source": [ "aws.autoscaling" ], "detail-type": [ "EC2 Instance-launch Lifecycle Action" ], "detail": { "Origin": [ "WarmPool" ], "Destination": [ "AutoScalingGroup" ] } }

次のサンプルイベントパターンを使用して、Auto Scaling グループに直接起動するインスタンスに関連付けられているすべての EC2 Instance-launch Lifecycle Action イベントをキャプチャします。

{ "source": [ "aws.autoscaling" ], "detail-type": [ "EC2 Instance-launch Lifecycle Action" ], "detail": { "Origin": [ "EC2" ], "Destination": [ "AutoScalingGroup" ] } }

次のサンプルイベントパターンを使用して、スケールインでウォームプールに戻されるインスタンスに関連付けられているすべての EC2 Instance-terminate Lifecycle Action イベントをキャプチャします。

{ "source": [ "aws.autoscaling" ], "detail-type": [ "EC2 Instance-terminate Lifecycle Action" ], "detail": { "Origin": [ "AutoScalingGroup" ], "Destination": [ "WarmPool" ] } }

次のイベントパターンのサンプルを使用して、送信元や送信先に関わらず、EC2 Instance-launch Lifecycle Actionに関連付けられているすべてのイベントをキャプチャします。

{ "source": [ "aws.autoscaling" ], "detail-type": [ "EC2 Instance-launch Lifecycle Action" ] }