状態が Degraded または Severe となっている Elastic Beanstalk 環境をトラブルシューティングする方法を教えてください。

所要時間2分
0

状態が Degraded または Severe となっている AWS Elastic Beanstalk 環境をトラブルシューティングしたいです。

解決策

AWSSupport-TroubleshootElasticBeanstalk ランブックを実行する

注: ランブックを開始する前に、AWS Identity and Access Management (IAM) のユーザーまたはロールに必要なアクセス許可があることを確認してください。詳細については、AWSSupport-TroubleshootElasticBeanstalk の「必要な IAM アクセス許可」を参照してください。

次の手順を実行します。

  1. AWS Systems Manager コンソールを開きます。
  2. [リージョン] リストで、AWS リージョンを選択します。
  3. ナビゲーションペインで [共有リソース] を展開し、[ドキュメント] を選択します。
  4. 検索バーに AWSSupport-TroubleshootElasticBeanstalk と入力し、該当するランブックを選択します。
  5. [オートメーションの実行] を選択します。
  6. 入力パラメータに次の情報を入力します。
    (オプション) AutomationAssumeRole: オートメーションにアクションの実行を許可する IAM ロールの Amazon Resource Network (ARN) を入力します。ロールが指定されていない場合、Automation は、ランブックを開始するユーザーのアクセス許可を使用します。
    ApplicationName Elastic Beanstalk アプリケーションの名前を入力します。
    EnvironmentName Elastic Beanstalk 環境の名前を入力します。
    (オプション) AWSS3UploaderLink AWS サポートから提供された、Elastic Beanstalk 環境からログバンドルをアップロードするための URL。このオプションは、AWS サポートプランを購入し、サポートケースをオープンしたお客様のみが使用できます。
  7. [実行] を選択します。ランブックが実行するアクションのリストについては、AWSSupport-TroubleshootElasticBeanstalkドキュメントステップを参照してください。
  8. オートメーションによって実行されたすべてのアクションの詳細と、検出された問題を確認します。

注: AWS リソースのさらなるトラブルシューティング、管理、コスト削減に役立つように、AWS サポートが AWS Systems Manager に提供している定義済みのランブックを使用してください。これらのランブックには、AWSSupport または AWSPremiumSupport というプレフィックスがあります。詳細については、「Systems Manager Automation ランブックのリファレンス」を参照してください。

Elastic Beanstalk 環境を手動でトラブルシューティングする

Elastic Beanstalk 環境で黄色または赤色のヘルスステータス警告が表示される場合、一般的な問題が原因である可能性があります。警告について詳しくは、「ヘルスの色とステータス」を参照してください。

ヘルス警告の原因を特定する

次の手順を実行します。

  1. Elastic Beanstalk コンソールを開きます。
  2. アプリケーションを選択します。
  3. ナビゲーションペインで [イベント] を選択します。
  4. [タイプ] 列で、[重要度] タイプがWARN である最近のイベントを探し、後でトラブルシューティングできるようにこれらのイベントを書き留めておきます。
  5. ナビゲーションパネルで [ダッシュボード] を選択します。
  6. **[ヘルス]セクションで、[原因]**を選択します。

これで、[拡張ヘルス] の概要ページで環境全体のヘルスを確認できるようになりました。詳細については、「環境管理コンソールでの拡張ヘルス監視」を参照してください。

特定されたヘルス警告の原因をトラブルシューティングする

[拡張ヘルスの概要] ページで特定したヘルスの問題に基づいて、次の方法のいずれかを選び、トラブルシューティングを行います。

  • ロードバランサーのヘルスチェックが不合格となる場合は、「Elastic Beanstalk で Elastic Load Balancing のヘルスチェックをトラブルシューティングする方法を教えてください」を参照してください。
  • その他のヘルスチェックの失敗については、「基本的なヘルスレポート機能」を参照してください。拡張ヘルスレポートについては、「Elastic Beanstalk の拡張ヘルスレポートと監視」を参照してください。
  • 時間がかかりすぎる操作について、Elastic Beanstalk のイベントストリームを使用している進行中の操作を特定します。Amazon EC2 インスタンスにログインして /var/log/eb-engine.log を監視することもできます。
    注: 環境のデプロイまたは構成の更新には、通常の操作よりも時間がかかります。
  • HTTP リターンコード 4xx と 5xx の数が増加している場合は、プロキシサーバーのアクセスログを監視して原因を特定します。次に、アクセスログとアプリケーションログを比較して、エラーが増加しているパターンを特定します。詳細については、「一般的なエラー」を参照してください。
    注: プロキシサーバーログはユーザーの設定に応じて、Apache (/var/log/httpd/access_log、NGINX (/var/log/nginx/access_log))、または Internet Information Services (C:\inetpub\logs\LogFiles) のアクセスログである場合があります。
  • インスタンスの状態が Severe である場合は、発行された警告に基づいて解決策を選択してください。詳細については、「Amazon EC2 インスタンスに関する問題のトラブルシューティング」を参照してください。
    注: 進行中のデプロイ、Amazon EC2 インスタンスのヘルスデーモンの障害、または高いリソース使用率が原因で、インスタンスの状態が Severe になることがあります。環境内の警告状態は一時的なものであり、問題の原因に対処した後はグリーンに変わります。詳細については、「ヘルスの色とステータス」を参照してください。
  • Elastic Beanstalk ヘルスデーモンに障害が発生した場合は、Amazon EC2 インスタンスにログインし、/var/log/messages/var/log/healthd/daemon.log を監視して原因を特定します。
    : "データを送信しているインスタンスがありません" というメッセージが表示された場合は、「EC2 インスタンスが Elastic Beanstalk と通信できずに発生するエラーを解決する方法を教えてください」を参照してください。

関連情報

Systems Manager Automation を使用してオートメーション操作を実行する

オートメーションを設定する

コメントはありません

関連するコンテンツ