昨日の「Fluentd + Elasticsearch + Kibana での解析用に Elasticsearch を仕込む」からの続き。
Elasticsearch へのデータ投入はできたと思われるので、今度はその可視化のために Kibana をインストールする。
Kibana は elasticsearch.org のダウンロードページから tar 形式で落とした。
中身は JavaScript なのでどこに置いても良いんだけど、今回は解析サーバの上に置くことにする。Web サーバは nginx を使って、Elasitcsearch + Kibana 用にバーチャルホストを用意する。
Kibana そのものにはユーザ認証などは無いようなので、バーチャルホスト全体を BASIC 認証でアクセス制限しておく。
また、request_uri が /elasticsearch/
だった場合には、リバースプロキシとして localhost の 9200 ポートへ投げるようにしておく。
これは Kibana からのアクセス用に使う。
nginx のバーチャルホストやリバースプロキシの設定はこのようにしてみた。443 じゃなくて 80 なのは予算の都合。個人用に SSL 証明書、買うべきかなぁ。
server {
listen 80;
server_name [バーチャルホスト名];
satisfy any;
allow 127.0.0.1;
deny all;
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/htpasswd;
root [バーチャルホストのrootディレクトリ];
index index.html;
access_log /var/log/nginx/[バーチャルホスト名]-access.log;
location /elasticsearch/ {
proxy_pass http://localhost:9200/;
}
}
nginx で設定したバーチャルホスト名を Kibana のトップディレクトリにある config.js
にも書いてやる必要がある。
% vim config.js
変更するのはここらへん。デフォルトでは elasticsearch の設定がこうなっている。
elasticsearch: "http://"+window.location.hostname+":9200",
それを先ほど設定したバーチャルホスト名に変更してやる。
elasticsearch: "http://[バーチャルホスト名/elasticsearch/",
パスの部分に /elasticsearch/
を指定している。これで、nginx を通じて、解析サーバ上の Elasticsearch へ接続される。
ここまで来たら、次は Kibana 上でクエリを組み立てたり、グラフを表示していくフェイズになる。