インデックスサーバー側
準備
インデックスサーバー側のポートは80,22の他に、fluent用に9200番ポートを開けておきます。また、インデックスは最終的に大きくなるので、容量の大きなストレージに入れておきます。
# yum install xfsprogs httpd java-1.7.0-openjdk -y # mkfs.xfs /dev/xvdf # mount -t xfs /dev/xvdf /mnt/ebs/0
Kibana3のインストール
Kibanaはv3になってから、rubyではなくhtmlになりました。DocumentRoot下に置いてhttpdを起動するだけでOKです。# cd /var/www/ # curl -OL http://download.elasticsearch.org/kibana/kibana/kibana-latest.zip # unzip kibana-latest.zip # mv html html.org # mv kibana-latest html # /etc/init.d/httpd start
ElasticSearchのインストール
# cd /mnt/ebs/0/ # curl -OL https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-0.90.11.tar.gz # tar xzvf elasticsearch-0.90.11.tar.gz # cd elasticsearch-0.90.11/ # ./bin/elasticsearch start
これで、インデックスサーバー側は準備ができました。
ログ送信サーバー側
apacheのログを送信するとして、ここではfluentdの設定はin:tailとout:elasticsearchプラグインを使います。
# yum install td-agent -y # vim /etc/td-agent/td-agent.conf
<source> type tail format apache2 path /var/log/httpd/access_log pos_file /tmp/access.log.pos tag server1.apache.access </source> <match server1.apache.access> type_name apache type elasticsearch include_tag_key true tag_key @log_name host XXX.XXX.XXX.XXX port 9200 logstash_format true flush_interval 10s </match>
# /etc/init.d/td-agent start
これでログの送信設定は完了です。
確認
ここまで設定できたらkibanaの画面を見てみます。
これがデフォルトのトップ画面です。
右側の[Logstash Dashboard]というリンクをクリックすると、ダッシュボード画面に遷移します。
ダッシュボードでは、fluentdから送られてきたログがひな形のダッシュボードに表示されていることがわかります。
クエリの追加
クエリフィールドはフィールドの「+」ボタンでいくつも登録できます。クエリの書式はluceneの書式が基本となっているようです。
パネルの追加
ダッシュボードはグリッド上にできており、基本的に行(ROW)にパネルを追加していきます。パネルはひとつまたは複数のクエリを使用します。
ROWにある「Add Panel」ボタンでパネルを追加します。
パネル追加画面では、パネルのタイプや使用するクエリや、その他パネル固有のパラメータを設定します。
いくつかのクエリとパネルを組み合わせて目的に会ったダッシュボードを造ります。
作成したら、名前をつけてダッシュボードを保存することで、リロードしても保持されるようになります。
以前と比べてかなりいろいろなデータを表示できるようになってきました。
細かいところはまた今度。
以上です。