EC2 インスタンスの再調整に関する推奨事項 - Amazon Elastic Compute Cloud

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

EC2 インスタンスの再調整に関する推奨事項

EC2 インスタンスの再調整に関する推奨事項は、スポットインスタンス の中断リスクが高い場合に通知する新しいシグナルです。シグナルは、2 分間のスポットインスタンス中断通知よりも早く到着し、スポットインスタンス を事前に管理する機会がもたらされます。ワークロードを、中断のリスクが高くない新規または既存の スポットインスタンス に再調整することができます。

2 分間のスポットインスタンス中断通知の前に、Amazon EC2 が再調整に関する推奨事項シグナルを送信することは必ずしも可能ではありません。したがって、再調整に関する推奨事項シグナルは、2 分間の中断通知とともに到着する可能性があります。

定義された期間を持つ スポットインスタンス (スポットブロックとも呼ばれます) では、再調整に関する推奨事項を受信しません。

注記

再調整に関する推奨事項は、2020 年 11 月 5 日 00:00 UTC 以降に起動される スポットインスタンス のみをサポートしています。

実行できるアクションの再調整

以下に、実行可能な再調整アクションをいくつか挙げます。

適切なシャットダウン

スポットインスタンス の再調整に関する推奨事項シグナルを受信すると、インスタンスのシャットダウン手順を開始できます。これには、プロセスを停止する前にプロセスが完了しているのを確認することも含まれる可能性があります。例えば、システムログまたはアプリケーションログを Amazon Simple Storage Service (Amazon S3) にアップロードしたり、Amazon SQS ワーカーをシャットダウンしたり、ドメインネームシステム (DNS) からの登録解除を完了したりできます。また、作業内容を外部ストレージに保存し、後で再開することもできます。

新しい作業がスケジュールされるのを防止

スポットインスタンス の再調整に関する推奨事項シグナルを受信すると、スケジュールされた作業が完了するまでインスタンスの使用を継続しながら、新しい作業がインスタンスでスケジュールされないようにすることができます。

新しい代替インスタンスを積極的に起動

Auto Scaling グループ、EC2 フリート または スポットフリート を設定して、再調整に関する推奨事項シグナルが送信されたときに代替 スポットインスタンス を自動的に起動できます。詳細については、Amazon EC2 Auto Scaling ユーザーガイド の「Amazon EC2 Auto Scaling 容量の再調整 」およびこのユーザーガイドの EC2 フリート については 容量の再調整 を、スポットフリート については 容量の再調整 を参照してください。

再調整に関する推奨事項シグナルのモニタリング

再調整に関する推奨事項シグナルをモニタリングして、それが発されたときに、前のセクションで指定したアクションを実行できるようにすることができます。再調整に関する推奨事項シグナルは、Amazon EventBridge (旧称 Amazon CloudWatch Events) に送信されるイベントとして、および スポットインスタンス 上のインスタンスメタデータとして使用できます。

再調整に関する推奨事項シグナルをモニタリングする:

使用アイテム Amazon EventBridge

再調整に関する推奨事項シグナルが スポットインスタンス に対して発されると、そのシグナルのイベントが Amazon EventBridge に送信されます。EventBridge がルールで定義されているパターンに一致するイベントパターンを検出すると、EventBridge はルールで指定されているターゲットを呼び出します。

次に、再調整に関する推奨事項シグナルのイベント例を示します。

{ "version": "0", "id": "12345678-1234-1234-1234-123456789012", "detail-type": "EC2 Instance Rebalance Recommendation", "source": "aws.ec2", "account": "123456789012", "time": "yyyy-mm-ddThh:mm:ssZ", "region": "us-east-2", "resources": ["arn:aws:ec2:us-east-2:123456789012:instance/i-1234567890abcdef0"], "detail": { "instance-id": "i-1234567890abcdef0" } }

次のフィールドは、ルールで定義されているイベントパターンになります。

"detail-type": "EC2 Instance Rebalance Recommendation"

イベントが再調整に関する推奨事項イベントであることを特定します

source": "aws.ec2

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

EventBridge ルールを作成します

