GrafanaでManticoreSearchのデータを可視化できようなりました!
早速ですが、やっていきます。
今回はDocker環境でManticoreSearchおよびGrafanaを構成していきます。
※後のほうで記載しているLogstashはOSにインストールしたものを利用する前提になっています。よければ前回記事を参照してください。
1. コンテナイメージ取得/ManticoreSearch事前設定
下記コマンドにて最新のDockerイメージおよびMariaDB-Clientをインストールします。
docker pull manticoresearch/manticore
curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | bash
yum -y install MariaDB-client
外部から接続できるようManticoreSearchを起動させます。
docker run -e EXTRA=1 --name manticore -v $(pwd)/data:/var/lib/manticore -p 9306:9306 -p 9308:9308 -d manticoresearch/manticore
Dockerホストから接続します。
mysql -P 9306 -u root
テスト用テーブルを作成します。
CREATE TABLE btc_usd_trading (
id bigint,
time timestamp,
open float,
high float,
low float,
close float
);
ManticoreSearchのコンテナにログインし、curlコマンドでデータを取得します。
docker exec -it manticore /bin/bash
apt update
apt install curl
curl -sSL https://gist.githubusercontent.com/donhardman/df109ba6c5e690f73198b95f3768e73f/raw/0fab3aee69d7007fad012f4e97f38901a64831fb/btc_usd_trading.sql | mysql -h0 -P9306
2. Grafanaインストール
こちらもDockerイメージから起動させます。
docker run -d --name=grafana -p 3000:3000 grafana/grafana
起動したコンテナホストのIP:3000でブラウザからアクセスします。ログインID/PASSの初期値はadmin/adminです。ログイン後、パスワード変更を強制されます。
3. データ可視化
ではいよいよ可視化です。画面中央にある「DATA SOURCES」をクリックします。
HostにDockerホストのIP:9308とし、Databaseは「Manticore」と入れます。
画面右下のSave&testをクリックして、「Database Connection OK」と表示されれば無事接続できています。
次にDashboardを作成します。「Add visualization」をクリックします。
Datasetから「Manticore」、Tableから「btc_use_trading」を選択し、カラムからtime,closeを選択します。
グラフは描画されていませんが、下記のようになっていればOKです。
それでは、次にPaloaltoのデータをTable形式で表示させています。
前回記事を参考にPaloaltoのデータを投げつけます。palo.confの投げ先だけ変更しましょう。
データを投げつけた後は、先ほどの手順と同じようにDatasetをManticoreにしてTableを選択するとPaloのテーブルが選択できるようになりますので、必要なカラムを選択してあげます。