AWSでは、停止時間がコスト削減になります。
なるべく停止時間を増やし、必要な時間に、AWS Lambda等でスケジュールし起動します。
起動ジョブはキックできましたが、インスタンスが開始できないエラーがまれにあります。
起動ジョブではエラー検知できないような(起動のキックは出来ているので)。
インスタンス開始エラー。We crrrently do not have sufficient r5.2xlarge capacitly in the Availablity Zone you requested (ap-northeast-1a).Our system will be working on provisioning additional capacity.
上記、エラーでインスタンスが起動できない場合は、いわゆる
「AWS環境のリソース不足です。」
ユーザー側ではどうにもできません。AWS側のリソースが空いた隙に(他のユーザーがシャットダウンしリソースが解放された等)
インスタンスを起動する必要があります。
AWSのリソース不足による起動できない問題を回避するには?「オンデマンドキャパシティ予約」
Amazon EC2 でオンデマンドキャパシティー予約の提供を開始
2018年にAWSで、いわゆる
リザーブドインスタンスしなくても期間自由にキャパシティを予約
出来る機能が提供されました。
これはコスト的にどういうことかといいますと
オンデマンドキャパシティ予約している期間は、インスタンスを停止してもコストがかかる
つまり、AWSキャパシティ(AWSリソース)を常に借りている状態ということです。
AWSリソースを常に借りている状態なのに、AWSリソース不足で起動しない、なんてことはなくなるという機能です。
逆に、
- AWSにリソースが無い状態ではオンデマンドキャパシティ予約の申し込みすら出来ない
- 停止時間でコスト削減できないので、再起動後に起動してこないインスタンス開始エラー防止しかできない
- オンデマンドキャパシティ予約している期間、インスタンスタイプを変更できない
という難点はありますが、これもオンデマンドキャパシティ予約をリアルタイムに解除すればインスタンスタイプの変更は可能です。