Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

Cloudera Managerのメトリクス可視化クエリ言語tsqueryとチャートビルダー

More than 3 years have passed since last update.

Cloudera Manager には豊富なチャート機能が付属していて、運用や障害解析を楽にしてくれる。

チャート機能を使った運用については、下記の記事などが詳しい。

C5-チャートの一例.png

このチャート、実は全てSQLライクなクエリ言語「tsquery」で作成されている。
このtsqueryを使うと、Cloudera Manager 上であらゆるチャートを自分で作成することが可能だ。

チャートビルダーページを開くには、トップメニューから チャートチャートビルダー を選択すればよい。

CM58-チャートビルダー.png

tsquery の使用方法を覚えるには、右上の ? をクリックしてヘルプ + チュートリアルを見るのが簡単だ。

CM58-チャートビルダーのヘルプ.png

チュートリアルの各クエリの下の お試しください をクリックすれば、チャートビルダーが構築できる様々なチャートの例を見ることができる。

以下、チュートリアルに沿って例文を紹介していく。
参考としてtsqueryの例文を掲載しているが、自分で一からクエリを記述する場合はチャートタイプなどを適切に選択しないと同じクエリを使っても同一のチャートを得られるわけではないことに注意すること。

チュートリアルの紹介

単一行チャート

以下の例は、サービスモニタ (Cloudera Manager の監視プロセスの一つ) のファイルディスクリプタの数をチャート化して表示する。

select fd_open where category = ROLE and roleType = SERVICEMONITOR

CM58-チャートビルダーのサンプル1.png

メトリクスの種類は、ヘルプにある 測定値のリスト をクリックすれば確認できる。

CM58-チャートビルダー-測定値のリスト.png

複数行チャート

以下の例は、サービスモニタとホストモニタ (これも CM 監視プロセスの一つ) のファイルディスクリプタの数を、同じチャートにまとめて表示する。

select fd_open where category = ROLE and (roleType = SERVICEMONITOR or roleType = HOSTMONITOR)

CM58-チャートビルダーのサンプル2.png

複数のチャート

以下の例は、全ホストの1分 / 5分 / 15分のロードアベレージをホスト毎のチャートとして表示する。これは、「ロードアベレージが最も高いホストはどれか?」という質問に回答するのに役に立つ。

select load_1, load_5, load_15 where category = HOST

CM58-チャートビルダーのサンプル3.png

積み上げチャート

以下の例は、Cloudera 管理サービス(先述のサービスモニタやホストモニタなど)のCPU使用量を積み上げチャートとして表示する。
これにより、個々のロールのCPU使用率及び合計CPU使用率を簡単に確認することができる。

select cpu_system_rate + cpu_user_rate where category=ROLE and serviceType = MGMT

CM58-チャートビルダーのサンプル4.png

積み上げチャートと折れ線チャート

以下の例は、サービスモニタの最大許容メモリと現在のヒープサイズ両方を表示している。
最大許容メモリは折れ線(このチャートでは事実上の直線)、現在のヒープサイズは面グラフとして表示するため、メモリを後どれくらい使うことができるのかを明確に確認することができる。

select jvm_max_memory_mb, jvm_heap_used_mb where category = ROLE and roleType = SERVICEMONITOR

CM58-チャートビルダーのサンプル5.png

ヒストグラム

以下の例は、ロールごとのGCの数をヒストグラムの形で集計表示する。

select sum(integral(jvm_gc_rate)) where category = ROLE

CM58-チャートビルダーのサンプル6.png

ヒートマップ

以下の例は、全ディスクデバイスの瞬間的なディスク使用量をヒートマップとして表示する。

select last(utilization) where category = DISK and logicalPartition = false

CM58-チャートビルダーのサンプル7.png

ドキュメント

http://www.cloudera.com/documentation/enterprise/latest/topics/cm_dg_tsquery.html

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away