データ可視化に便利なkibanaは、elasticsearchのsiteプラグインとして構成すると便利 #fluentd
Fluentdなどから収集したメッセージをelasticsearchへ格納してKibanaで可視化するソリューションは素晴らしく、とても人気があります。次の画像のように見栄えが良いことも特徴です。
このダッシュボードアプリであるKibanaはJavaScriptアプリケーションです。そのため静的ファイルを配置すればどこでも動きます。
しかしそれだけのためにApacheやNginxなどのWEBサーバを新たに起ち上げるのは手間ですよね。
実は新たに起ち上げない方法もあるのです。こんな時に役立つTipsを紹介します。
elasticsearchのsiteプラグイン
siteプラグインは、ウェブベースのインターフェースを提供するものです。
elasticsearchの挙動へ変更を加えるものではないため、サービス停止(再起動)を行わずにインストール・アップデート・アンインストールができます。
モニタリングや管理のための画面を提供する用途で使われており、次のようなプラグインが有名です。
- Marvel Plugin
- Inquisitor Plugin
- Elasticsearch HQ Plugin
- Head Plugin
それぞれのsiteプラグインについては次のサイトの「Site Plugins.」に用途が記載されています。
Elasticsearch プラグイン — Hello! Elasticsearch. — Medium
Kibanaをsiteプラグインとしてインストール
それでは早速、Kibanaをelasticsearchへ、無停止でsiteプラグインとしてインストールしてみましょう。
# 安定版としてリリースされた最新版のKibanaをインストールするコマンド $ cd /usr/share/elasticsearch $ sudo bin/plugin -url http://download.elasticsearch.org/kibana/kibana/kibana-latest.zip -install elasticsearch/kibana3 -> Installing elasticsearch/kibana3... Trying http://download.elasticsearch.org/kibana/kibana/kibana-latest.zip... Downloading ..................................................DONE Installed elasticsearch/kibana3 into /usr/share/elasticsearch/plugins/kibana3 Identified as a _site plugin, moving to _site structure ...
なお、url引数にダウンロード先を指定しないと、次のURLからダウンロードできるGitHubのmasterブランチのファイル群が利用されます。
まれにmasterブランチでリグレッションや不具合が起きていることがあります。
そのため、ここでは上記コマンド例のように、明示的に安定版としてリリースされたファイルを指定すると良いでしょう。
もしバージョンを固定する際はKibanaのダウンロードページを参考に、次のように指定します。
- http://download.elasticsearch.org/kibana/kibana/kibana-latest.zip
- https://download.elasticsearch.org/kibana/kibana/kibana-3.1.0.zip
動作確認
次のURLを、elasticsearchが動くサーバのIPアドレスに書き換えてアクセスしてみましょう。
# スタートページ # なお、url引数無しにインストールした場合は、ファイルパスが次の通り変更となります # _plugin/kibana3/src/index.html http://サーバのIPアドレス:9200/_plugin/kibana3/index.html # Fluentdからlogstash形式のインデックス名で流し込んでいる場合 http://サーバのIPアドレス:9200/_plugin/kibana3/index.html#/dashboard/file/logstash.json
Logstash形式とは、インデックス名をlogstash-YYYY.MM.DD
と動的に命名する形式です。
もしFluentdの設定にてlogstash_prefixをカスタマイズしている場合には、Kibana画面右上の歯車アイコンを押すと開く画面からインデックス名の設定のカスタマイズを行いましょう。
まとめ
Kibanaの静的ファイルをelasticsearchの上にホストすることで、新たにWEBサーバを構築・管理しなくてよくなります。
特に1台構成の開発環境などでは構成がシンプルになるので便利なのではないでしょうか!
参考サイト
- Elasticsearch Kibana でデータの可視化 — Hello! Elasticsearch. — Medium
https://medium.com/hello-elasticsearch/elasticsearch-kibana-6ad80550939f