トラブルシューティングに利用可能なツール - Amazon EMR

トラブルシューティングに利用可能なツール

クラスターのエラーを特定して修正するには、このページで取り上げるツールを利用すると良いでしょう。場合によっては、クラスターの起動時に一部のツールを初期化する必要があります。その他のツールは、デフォルトで、いずれのクラスターにも使用できます。

EMR クラスターの詳細を表示する

EMR クラスターとジョブの実行に関する詳細情報を取得するには、AWS Management Console、AWS CLI、または EMR API を使用します。AWS Management Console と AWS CLI の使用方法の詳細については、「クラスターステータスと詳細の表示」を参照してください。

Amazon EMR コンソールの詳細ペイン

Amazon EMR コンソールの [クラスター] リストに、アカウントと AWS リージョン内の各クラスターのステータスに関する概要情報が表示されます。リストには、過去 2 か月間に起動したアクティブなクラスターと終了させたクラスターがすべて表示されます。[Clusters] リストから、クラスターの [Name] を選択するとクラスターの詳細を表示できます。この情報は、簡単に操作できるよう別々のカテゴリに分類されています。

クラスターの詳細ページで利用できる [アプリケーションユーザーインターフェイス] は、トラブルシューティングに役立ちます。YARN アプリケーションのステータスが表示されるほか、Spark アプリケーションなど一部では、ジョブ、ステージ、エグゼキューターなど、さまざまなメトリクスやファセットの詳細を表示できます。詳細については、「アプリケーションの履歴を表示する」を参照してください。この機能は、Amazon EMR リリース 5.8.0 以降でのみ使用できます。

Amazon EMR コマンドラインインターフェイス

--describe 引数を使用して、AWS CLI からクラスターに関する情報を検索できます。

Amazon EMR API

DescribeJobFlows アクションを使用して、API からクラスターに関する情報を検索できます。

EMR クラスターエラーの詳細を表示する

EMR クラスターがエラーで終了すると、DescribeClusterListClusters の各 API からエラーコードとエラーメッセージが返ります。クラスターエラーによっては、ErrorDetail データ配列が障害のトラブルシューティングに役立つ場合があります。

ErrorDetail データを含むエラーコードのリストについては、ErrorDetail 情報のあるエラーコード を参照してください。

注記

適切な最新情報を得られるよう、エラーメッセージは継続的に改善されています。ErrorMessage のテキストは、変更される可能性があるため、解析はお勧めしません。

スクリプトを実行し、Amazon EMR プロセスを設定する

トラブルシューティングプロセスの一環として、クラスターでのカスタムスクリプトの実行や、クラスタープロセスの表示と設定が有効な場合があります。

アプリケーションプロセスを表示して再起動する

潜在的な問題を診断するために、クラスターで実行中のプロセスを表示すると役立つことがあります。クラスターのマスターノードに接続して、クラスタープロセスを停止および再起動できます。詳細については、「Amazon EMR とアプリケーションプロセス (デーモン) を表示して再起動する」を参照してください。

SSH 接続なしでコマンドとスクリプトを実行する

クラスターでコマンドまたはスクリプトをステップとして実行するために、マスターノードへの SSH 接続を確立せずに、command-runner.jar ツールまたは script-runner.jar ツールを使用できます。詳細については、「Amazon EMR クラスターでコマンドとスクリプトを実行する」を参照してください。

ログファイルを表示する

Amazon EMR と Hadoop は両方とも、クラスターの実行時にログファイルを生成します。クラスターを起動したときの設定に応じて、さまざまなツールからログファイルにアクセスできます。詳細については、「クラスターのログ記録とデバッグを設定する」を参照してください。

マスターノードのログファイル

すべてのクラスターは、マスターノードの /mnt/var/log/ ディレクトリにログファイルを発行します。ログファイルはクラスターが実行されている間のみ利用可能です。

Simple Storage Service (Amazon S3) にアーカイブされたログファイル

クラスターを起動して、Simple Storage Service (Amazon S3) のログパスを指定すると、クラスターはマスターノードの /mnt/var/log/ に保存されているログファイルを Simple Storage Service (Amazon S3) に 5 分間隔でコピーします。これによって、クラスターが終了された後でも確実にログファイルにアクセスできます。ファイルは 5 分間隔でアーカイブされるため、突然終了したクラスターの最後の数分は利用できない可能性があります。

EMR クラスターのパフォーマンスを監視する

Amazon EMR には、クラスターのパフォーマンスを監視するためのいくつかのツールが用意されています。

Hadoop ウェブインターフェイス

すべてのクラスターは、クラスターに関する情報を含むマスターノードに Web インターフェイス一式を発行します。SSH トンネルを使用してマスターノードの Web ページに接続することによって、これらの Web ページにアクセスできます。詳細については、「Amazon EMR クラスターでホストされているウェブインターフェイスを表示する」を参照してください。

CloudWatch メトリクス

すべてのクラスターが CloudWatch にメトリクスを報告します。CloudWatch はメトリクスを追跡するウェブサービスです。これを使用して、メトリクスにアラームを設定できます。詳細については、「CloudWatch で Amazon EMR のメトリクスをモニタリングする」を参照してください。