Ganglia の概要ページが空白となっている Amazon EMR クラスターを解決したいです。
解決策
注: これは、Amazon EMR リリースバージョン 5.30.0 および 6.0.0 に影響する既知の問題です。この問題は Amazon EMR リリースバージョン 5.30.1 で解決されています。
Amazon EMR 5.30.0 または 6.0.0 でこの問題を解決するには、cluster_view.php ファイルを手動または、Amazon EMR ステップで変更します。
cluster_view.php ファイルを手動で変更する
次の手順を実行します。
-
SSH を使用して Amazon EMR プライマリノードに接続します。
-
/usr/share/ganglia/cluster_view.php ファイルを開きます。
-
26 行目で、$context_metrics = "" を $context_metrics = array() に変更します。
例:
25 function get_picker_metrics($metrics, $reports, $gweb_root, $graph_engine){26 $context_metrics = array();
27 if (count($metrics)) {
-
Ganglia UI を更新すると、クラスターの概要ページが表示されます。
cluster_view.php ファイルを Amazon EMR ステップで変更する
注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、「AWS CLI で発生したエラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。
次の手順を実行します。
- 次のコマンドを .sh ファイルにコピーします。
sudo sed -i '26s/ \$context_metrics \= \"\"\;/ \$context_metrics \= array\(\)\;/g' /usr/share/ganglia/cluster_view.php
注: ファイルは、Amazon Simple Storage Service (Amazon S3) バケットに保存できます。
- add-steps コマンドを実行し、Amazon EMR ステップとして .sh ファイルをクラスターに追加します。
aws emr add-steps --cluster-id example-cluster-id --steps Type=CUSTOM_JAR,Name="Fix Ganglia",Jar="s3://us-east-1.elasticmapreduce/libs/script-runner/script-runner.jar",ActionOnFailure=CONTINUE,Args=[example-s3-bucket-sh-file]
注: example-cluster-id はお使いのクラスター ID に、example-s3-bucket-sh-file は .sh ファイルの Amazon S3 パスに置き換えます。
- Ganglia UI を更新すると、クラスターの概要ページが表示されます。
関連情報
Ganglia
Ganglia のメトリクスを確認する