Metricbeatで収集したメトリクスデータをKibanaで可視化する

Kibanaダッシュボード

今回は、metricbeatで収集したメトリクスデータをKibanaで可視化する。一応、metricbeatに付属のKibana用ダッシュボード(前々回登録済み)を使うがmetricbeat 8系とKibana8系の組み合わせではサクッとはいかない様子。自身でビジュアライズ作成を頑張ることになりそう。

Metricbeatで取得したメトリック情報をKibanaダッシュボードで表示 1
前回作成したKibana用のユーザー(非スーパーユーザー)でログインする。このユーザーはKibanaの一部のメニューが表示されなかったりElasticsearchに対する一部の高度な操作ができないが通常はこのユーザーで困ることはない。(今回はこのKibana用ユーザーだけでいける)
どうしてもスーパーユーザー権限が必要な操作を行う場合はelasticユーザーでログインし直す。

Metricbeatで取得したメトリック情報をKibanaダッシュボードで表示 2
画面左上の (ハンバーガーメニューアイコン)をクリック①し、
メニュー左列の「Discover」をクリック②する。

Metricbeatで取得したメトリック情報をKibanaダッシュボードで表示 3
おそらく初めてKibanaでDiscoverを見る場合は取得したデータは何も表示されない筈。過去にデータを見ていた場合は直近に閲覧したデータの最新状態等が表示される。
左上の水色のドロップダウンメニューをクリック①する。
「データビュー」の (検索)欄に「metricbeat-*」と入力してみる。過去にMetricbeatから収集したデータを見たことがない(metricbeatのデータビューを作成していない)のであれば、おそらく「metricbeat-* doesn't match any options」と表示されてデータは表示されない筈。
データビューを作成」をクリックする。(次の次へ)
または、左列のメニューから「スタック管理」に進み、「データビュー」。(次へ)

Metricbeatで取得したメトリック情報をKibanaダッシュボードで表示 4
「スタック管理」の「データビュー」画面で、右列のデータビューリストに「metricbeat-*」のような項目が無いことを確認し、右上の「データビューを作成」ボタンをクリックする。

Metricbeatで取得したメトリック情報をKibanaダッシュボードで表示 5
右列に「metricbeat-〜」のデータストリームかインデックスがあることを確認し、中央列の「名前」と「インデックスパターン」に「metricbeat-*」と入力する。(名前の方は任意の文字列でも可)
入力したら次。

Metricbeatで取得したメトリック情報をKibanaダッシュボードで表示 6
metricbeatで取得したデータから「タイムスタンプフィールド」が見つけられて「@timestamp」という文字列が自動で入る。これでOK。
画面下部の「データビューをKibanaに保存」ボタンをクリック。
Discover画面で「データビューを作成」をクリックした場合は次の次の次へ。
「スタック管理」の「データビュー」でデータビューを作成した場合は次へ。

Metricbeatで取得したメトリック情報をKibanaダッシュボードで表示 7
metricbeat-*のデータに含まれるフィールドが表示される。
左列の「データビュー」をクリック。

Metricbeatで取得したメトリック情報をKibanaダッシュボードで表示 8
データビューのリストに「metricbeat-*」の項目が追加されたことを確認する。

Metricbeatで取得したメトリック情報をKibanaダッシュボードで表示 9
Discoverに戻る。
左上の水色のドロップダウンメニューをクリックする。
ドロップダウンリストの「metricbeat-*」をクリックする。
左列にmetricbeatのフィールド名のリスト、右列にmetricbeatが取得したデータが表示される。また、右上には取得したデータ数が時系列のグラフで表示される。
表示されないなら何か問題がある筈。

Metricbeatで取得したメトリック情報をKibanaダッシュボードで表示 10
左列のメニューから「Dashboard」をクリックする。

Metricbeatで取得したメトリック情報をKibanaダッシュボードで表示 11
ダッシュボードのリストの (検索)欄に「Metricbeat System」と入力してみる。
ダッシュボードリストが絞り込まれるので、「[Metricbeat System] Host overview ECS」をクリックする。リストの表示順は変動するので一番下をクリックしたら良いというものではありません。
なお、MetricbeatのKibana用ダッシュボードの取り込み(前々回)が出来ていなければMetricbeat用のダッシュボードは表示されない。

Metricbeatで取得したメトリック情報をKibanaダッシュボードで表示 12
ダッシュボードが表示されるが、そこに表示されるはずのビジュアライズは正常に表示されず「結果が見つかりませんでした」が表示される。
右上の「編集」ボタンをクリックする。

Metricbeatで取得したメトリック情報をKibanaダッシュボードで表示 13
「結果が見つかりませんでした」のビジュアライズ右上隅の (オプション)をクリックし、表示されるメニューの「ビジュアライゼーションを編集」をクリックする。

Metricbeatで取得したメトリック情報をKibanaダッシュボードで表示 14
「パネルオプション」タブをクリックする。

Metricbeatで取得したメトリック情報をKibanaダッシュボードで表示 15
「データビュー」には「metricbeat-*」が入っている筈です。そうでなければ「metricbeat-*」を選択してください。こればデータビューを作成し直した場合などに変更の必要が発生すると思われます。
また、「データビュー」の右端の をクリックする。
データビューモードに表示される「Kibanaデータビューを使用」スイッチをオンにする。(次へ)

Metricbeatで取得したメトリック情報をKibanaダッシュボードで表示 16
上部にビジュアライズが表示されたら右上隅の「保存して戻る」(上書き保存)をクリックする。
雛形を使いまわして新しいビジュアライズとして保存するならその左横の「名前を付けて保存」をクリックする。

Metricbeatで取得したメトリック情報をKibanaダッシュボードで表示 17
ダッシュボードに戻ると修正したビジュアライズが表示されるようになった。
これはビジュアライズが変更されたということであってダッシュボード自体には変更が加えられたわけではありません。(勘違いしやすいので注意) ダッシュボードに変更を加えなければ右上の「 保存」はクリックできないので左隣の「表示モードに切り替える」をクリックする。

Metricbeatで取得したメトリック情報をKibanaダッシュボードで表示 18
同様にビジュアライズの「パネルオプション」からデータビューの「Kibanaデータビューを使用」スイッチを変更することで幾つかのビジュアライズを表示することができるようになった。ビジュアライズによってはこの方法では変更できないものもある。

今回は、FreeBSDにインストールしたMetricbeatからメトリクスを収集したのでLinuxとは異なりそもそも正常に取得できないメトリクスが多数。データが取得できないのだから可視化するのは無理。結果、ダッシュボードは上の画面のようになった。これでは殆ど役に立たない。
LinuxはMetricbeat,FreeBSDは別のメトリックシッパーを使うという方法もあるかもしれないが、どうせならある程度統一したいのでMetricbeat以外の軽量なメトリックシッパーを導入したい。それは次回以降。なお、暫く使っていたNode Exporterは取得した値が反対になる問題(0%が100%になったり100%が0%になったり)で信用できない部分があるので候補から外します。

関連記事: