スポット料金が上限価格を超えていなくても、スポットインスタンスが終了するのはなぜですか?

最終更新日: 2021 年 9 月 21 日

Amazon Elastic Compute Cloud (Amazon EC2) は、設定した上限価格がスポット料金よりも高いにもかかわらず、スポットインスタンスを終了しています。これをトラブルシューティングするにはどうすればよいですか?

解決方法

Amazon EC2 は、次の理由により、お客様の上限価格がスポット料金より高い場合でも、スポットインスタンスを終了する場合があります。

  • スポット容量の不足 - Amazon EC2 は、容量が必要になったときにスポットインスタンスを中断します。Amazon EC2 では、容量を再利用するためにインスタンスを再利用することがよくあります。スポットインスタンスは、ホストのメンテナンスやハードウェアの廃止などの問題で終了する場合もあります。
  • Amazon EC2 がスポットインスタンスリクエストの制約を満たせない: リクエストに起動グループや特定のアベイラビリティーゾーングループなどの制約が含まれている場合、その制約を満たすことができなくなると、スポットインスタンスはグループとして終了します。

上限価格を高く設定しても、スポットインスタンスが利用可能になることは保証されません。詳細については、How Spot Instances work を参照してください。

: Amazon EC2 がスポットインスタンスを中断すると、スポットインスタンスはデフォルトで終了します。このデフォルトの動作を休止に変更するか、インスタンスを終了する代わりに停止することができます。詳細については、中断動作を参照してください。

Amazon EC2 がスポットインスタンスを中断した理由を判断するには、以下を実行します。

  1. Amazon EC2 コンソールを開いて、[Spot Requests] (スポットリクエスト) を選択します。
  2. 終了したスポットインスタンスの [Request ID] (リクエスト ID) を選択します。
  3. [Description] (説明) セクションの下の [Status] (ステータス) フィールドを表示して、インスタンスが終了した理由を説明する理由コードを確認します。例えば、Amazon EC2 に十分なスポット容量がない場合、[Status] (ステータス) フィールドには「instance-terminated-no-capacity」と表示されます。理由コードの完全なリストについては、スポットリクエストステータスコードを参照してください。

スポットインスタンスの中断通知を使用して、潜在的な中断を回避できます。詳細については、Taking advantage of Amazon EC2 Spot Instance interruption notices を参照してください。