Amazon Elastic Compute Cloud (Amazon EC2) インスタンスが Amazon EC2 Auto Scaling グループの一部です。ヘルスチェックの失敗が原因で Amazon EC2 Auto Scaling が終了することなく、インスタンスを再起動したい。どうすればよいですか?
簡単な説明
Amazon EC2 Auto Scaling グループの inService 状態のインスタンスを停止して起動すると、Amazon EC2 Auto Scaling はインスタンスを終了します。Amazon EC2 Auto Scaling は、再起動中にインスタンスが停止中または停止状態になったときにヘルスチェックに失敗するため、これを行います。
Amazon EC2 Auto Scaling がインスタンスを異常状態と診断して終了させることなく、インスタンスを停止して起動するには、以下の手順のいずれかを使用します。
- インスタンスをスタンバイ状態にする
- グループからインスタンスをデタッチする
- ヘルスチェックのプロセスを停止する
解決方法
インスタンスをスタンバイ状態にする
Amazon EC2 Auto Scaling グループのインスタンスを再起動するには、まずインスタンスをスタンバイ状態にします。これは、Amazon EC2 Auto Scaling がスタンバイ状態のインスタンスに対してヘルスチェックを実行しないためです。Amazon EC2 Auto Scaling グループで常に、プロセスを通じてインスタンスを管理する必要がある場合はこのオプションを選択します。これは、Auto Scaling グループがスタンバイ状態であってもインスタンスを管理するためです。
これらのステップに従うことで、インスタンスをスタンバイ状態にして、再起動し、またサービスに戻すことができます。
- Amazon EC2 コンソールを開きます。
- ナビゲーションペインの [Auto Scaling] で、[Auto Scaling グループ] を選択します。
- 再起動するインスタンスのグループを選択します。[インスタンス] ビューで、再起動するインスタンスを選択します。
- [アクション] から、[スタンバイに設定] を選択します。[スタンバイに設定] ページで、[スタンバイに設定] を選択します。
- ナビゲーションペインで、[Instances] (インスタンス) の下にある [Instances] (インスタンス) を選択します。
注意: オプションとして、[負荷を分散するため、新しいインスタンスを Auto Scaling グループに追加します] を選択して、グループのキャパシティーを維持することもできます。
- スタンバイ状態に設定するインスタンスを選択します。[アクション]、[インスタンスの状態]、[再起動] の順に選択します。
- インスタンスをもう一度選択し、[ステータスチェック] ビューを選択します。[システムステータスのチェック] および [インスタンスステータスのチェック] に合格することを確認します。
- ナビゲーションペインの [Auto Scaling] で、[Auto Scaling グループ] を選択します。
- スタンバイ状態に設定する対象のインスタンスのグループを選択します。
- 再起動したインスタンスを選択します。[アクション] を選択し、[実行中に設定] を選択します。[実行中に設定] ページで、[実行中に設定] を選択します。
グループからインスタンスをデタッチする
Amazon EC2 Auto Scaling グループからインスタンスをデタッチして、Amazon EC2 Auto Scaling グループから独立してインスタンスを管理できます。インスタンスを再起動したら、Amazon EC2 Auto Scaling グループにインスタンスをもう一度アタッチすることも、アタッチせずにおいておくこともできます。
以下のステップでは、Amazon EC2 Auto Scaling グループからインスタンスをデタッチし、インスタンスを再起動します。その後、再度グループにインスタンスをアタッチします。
- Amazon EC2 コンソールを開きます。
- ナビゲーションペインの [Auto Scaling] で、[Auto Scaling グループ] を選択します。
- 再起動するインスタンスのグループを選択します。[インスタンス] ビューで、インスタンスを選択します。
- [Actions] (アクション) を選択して、[Detach] (デタッチ) を選択します。
- [Detach Instance] (インスタンスのデタッチ) ページで、[インスタンスのデタッチ] (インスタンスのデタッチ) を選択します。
注意: オプションとして、[Add a new instance to the Auto Scaling group to balance the load] (負荷を分散するため、新しいインスタンスを Auto Scaling グループに追加します) を選択し、デタッチするインスタンスを置き換えることもできます。
- ナビゲーションペインで、[Instances] (インスタンス) の下にある [Instances] (インスタンス) を選択します。
- デタッチしたインスタンスを選択します。[アクション]、[インスタンスの状態]、[再起動] の順に選択します。
- インスタンスを選択し、[ステータスチェック] ビューを選択します。[システムステータスのチェック] および [インスタンスステータスのチェック] に合格することを確認します。
- インスタンスを選択し、[アクション]、[インスタンスの設定]、[Auto Scaling グループにアタッチする] の順に選択します。
- [Auto Scaling グループにアタッチする] で、[インスタンスを以下へアタッチする:] の下の [既存の Auto Scaling グループ] を選択します。インスタンスをデタッチしたグループを選択するか、検索します。次に、[アタッチ] を選択します。
ヘルスチェックのプロセスを停止する
Auto Scaling グループのヘルスチェックのプロセスを停止して、Amazon EC2 Auto Scaling でインスタンスを終了することなく、インスタンスを再起動できます。
警告: プロセスの停止は Auto Scaling グループのすべてのインスタンスに影響します。プロセスを再開するまでは、Amazon EC2 Auto Scaling は異常状態のインスタンスを置き換えません。残りのインスタンスに対して Amazon EC2 Auto Scaling でヘルスチェックを実行する必要がある場合は、前述のオプションの 1 つを選択します。
グループのヘルスチェックのプロセスを停止し、インスタンスを再起動し、グループのヘルスチェックのプロセスを再開するには、これらのステップに従います。
- Amazon EC2 コンソールを開きます。
- ナビゲーションペインの [Auto Scaling] で、[Auto Scaling グループ] を選択します。
- 再起動するインスタンスのグループを選択します。
- [詳細] ビューで、[編集] を選択します。
- [停止したプロセス] の下の [ヘルスチェック] を選択します。その後、[保存] を選択します。
- ナビゲーションペインで、[インスタンス] の下にある [インスタンス] を選択します。
注意: オプションとして、[負荷を分散するため、新しいインスタンスを Auto Scaling グループに追加します] を選択して、グループのキャパシティーを維持することもできます。
- 再起動したインスタンスを選択します。[アクション]、[インスタンスの状態]、[再起動] の順に選択します。
- インスタンスを選択し、[ステータスチェック] ビューを選択します。[システムステータスのチェック] および [インスタンスステータスのチェック] に合格することを確認します。
- ナビゲーションペインの [Auto Scaling] で、[Auto Scaling グループ] を選択します。
- 再起動するインスタンスのグループを選択します。
- [詳細] ビューで、[編集] を選択します。[停止したプロセス] で、[ヘルスチェック] をオフにして [保存] を選択します。
関連情報
トラブルシューティングするために、異常のある Amazon EC2 インスタンスの Auto Scaling の終了を遅らせる方法を教えてください。