関連コンテンツ

Raspberry Pi + Fluentd + Elasticsearch + Kibana でグラフ化したいものがあったので、まずは Raspberry Pi に Fluentd + Elasticsearch + Kibana の環境を構築する。

環境

各環境は下記の通り。

  • Raspberry Pi 2 Model B
  • Raspberry Pi 2 OS: Raspbian
  • Raspbian の Debian version: 9.4
  • Fluentd: 1.2.0
  • Elasticsearch: 6.2.4
  • Kibana: 6.2.4

Java JRE のインストール

Elasticsearch に Java JRE が必要なので、インストールする。

Elasticsearch のインストール

公式サイトの方法で 6.x をインストールしようとすると、うまくいかなかったので、マニュアルで Debian package でインストールする。

このまま起動しようとするとメモリ関連のエラーで起動しないので、メモリの使用量を 1GB から 512MB に設定を修正する。

続いて Elasticsearch を起動して、自動起動も設定する。

http://localhost:9200 にアクセスして、起動状態を確認する。

ndenv と Node.js のインストール

Kibana で必要になるので Node.js を ndenv (anyenv) でインストールする。

続いて Node.js の v8.11.1 をインストールする。(記事執筆時点の安定版なので。)

参考

Kibana のインストール

公式サイトを参考に Elasticsearch と同じようにマニュアルで Debian package をインストールしようとしたら、 CPU のアーキテクチャが違うのでインストールできなかった。

仕方がないので tar.gz をダウンロードして、起動することにする。

公式サイトから最新版をダウンロードして、 tar.gz を展開する。

./bin/kibana で Kibana を起動すると Node.js のエラーになる。

参考サイトによると同梱されている Node.js と npm の CPU アーキテクチャが Raspberry Pi のものと異なるために起こるらしい。

参考サイトの通りに Node.js と npm を差し替える。

Raspberry Pi の端末以外からもアクセスしたいので、 config/kibana.yml を下記のように修正する。

下記コマンドで Kibana を起動する。

ブラウザで http://{Raspberry Pi の IP アドレスまたはホスト名}:5601 にアクセスして下記の画面が表示されたら OK 。

自動起動したいので cron で OS 起動時に実行するようにする。

参考

rbenv と Ruby のインストール

Fluentd で必要になるので Ruby を rbenv (anyenv) でインストールする。

続いて Ruby の 2.5.1 をインストールする。(記事執筆時点の最新版なので。)

Fluentd のインストール

公式サイトにある deb Package のインストール方法ではインストールできなかったので、 Ruby gem でインストールする。

下記コマンドで起動する。

下記コマンドで接続のテストをする。

問題なく接続できている様子。

下記のように Fluentd の設定を修正する。

自動起動したいので cron で OS 起動時に実行するようにする。

参考


以上で、 Raspberry Pi 上に Fluentd + Elasticsearch + Kibana の環境が構築できた。

関連コンテンツ

スポンサーリンク