はじめに
こんにちは。
インフラエンジニアをしているアリガです。
旧世代のインスタンスタイプを利用していたりすると、AWSのハードウェアメンテンナスの対応でEC2の停止・起動する際、起動出来ないことがあります。
そのため、事前にオンデマンドキャパシティ予約をして確実に起動出来るよう試してみたいと思います。
オンデマンドキャパシティ予約の公式ページ
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/ec2-capacity-reservations.html
キャパシティ予約の作成ページ
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/capacity-reservations-create.html
事前確認
対象EC2のインスタンスタイプ、アベイラビリティゾーン、プラットフォーム、テナンシー、プレイスメントグループ、キャパシティ予約の状態、ストレージのEBS最適化の有効・無効を確認します。
※事前確認の項では、確認した値を後に使うので控えておくこと
オンデマンドキャパシティ予約を作成する
EC2>インスタンス>キャパシティーの予約から、
「オンデマンドキャパシティ予約を作成」を選んで「開始方法」を選択します。
※予約作成の項では、事前確認で控えた値をセットすること
インスタンスタイプ、EBS最適化の有無、プラットフォーム、アベイラビリティーゾーン、テナンシー、プレイスメントグループ、合計キャパシティのインスタンス数を選択する。

キャパシティ予約の開始を「今すぐ」、キャパシティ予約の終了を「手動」、インスタンスの適格性を「ターゲットに設定済み」を選択する。
※属性が一致するEC2に自動的に適用したい場合は、「オープン」を選択する。

対象EC2にオンデマンドキャパシティ予約を設定する
対象のEC2を停止する。
※キャパシティ予約設定の変更はEC2を停止していないと出来ないため。
停止後、対象EC2のアクション>インスタンスの設定>キャパシティー予約設定を変更
を選択する。

キャパシティ予約の設定を「キャパシティーの予約の指定」を選択し、キャパシティーの予約で先ほど作成したキャパシティー予約IDを選択し、「適用」を選択する。

対象EC2の起動
オンデマンドキャパシティ予約をキャンセルする
オンデマンドキャパシティ予約をキャンセルしないとEC2を常に起動しているのと同じ料金が発生するためキャンセルを忘れず行う。
EC2>インスタンス>キャパシティーの予約から、
対象のキャパシティ予約を選択し、アクション>キャンセルを選択する。

まとめ
今回はAWSのEC2メンテナンス対応についてキャパシティのリソース不足で起動出来ないことがないように、事前にキャパシティを予約しておくことでEC2の停止・起動を確実に出来ることを確認しました。
参考情報















