Amazon EventBridge を使用して EC2 フリートまたはスポットフリートによって出力されたイベントをモニタリングし、プログラムで応答します。
EC2 フリートかスポットフリートの状態に変化があった場合、そのフリートから通知が発せられます。通知は、Amazon EventBridge (旧称 Amazon CloudWatch Events) に送信されるイベントとして利用できます。イベントは、ベストエフォートベースで発生します。
Amazon EventBridge を使用して、イベントに応答してプログラムによるアクションをトリガーするルールを作成できます。例えば、フリートの状態が変更されたときにトリガーされるルールと、フリートのインスタンスが終了したときにトリガーされるルールという 2 つの EventBridge ルールを作成できます。この例の最初のルールでは、フリートの状態が変更された際に、ルールが SNS トピックを呼び出して E メール通知を送信するように設定できます。2 番目のルールでは、フリートのインスタンスが終了した場合に Lambda 関数を呼び出して、新しいインスタンスを起動するように設定できます。
注記
タイプ maintain
と request
のフリートのみがイベントを発行します。タイプ instant
のフリートは、同期された 1 回限りのリクエストを送信するため、イベントを発行しません。フリートの状態は応答ですぐに認識されます。Amazon EventBridge を使用してフリートイベントをモニタリングするには、リクエストタイプが maintain
または request
である必要があります。
フリートのイベント履歴を表示する方法については、「EC2 フリートのイベント履歴を表示する」を参照してください。
EC2 フリートイベントまたはスポットフリートイベントをモニタリングする Amazon EventBridge ルールを作成する
EC2 フリートまたはスポットフリートの状態変更に関する通知が送信される場合、その通知のためのイベントが Amazon EventBridge に対し JSON ファイルとして送信されます。EventBridge がルールで定義されているパターンに一致するイベントパターンを検出すると、EventBridge はルールで指定されているターゲットを呼び出します。
EventBridge ルールを記述して、一致するイベントパターンに基づいてアクションを自動化できます。
イベント内の次のフィールドはイベントパターンを形成します。このパターンはルールで定義されます。
"source": "aws.ec2fleet"
-
イベントが EC2 フリート からのものであることを特定します。
"detail-type": "
EC2 Fleet State Change
"-
イベントタイプを特定します。
"detail": { "sub-type": "
submitted
" }-
イベントのサブタイプを特定します。
EC2 フリートおよびスポットフリートのイベントの一覧とイベントデータの例については、「EC2 フリート イベントタイプ」と「スポットフリートイベントタイプ」を参照してください。
通知を送信する EventBridge ルールを作成する
次の例では、Amazon EC2 が EC2 フリート状態変更通知を発するたびに、E メール、テキストメッセージ、またはモバイルプッシュ通知を送信する EventBridge ルールを作成します。この例のシグナルは EC2 Fleet
State Change
イベントとして送信され、ルールによって定義されたアクションがトリガーされます。
前提条件
EventBridge ルールを作成する前に、E メール、テキストメッセージ、またはモバイルプッシュ通知用の Amazon SNS トピックを作成する必要があります。
EventBridge ルールを作成して EC2 フリート状態が変更されたときに通知を送信するには
Amazon EventBridge コンソール (https://console.aws.amazon.com/events/
) を開きます。 -
[Create rule] を選択します。
-
[Define rule detail] (詳細の定義) で、次の操作を行います。
-
ルールの [Name (名前)] を入力し、必要に応じて説明を入力します。
ルールには、同じリージョン内および同じイベントバス上の別のルールと同じ名前を付けることはできません。
-
[イベントバス] として、[デフォルト] を選択します。アカウント内の AWS のサービスで生成されたイベントは、常に、そのアカウントのデフォルトのイベントバスに送られます。
-
ルールタイプ では、イベントパターンを持つルール] を選択します。
-
[Next] を選択します。
-
-
[Build event pattern] (イベントパターンの作成) で、次の操作を行います。
-
[Event source] (イベントソース) で、[AWS events or EventBridge partner events] ( イベントまたは EventBridge パートナーイベント) を選択します。
-
この例では [Event pattern] (イベントパターン) で、
EC2 Fleet Instance Change
イベントと一致するように以下のイベントパターンを指定します。{ "source": ["aws.ec2fleet"], "detail-type": ["EC2 Fleet Instance Change"] }
イベントパターンを追加するには、以下のように [Event pattern form] (イベントパターンフォーム) を選択してテンプレートを使用するか、[Custom pattern (JSON editor)] (カスタムパターン (JSON エディター)) を選択して独自のパターンを指定します。
-
テンプレートを使用してイベントパターンを作成するには、以下の操作を行います。
-
[Event pattern form] (イベントパターンフォーム) を選択します。
-
[イベントパターンフォーム] では、AWS[サービス] を選択します。
-
[AWS Service] ( サービス) で、[EC2 Fleet] (EC2 フリート) を選択します。
-
[Event type] (イベントタイプ) で、[EC2 Fleet Instance Change] (EC2 フリートインスタンスの変更) を選択します。
-
テンプレートをカスタマイズするには、[Edit pattern] (パターンを編集) を選択した上で、この例のイベントパターンに合わせた変更を行います。
-
-
(代替案) 以下の操作を行って、カスタムイベントパターンを指定します。
-
[Custom pattern (JSON editor)] (カスタムパターン (JSON エディター)) を選択します。
-
[Event pattern] (イベントパターン) ボックスに、この例のイベントパターンを追加します。
-
-
-
[Next] を選択します。
-
-
[Select target(s)] (ターゲットを選択) で、以下の操作を行います。
-
ターゲットタイプ] では、AWSサービス] を選択します。
-
イベントの発生時に E メール、テキストメッセージ、またはモバイルプッシュ通知を送信するために、[Select a target] (ターゲットを選択) で、[SNS topic] (SNS トピック) を選択します。
-
[Topic (トピック)] で、既存のトピックを選択します。先ず、Amazon SNS コンソールを使用して Amazon SNS トピックを作成する必要があります。詳細については、Amazon Simple Notification Service デベロッパーガイド のAmazon SNS を使用した Application-to-Person (A2P) メッセージングを参照してください。
-
(オプション) [Additional settings] (追加設定) で、その他の設定を行うこともできます。詳細については、「Amazon EventBridge ユーザーガイド」の「イベントに反応する Amazon EventBridge ルールの作成」(ステップ 16) を参照してください。
-
[Next] を選択します。
-
-
(オプション) 必要な場合は、[Tags] (タグ) で 1 つ以上のタグを作成したルールに割り当て、[Next] (次へ) を選択します。
-
[Review and create] (確認して作成) で、以下の操作を行いす。
-
ルールの詳細を確認し、必要な場合は変更を行います。
-
ルールの作成を選択します。
-
詳細については、「Amazon EventBridge ユーザーガイド」の「Amazon EventBridge ルール」と「Amazon EventBridge イベントパターン」を参照してください。
Lambda 関数をトリガーする EventBridge ルールの作成
次の例では、Amazon EC2 が EC2 フリートインスタンスが起動したときのインスタンス変更通知を発するたびに Lambda 関数をトリガーする EventBridge ルールを作成します。この例のシグナルは EC2
Fleet Instance Change
イベント、サブタイプ launched
として発され、ルールによって定義されたアクションがトリガーされます。
EventBridge ルールを作成する前に、Lambda 関数を作成する必要があります。
EventBridge ルールで使用する Lambda 関数を作成するには
AWS Lambda コンソール (https://console.aws.amazon.com/lambda/
) を開きます。 -
[関数の作成] を選択します。
-
関数の名前を入力し、コードを設定し、[Create function (関数の作成)] を選択します。
Lambda の使用の詳細については、AWS Lambda デベロッパーガイドの「コンソールで Lambda 関数を作成する」を参照してください。
EC2 フリート のインスタンスの状態が変更されたときに Lambda 関数をトリガーする EventBridge ルールを作成するには
Amazon EventBridge コンソール (https://console.aws.amazon.com/events/
) を開きます。 -
[Create rule] を選択します。
-
[Define rule detail] (詳細の定義) で、次の操作を行います。
-
ルールの [Name (名前)] を入力し、必要に応じて説明を入力します。
ルールには、同じリージョン内および同じイベントバス上の別のルールと同じ名前を付けることはできません。
-
[イベントバス] として、[デフォルト] を選択します。アカウント内の AWS のサービスで生成されたイベントは、常に、そのアカウントのデフォルトのイベントバスに送られます。
-
ルールタイプ では、イベントパターンを持つルール] を選択します。
-
[Next] を選択します。
-
-
[Build event pattern] (イベントパターンの作成) で、次の操作を行います。
-
[Event source] (イベントソース) で、[AWS events or EventBridge partner events] ( イベントまたは EventBridge パートナーイベント) を選択します。
-
この例では [Event pattern] (イベントパターン) で
EC2 Fleet Instance Change
イベントとlaunched
サブタイプに一致するよう、以下のイベントパターンを指定します。{ "source": ["aws.ec2fleet"], "detail-type": ["EC2 Fleet Instance Change"], "detail": { "sub-type": ["launched"] }
イベントパターンを追加するには、以下のように [Event pattern form] (イベントパターンフォーム) を選択してテンプレートを使用するか、[Custom pattern (JSON editor)] (カスタムパターン (JSON エディター)) を選択して独自のパターンを指定します。
-
テンプレートを使用してイベントパターンを作成するには、以下の操作を行います。
-
[Event pattern form] (イベントパターンフォーム) を選択します。
-
[イベントパターンフォーム] では、AWS[サービス] を選択します。
-
[AWS Service] ( サービス) で、[EC2 Fleet] (EC2 フリート) を選択します。
-
[Event type] (イベントタイプ) で、[EC2 Fleet Instance Change] (EC2 フリートインスタンスの変更) を選択します。
-
[Edit pattern] (パターンの編集) を選択し、サンプルのイベントパターンに一致するように
"detail": {"sub-type": ["launched"]
を追加します。適切な JSON 形式を得るには、前にある角括弧 (]
) の後にコンマ (,
) を入力します。
-
-
(代替案) 以下の操作を行って、カスタムイベントパターンを指定します。
-
[Custom pattern (JSON editor)] (カスタムパターン (JSON エディター)) を選択します。
-
[Event pattern] (イベントパターン) ボックスに、この例のイベントパターンを追加します。
-
-
-
[Next] を選択します。
-
-
[Select target(s)] (ターゲットを選択) で、以下の操作を行います。
-
ターゲットタイプ] では、AWSサービス] を選択します。
-
イベントの発生時に E メール、テキストメッセージ、またはモバイルプッシュ通知を送信するために、[Select a target] (ターゲットを選択) で、[SNS topic] (SNS トピック) を選択します。
-
[Topic] (トピック) で [Lambda function] (Lambda 関数) を選択し、[Function] (関数) では、イベント発生時に応答するように作成した関数を選択します。
-
(オプション) [Additional settings] (追加設定) で、その他の設定を行うこともできます。詳細については、「Amazon EventBridge ユーザーガイド」の「イベントに反応する Amazon EventBridge ルールの作成」(ステップ 16) を参照してください。
-
[Next] を選択します。
-
-
(オプション) 必要な場合は、[Tags] (タグ) で 1 つ以上のタグを作成したルールに割り当て、[Next] (次へ) を選択します。
-
[Review and create] (確認して作成) で、以下の操作を行いす。
-
ルールの詳細を確認し、必要な場合は変更を行います。
-
ルールの作成を選択します。
-
Lambda 関数を作成する方法のチュートリアルと Lambda 関数を実行する EventBridge ルールについては、AWS Lambda デベロッパーガイドの「チュートリアル: EventBridge を使用して Amazon EC2 インスタンスの状態をログに記録する」を参照してください。
EC2 フリート イベントタイプ
5 つの EC2 フリート イベントタイプがあります。イベントタイプごとに、いくつかのサブタイプがあります。
EC2 フリートの状態の変更
EC2 フリート は、EC2 フリート の状態が変更されたときに EC2 Fleet State Change
イベントを Amazon EventBridge に送信します。
以下はこのイベントのサンプルデータです。
{
"version": "0",
"id": "715ed6b3-b8fc-27fe-fad6-528c7b8bf8a2",
"detail-type": "EC2 Fleet State Change",
"source": "aws.ec2fleet",
"account": "123456789012",
"time": "2020-11-09T09:00:20Z",
"region": "us-east-1",
"resources": [
"arn:aws:ec2:us-east-1:123456789012:fleet/fleet-598fb973-87b7-422d-be4d-6b0809bfff0a"
],
"detail": {
"sub-type": "active"
}
}
sub-type
に指定できる値は、次のとおりです。
active
-
EC2 フリート リクエストは検証済みです。Amazon EC2 は実行中のインスタンスをターゲット数分、確保しようとしています。
deleted
-
EC2 フリート リクエストが削除され、実行中のインスタンスがありません。EC2 フリート は、そのインスタンスが終了してから 2 日後に削除されます。
deleted_running
-
EC2 フリート リクエストが削除され、追加のインスタンスは起動されません。その既存のインスタンスは、中断または終了されるまで実行され続けます。リクエストは、すべてのインスタンスが中断されるか終了されるまで、この状態のままになります。
deleted_terminating
-
EC2 フリートリクエストが削除され、そのインスタンスが終了します。リクエストは、すべてのインスタンスが終了されるまで、この状態のままになります。
expired
-
EC2 フリートリクエストが期限切れです。このリクエストが
TerminateInstancesWithExpiration
セットを使用して作成されている場合、後続のterminated
イベントは、インスタンスが終了済みなことを示します。 modify_in_progress
-
EC2 フリート リクエストは変更中です。リクエストは、この変更が完全に処理されるまで、同じ状態を維持します。
modify_succeeded
-
EC2 フリートリクエストが変更されました。
submitted
-
EC2 フリート リクエストは評価中です。Amazon EC2 は目標数のインスタンスを起動する準備をしています。
progress
-
EC2 フリートリクエストは受理中です。
EC2 フリートのスポットインスタンスリクエストの変更
EC2 フリート は、フリート内のスポットインスタンスリクエストの状態が変更されたときに EC2 Fleet Spot Instance Request Change
イベントを Amazon EventBridge に送信します。
以下はこのイベントのサンプルデータです。
{
"version": "0",
"id": "19331f74-bf4b-a3dd-0f1b-ddb1422032b9",
"detail-type": "EC2 Fleet Spot Instance Request Change",
"source": "aws.ec2fleet",
"account": "123456789012",
"time": "2020-11-09T09:00:05Z",
"region": "us-east-1",
"resources": [
"arn:aws:ec2:us-east-1:123456789012:fleet/fleet-83fd4e48-552a-40ef-9532-82a3acca5f10"
],
"detail": {
"spot-instance-request-id": "sir-rmqske6h",
"description": "SpotInstanceRequestId sir-rmqske6h, PreviousState: cancelled_running",
"sub-type": "cancelled"
}
}
sub-type
に指定できる値は、次のとおりです。
active
-
スポットインスタンスリクエストは受理された状態であり、スポットインスタンスの関連付けが完了しています。
cancelled
-
スポットインスタンスリクエストがキャンセルされている、あるいは、そのリクエストの有効期限が切れています。
disabled
-
スポットインスタンスが停止されています。
submitted
-
スポットインスタンスリクエストは送信済みです。
EC2 フリートインスタンスの変更
EC2 フリート は、フリート内のインスタンスの状態が変更されたときに EC2 Fleet Instance Change
イベントを Amazon EventBridge に送信します。
以下はこのイベントのサンプルデータです。
{
"version": "0",
"id": "542ce428-c8f1-0608-c015-e8ed6522c5bc",
"detail-type": "EC2 Fleet Instance Change",
"source": "aws.ec2fleet",
"account": "123456789012",
"time": "2020-11-09T09:00:23Z",
"region": "us-east-1",
"resources": [
"arn:aws:ec2:us-east-1:123456789012:fleet/fleet-598fb973-87b7-422d-be4d-6b0809bfff0a"
],
"detail": {
"instance-id": "i-0c594155dd5ff1829",
"description": "{\"instanceType\":\"c5.large\",\"image\":\"ami-6057e21a\",\"productDescription\":\"Linux/UNIX\",\"availabilityZone\":\"us-east-1d\"}",
"sub-type": "launched"
}
}
sub-type
に指定できる値は、次のとおりです。
launched
-
新しいインスタンスが起動されました。
terminated
-
このインスタンスは終了しています。
termination_notified
-
フリートのターゲット容量のスケールダウン中 (ターゲット容量 が 4 から 3 に変更される場合など) に、Amazon EC2 によってスポットインスタンスが終了されたので、インスタンス終了通知が送信されました。
EC2 フリート情報
EC2 フリート は、受理中にエラーが発生したときに EC2 Fleet Information
イベントを Amazon EventBridge に送信します。情報イベントは、フリートがターゲット容量を満たすことをブロックしません。
以下はこのイベントのサンプルデータです。
{
"version": "0",
"id": "76529817-d605-4571-7224-d36cc1b2c0c4",
"detail-type": "EC2 Fleet Information",
"source": "aws.ec2fleet",
"account": "123456789012",
"time": "2020-11-09T08:17:07Z",
"region": "us-east-1",
"resources": [
"arn:aws:ec2:us-east-1:123456789012:fleet/fleet-8becf5fe-bb9e-415d-8f54-3fa5a8628b91"
],
"detail": {
"description": "c4.xlarge, ami-0947d2ba12ee1ff75, Linux/UNIX, us-east-1a, Spot price in either SpotFleetRequestConfigData or SpotFleetLaunchSpecification or LaunchTemplate or LaunchTemplateOverrides is less than Spot market price $0.0619",
"sub-type": "launchSpecUnusable"
}
}
sub-type
に指定できる値は、次のとおりです。
fleetProgressHalted
-
すべての起動仕様の料金は、スポット料金を下回っているため無効です (すべての起動仕様が
launchSpecUnusable
イベントを生成しました)。スポット料金が変更されると、起動仕様が有効になる場合があります。 launchSpecTemporarilyBlacklisted
-
設定が有効ではなく、インスタンスを起動しようとして何回か失敗しました。詳細については、イベントの説明をご覧ください。
launchSpecUnusable
-
この起動仕様の料金は、スポット料金を下回っているため無効です。
registerWithLoadBalancersFailed
-
ロードバランサーにインスタンスを登録しようとして失敗しました。詳細については、イベントの説明をご覧ください。
EC2 フリートエラー
EC2 フリート は、受理中にエラーが発生したときに EC2 Fleet Error
イベントを Amazon EventBridge に送信します。エラーイベントは、フリートがターゲット容量を満たすことをブロックします。
以下はこのイベントのサンプルデータです。
{
"version": "0",
"id": "69849a22-6d0f-d4ce-602b-b47c1c98240e",
"detail-type": "EC2 Fleet Error",
"source": "aws.ec2fleet",
"account": "123456789012",
"time": "2020-10-07T01:44:24Z",
"region": "us-east-1",
"resources": [
"arn:aws:ec2:us-east-1:123456789012:fleet/fleet-9bb19bc6-60d3-4fd2-ae47-d33e68eafa08"
],
"detail": {
"description": "m3.large, ami-00068cd7555f543d5, Linux/UNIX: IPv6 is not supported for the instance type 'm3.large'. ",
"sub-type": "spotFleetRequestConfigurationInvalid"
}
}
sub-type
に指定できる値は、次のとおりです。
iamFleetRoleInvalid
-
この EC2 フリートには、インスタンスの起動または終了に必要なアクセス許可がありません。
allLaunchSpecsTemporarilyBlacklisted
-
有効な設定はありません。インスタンスを起動しようとして何回か失敗しました。詳細については、イベントの説明をご覧ください。
spotInstanceCountLimitExceeded
-
起動できるスポットインスタンスの数の上限に達しました。
spotFleetRequestConfigurationInvalid
-
設定が有効ではありません。詳細については、イベントの説明をご覧ください。
スポットフリートイベントタイプ
5 つのスポットフリートイベントタイプがあります。イベントタイプごとに、いくつかのサブタイプがあります。
イベントタイプ
EC2 スポットフリートの状態の変更
スポットフリートは、スポットフリートの状態が変更されたときに EC2 Spot Fleet State Change
イベントを Amazon EventBridge に送信します。
以下はこのイベントのサンプルデータです。
{
"version": "0",
"id": "d1af1091-6cc3-2e24-203a-3b870e455d5b",
"detail-type": "EC2 Spot Fleet State Change",
"source": "aws.ec2spotfleet",
"account": "123456789012",
"time": "2020-11-09T08:57:06Z",
"region": "us-east-1",
"resources": [
"arn:aws:ec2:us-east-1:123456789012:spot-fleet-request/sfr-4b6d274d-0cea-4b2c-b3be-9dc627ad1f55"
],
"detail": {
"sub-type": "submitted"
}
}
sub-type
に指定できる値は、次のとおりです。
active
-
このスポットフリートリクエストは検証済みです。Amazon EC2 は実行中のインスタンスを目標数分、確保しようとしています。
cancelled
-
このスポットフリートリクエストはキャンセルされており、実行中のインスタンスはありません。スポットフリートは、そのインスタンスが終了されてから 2 日後に削除されます。
cancelled_running
-
このスポットフリートリクエストはキャンセルされており、追加のインスタンスは起動されません。その既存のインスタンスは、中断または終了されるまで実行され続けます。リクエストは、すべてのインスタンスが中断されるか終了されるまで、この状態のままになります。
cancelled_terminating
-
このスポットフリートリクエストはキャンセルされており、対象のインスタンスを終了中です。リクエストは、すべてのインスタンスが終了されるまで、この状態のままになります。
expired
-
スポットフリートリクエストの有効期限が切れました。このリクエストが
TerminateInstancesWithExpiration
セットを使用して作成されている場合、後続のterminated
イベントは、インスタンスが終了済みなことを示します。 modify_in_progress
-
スポットフリートリクエストは変更中です。リクエストは、この変更が完全に処理されるまで、同じ状態を維持します。
modify_succeeded
-
スポットフリートリクエストが変更されました。
submitted
-
スポットフリートリクエストは評価中です。Amazon EC2 は目標数のインスタンスを起動する準備をしています。
progress
-
スポットフリートリクエストは受理中です。
EC2 スポットフリートのスポットインスタンスリクエストの変更
スポットフリートは、フリート内のスポットインスタンスリクエストの状態が変更されたときに EC2 Spot Fleet Spot Instance Request Change
イベントを Amazon EventBridge に送信します。
以下はこのイベントのサンプルデータです。
{
"version": "0",
"id": "cd141ef0-14af-d670-a71d-fe46e9971bd2",
"detail-type": "EC2 Spot Fleet Spot Instance Request Change",
"source": "aws.ec2spotfleet",
"account": "123456789012",
"time": "2020-11-09T08:53:21Z",
"region": "us-east-1",
"resources": [
"arn:aws:ec2:us-east-1:123456789012:spot-fleet-request/sfr-a98d2133-941a-47dc-8b03-0f94c6852ad1"
],
"detail": {
"spot-instance-request-id": "sir-a2w9gc5h",
"description": "SpotInstanceRequestId sir-a2w9gc5h, PreviousState: cancelled_running",
"sub-type": "cancelled"
}
}
sub-type
に指定できる値は、次のとおりです。
active
-
スポットインスタンスリクエストは受理された状態であり、スポットインスタンスの関連付けが完了しています。
cancelled
-
スポットインスタンスリクエストがキャンセルされている、あるいは、そのリクエストの有効期限が切れています。
disabled
-
スポットインスタンスが停止されています。
submitted
-
スポットインスタンスリクエストは送信済みです。
EC2 スポットフリートインスタンスの変更
スポットフリートは、フリート内のインスタンスの状態が変更されたときに EC2 Spot Fleet Instance Change
イベントを Amazon EventBridge に送信します。
以下はこのイベントのサンプルデータです。
{
"version": "0",
"id": "11591686-5bd7-bbaa-eb40-d46529c2710f",
"detail-type": "EC2 Spot Fleet Instance Change",
"source": "aws.ec2spotfleet",
"account": "123456789012",
"time": "2020-11-09T07:25:02Z",
"region": "us-east-1",
"resources": [
"arn:aws:ec2:us-east-1:123456789012:spot-fleet-request/sfr-c8a764a4-bedc-4b62-af9c-0095e6e3ba61"
],
"detail": {
"instance-id": "i-08b90df1e09c30c9b",
"description": "{\"instanceType\":\"r4.2xlarge\",\"image\":\"ami-032930428bf1abbff\",\"productDescription\":\"Linux/UNIX\",\"availabilityZone\":\"us-east-1a\"}",
"sub-type": "launched"
}
}
sub-type
に指定できる値は、次のとおりです。
launched
-
新しいインスタンスが起動されました。
terminated
-
このインスタンスは終了しています。
termination_notified
-
フリートのターゲット容量のスケールダウン中 (ターゲット容量 が 4 から 3 に変更される場合など) に、Amazon EC2 によってスポットインスタンスが終了されたので、インスタンス終了通知が送信されました。
EC2 スポットフリート情報
スポットフリートは、受理中にエラーが発生したときに EC2 Spot Fleet Information
イベントを Amazon EventBridge に送信します。情報イベントは、フリートがターゲット容量を満たすことをブロックしません。
以下はこのイベントのサンプルデータです。
{
"version": "0",
"id": "73a60f70-3409-a66c-635c-7f66c5f5b669",
"detail-type": "EC2 Spot Fleet Information",
"source": "aws.ec2spotfleet",
"account": "123456789012",
"time": "2020-11-08T20:56:12Z",
"region": "us-east-1",
"resources": [
"arn:aws:ec2:us-east-1:123456789012:spot-fleet-request/sfr-2531ea06-af18-4647-8757-7d69c94971b1"
],
"detail": {
"description": "r3.8xlarge, ami-032930428bf1abbff, Linux/UNIX, us-east-1a, Spot bid price is less than Spot market price $0.5291",
"sub-type": "launchSpecUnusable"
}
}
sub-type
に指定できる値は、次のとおりです。
fleetProgressHalted
-
すべての起動仕様の料金は、スポット料金を下回っているため無効です (すべての起動仕様が
launchSpecUnusable
イベントを生成しました)。スポット料金が変更されると、起動仕様が有効になる場合があります。 launchSpecTemporarilyBlacklisted
-
設定が有効ではなく、インスタンスを起動しようとして何回か失敗しました。詳細については、イベントの説明をご覧ください。
launchSpecUnusable
-
この起動仕様の料金は、スポット料金を下回っているため無効です。
registerWithLoadBalancersFailed
-
ロードバランサーにインスタンスを登録しようとして失敗しました。詳細については、イベントの説明をご覧ください。
EC2 スポットフリートのエラー
スポットフリートは、受理中にエラーが発生したときに EC2 Spot Fleet Error
イベントを Amazon EventBridge に送信します。エラーイベントは、フリートがターゲット容量を満たすことをブロックします。
以下はこのイベントのサンプルデータです。
{
"version": "0",
"id": "10adc4e7-675c-643e-125c-5bfa1b1ba5d2",
"detail-type": "EC2 Spot Fleet Error",
"source": "aws.ec2spotfleet",
"account": "123456789012",
"time": "2020-11-09T06:56:07Z",
"region": "us-east-1",
"resources": [
"arn:aws:ec2:us-east-1:123456789012:spot-fleet-request/sfr-38725d30-25f1-4f30-83ce-2907c56dba17"
],
"detail": {
"description": "r4.2xlarge, ami-032930428bf1abbff, Linux/UNIX: The associatePublicIPAddress parameter can only be specified for the network interface with DeviceIndex 0. ",
"sub-type": "spotFleetRequestConfigurationInvalid"
}
}
sub-type
に指定できる値は、次のとおりです。
iamFleetRoleInvalid
-
このスポットフリートには、インスタンスの起動または終了に必要なアクセス許可がありません。
allLaunchSpecsTemporarilyBlacklisted
-
有効な設定はありません。インスタンスを起動しようとして何回か失敗しました。詳細については、イベントの説明をご覧ください。
spotInstanceCountLimitExceeded
-
起動できるスポットインスタンスの数の上限に達しました。
spotFleetRequestConfigurationInvalid
-
設定が有効ではありません。詳細については、イベントの説明をご覧ください。