カタカタブログ

SIerで働くITエンジニアがカタカタした記録を残す技術ブログ。Java, Oracle Database, Linuxが中心です。たまにRuby on Railsなども。

Cloudera Managerのチャート機能でリソース使用状況を可視化する

前回、Hadoopのパフォーマンスを計測するベンチマークの使い方を見た。
totech.hateblo.jp

通常、パフォーマンス計測時には裏でdstatやsarのようなサーバのリソース使用状況を取得するツールを走らせておくが、これらはログとして保管したり報告資料を作る上では便利だが、計測中にリソースを眺める分にはやや見づらい。
そこで、Cloudera Managerのチャート機能を使えば、リアルタイムにリソース使用状況をグラフ化できてとても見やすくなる。
チャート機能はtsqueryというSQLのようなクエリを登録することで取得対象のリソースを定義したり、where句で取得対象を絞ったりできる。

以下に基本的な設定内容を以下にまとめる。

リソース tsquery
CPU select cpu_percent
Load Average select load_1
メモリ select physical_memory_used
スワップ select swap_used
ネットワークIn select bytes_receive_rate
ネットワークOut select bytes_transmit_rate
ディスクread select read_bytes_rate where roleType = DATANODE
ディスクwrite select write_bytes_rate where roleType = DATANODE

これで以下のようなグラフができる。
f:id:osn_th:20160720102332p:plain

tsqueryを使えば、その他にもさまざまな指標が取得できる。取得可能なメトリクスの一覧は以下のClouderaのドキュメントにのっているのでこれを参考にいろいろ組み合わせられる。
http://www.cloudera.com/documentation/enterprise/5-3-x/topics/cm_metrics.html

以上!

Hadoop関連書籍(過去に読んだ本)

Hadoop 第3版

Hadoop 第3版

Hadoop徹底入門 第2版 オープンソース分散処理環境の構築

Hadoop徹底入門 第2版 オープンソース分散処理環境の構築