Kafkaからデータを取得する方法はいろいろとあるようだが、今回はfluentdでKafkaからデータをPullさせてみる。
基本的にはPushのときと変わらず、fluent-plugin-kafkaを用いる。
一応、td-agentおよび必要となるプラグインのインストールコマンドは以下(CentOS 7)。
curl -L http://toolbelt.treasuredata.com/sh/install-redhat-td-agent2.sh | sh
yum install -y gcc
/opt/td-agent/embedded/bin/gem install fluent-...
前回、syslogをKafkaに転送させるようにしたので、今度はそこからGraylogでログを取得する。
特にプラグインもなしでできるので、(いろいろと問題はあるが)なかなか良い感じだ。
設定は簡単で、[System] > [Inputs]で新規のインプットとして[GELF Kafka]を選択し、「Launch new input」から新しいインプットを作成するだけだ。
zookeeperのアドレスは複数指定できるので、各ノードのアドレスを指定してやる。
で、INPUTが正常に作成・動作したら、以下のようにKafkaからログが取得されるようになる。
...
仕事でPub-Subのシステム構築が必要になりそうなので、この用途でのデファクトスタンダートとなってきてるKafkaクラスタをCentOS 7で構築してみる。
構成は3台構成、ZooKeeperとの同居(こちらも3台構成)とする。
ホスト名はとりあえずBS-PUB-CLUSTERTEST01~03としている。
1. 前提パッケージのインストール
Kafkaを動作させるにはJavaが必要なようなので、事前にOpenJDKのインストールをする。
以下のコマンドを実行する。
yum install -y java-1.8.0-openjdk.x86_64
JAVA_HOME、JRE_...