EventBridge ルールを作成し、イベントパターンがルールに一致したときに実行するアクションを自動化できます。

次の例では、Amazon EC2 が再調整に関する推奨事項シグナルを発するたびに、E メール、テキストメッセージ、またはモバイルプッシュ通知を送信する EventBridge ルールを作成します。シグナルは EC2 Instance Rebalance Recommendation イベントとして発され、ルールによって定義されたアクションがトリガーされます。

再調整に関する推奨事項イベントの EventBridge ルールを作成するには

  1. https://console.aws.amazon.com/events/ で Amazon EventBridge コンソールを開きます。

  2. [Create rule] を選択します。

  3. ルールの [Name (名前)] を入力し、必要に応じて説明を入力します。

    ルールには、同じリージョン内および同じイベントバス上の別のルールと同じ名前を付けることはできません。

  4. [Define pattern (パターンの定義)] で、[Event pattern (イベントパターン)] を選択します。

  5. [Event matching pattern (イベントマッチングパターン)] で、[Custom pattern (カスタムパターン)] を選択します。

  6. [Event pattern (イベントパターン)] ボックスで、EC2 Instance Rebalance Recommendation イベントに一致する次のパターンを追加し、[Save (保存)] を選択します。

    { "source": [ "aws.ec2" ], "detail-type": [ "EC2 Instance Rebalance Recommendation" ] }
  7. [Select event bus (イベントバスを選択)] で、[AWS default event bus (AWSデフォルトイベントバス)] を選択します。アカウントの AWS のサービスがイベントを発行すると、常にアカウントのデフォルトのイベントバスに移動します。

  8. [Enable the rule on the selected event bus (選択したイベントバスのルールを有効にする)] がオンになっていることを確認します。

  9. イベントが発生したときに E メール、テキストメッセージ、またはモバイルプッシュ通知を送信するには、[Target (ターゲット)] で、[SNS topic (SNS トピック)] を選択します。

  10. [Topic (トピック)] で、既存のトピックを選択します。先ず、Amazon SNS コンソールを使用して Amazon SNS トピックを作成する必要があります。詳細については、Amazon Simple Notification Service 開発者ガイド の「Amazon SNS を使用した Application-to-Person (A2P) メッセージング」を参照してください。

  11. [Configure input (入力の設定)] で、E メール、テキストメッセージ、またはモバイルプッシュ通知の入力を選択します。

  12. [Create] を選択します。

詳細については、Amazon EventBridge ユーザーガイド の「AWS のサービスのルールを作成する」および「イベントパターン」を参照してください。

インスタンスメタデータの使用

インスタンスメタデータカテゴリ events/recommendations/rebalance は、スポットインスタンスに対して再調整に関する推奨事項シグナルが発されたおおよその時間 (UTC) を示します。

再調整に関する推奨事項シグナルを 5 秒ごとに確認し、再調整に関する推奨事項に基づいて行動する機会を見逃さないようにすることをお勧めします。

スポットインスタンス が再調整に関する推奨事項を受信した場合、シグナルが発行された時刻がインスタンスメタデータに存在します。信号が発された時間は以下のように取得できます。

PS C:\> Invoke-RestMethod -uri http://169.254.169.254/latest/meta-data/events/recommendations/rebalance

次に、再調整に関する推奨事項シグナルが スポットインスタンス に対して送信された時刻を UTC で示す出力例を示します。

{"noticeTime": "2020-10-27T08:22:00Z"}

インスタンスに対してシグナルが送信されていない場合、events/recommendations/rebalance は存在せず、取得しようとすると HTTP 404 エラーが表示されます。

再調整に関する推奨事項シグナルを使用するサービス

Amazon EC2 Auto Scaling、EC2 フリート、スポットフリート は再調整に関する推奨事項シグナルを使用して、実行中のインスタンスが 2 分間のスポットインスタンス中断通知を受信する前に、フリートを新しい スポットインスタンス で事前に拡張することで、ワークロードの可用性を維持しやすくなります。このようなサービスでは、スポットインスタンス の可用性に影響する変更を事前にモニタリングし、対応させることができます。詳細については、以下を参照してください。