もふもふ技術部

CentOS 6.5 (Vagrant)に fluentd + elasticsearch + kibana をセットアップする


fluentd経由でmongoDBにログを突っ込んだりしているのですが、可視化したいなーっていう流れがあるので、最高にナウい感じの fluentd + elasticsearch + kibana をセットアップしてみました。

まずは試しなのでVagrantを使って仮想環境でセットアップしてみました。
kibanaってjsで動いてるのかー。

環境
Mac OSX 10.9
ゲストOS CentOS 6.5

Elasticsearch

Elasticsearchは言わずと知れた全文検索エンジンですね。国産全文検索エンジンにGroongaというものがありますが、世界的にはElasticsearchがナウいとのことです。

yumからインストールしたいので、リポジトリを追加します。

インストールします。javaが必要なので同時にインストールしますね。

curl叩いてステータス200のjsonが返ってくればインストール成功。

kibana

つづいてkibanaをインストールします。kibanaはjsで動いているWEBアプリケーションなので、今回は既に動いていたのでapache上で動かすことにします。

ダウンロードしてapache公開ディレクトリに設置。

elasticsearchにアクセスするアドレスを設定。クライアントのブラウザから見えるアドレスでないければならないので、通常はグローバルIPで指定することになると思います。今回はVagrantなので、クライアントからの19200番を9200番に転送してるので下記のような設定。

あとiptablesなどのファイアウォールで9200番を通すのを忘れずに。

kibanaにアクセスしてみます。

http://localhost:10080/kibana

アドレス指定がうまくいってないと下記のようなエラーが出ます。

スクリーンショット 2014-08-26 17.11.45

うまくいくとこう。

スクリーンショット 2014-08-26 17.31.01

fluentd

インストールは以前にやっているので割愛。
fluentdでapacheログを収集する

elasticsearchに流し込む用のpluginをインストールします。

エラーが発生してしまった。下記エントリによると、gccとlibcurl-develがいるっぽい。
http://qiita.com/tokida/items/2aa7dae82aa969f10420

インストールして再度やりなおし。今度はうまくいった。

td-agentの設定ファイルに追記。
elasticsearchに流し込むだけならstoreの後者だけでいいんですが、mongo転送もいかしておきたかったので、type copyを使って両方処理させてます。

これで再度kibanaを開いて、Sample Dashboard をクリックするとこのように表示されました!できたあああ!

スクリーンショット 2014-08-26 18.13.53

The following two tabs change content below.
原田 敦

原田 敦

日本CAWのエンジニア。もふもふ部の部長。得意分野はRuby on Railsを使った小規模WEBアプリケーションを高速で開発すること。週末の楽しみは一人お菓子パーティー。三度の飯より小動物をもふもふするのが好きです。