質問・問題
特定のEC2インスタンスを起動しようとしたところ、特に変更は行っていないのに以下のエラーが表示され起動ができません。
ErrorCode:Server.insufficientInstanceCapacity |
【ご質問背景】
毎日夜に止めて朝に起動している運用を行っているインスタンスなど
回答・解決方法
EC2のキャパシティ不足が原因となっています。
予想を超えるニーズが発生することで、リソースが不足し、EC2起動に失敗する可能性があります。
リソースは継続的に追加されますので、一定の日時を経過すると解消される可能性が高いです。
しかし、キャパシティが不足になる可能性を0にはできないため、「予防的対応」と「発生時対応」それぞれを設計・運用に組み込むことを推奨しております。
EC2のキャパシティ不足への対応
1、予防的対応
- AZ指定のRI購入
- 事前に購入頂く必要があるが、キャパシティの予約が可能
- インスタンスの紐づけはできない
- キャパシティ予約機能の利用
- インスタンスの紐づけも可能
- Zonal RIと違い、短期的な設定が可能
2、発生時対応
- リトライの実施
- 間隔を空けて、リトライ頂くことで起動する場合あり
- スクリプトなどで実装頂くことで、上がるまでのリトライも可能
- インスタンスタイプの変更
- 他インスタンスへの乗り換え候補を事前に決めておくことを推奨
(r5 -> r4、m5-> m4など)
- 他インスタンスへの乗り換え候補を事前に決めておくことを推奨
- AZの変更
- 設計上問題なければ、キャパシティの余裕のある別AZへのデプロイを実施
(事前に考慮された設計をすることが前提)
- 設計上問題なければ、キャパシティの余裕のある別AZへのデプロイを実施
また、キャパシティの状況は刻一刻と変化しており、確かな状況をお客様にお伝えすることができないため、サーバーワークス・AWS共にお問い合わせいただいてもお答えすることはできません。(長期的な観測も含みます)
参考記事
インスタンスの起動に関する問題のトラブルシューティング
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/troubleshooting-launch.html
インスタンスタイプの変更
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/WindowsGuide/ec2-instance-resize.html