3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

RaspberryPi4 influxDBとGrafana編

Last updated at Posted at 2021-03-08

はじめに

influxDBとは

  • オープンソースの時系列データベース(Time series database)の1つ
  • 時間を軸としたデータ収集に特化している
  • センサー値や温度などの、時刻によって刻々と変化するデータを蓄積するのに使う

Grafanaとは

  • ログデータを可視化するためのツール
  • influxDBやPrometheusなどと組み合わせて使う

influxDBのセットアップ

インストールと起動確認

wget -qO- https://repos.influxdata.com/influxdb.key | sudo apt-key add -
source /etc/os-release
echo "deb https://repos.influxdata.com/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/influxdb.list

sudo apt update & apt install influxdb

動作確認

curl -sl -I http://localhost:8086/ping

ping返ってきたらとりあえず動いてるはず
SHOW DATABASEを送って、空なのを確認する。(DBはまだ追加していないので)

curl http://localhost:8086/query --data-urlencode "q=SHOW DATABASES"
 {"results":[{"statement_id":0,"series":[{"name":"databases","columns":["name"],"values":[["_internal"]]}]}]}

データベースはまだ作っていないので、こんな感じに返ってきたらOK

データベースの追加

HomeDBが作りたいデータベース名

curl -G http://localhost:8086/query --data-urlencode "q=CREATE DATABASE HomeDB"
curl http://localhost:8086/query --data-urlencode "q=SHOW DATABASES"
 {"results":[{"statement_id":0,"series":[{"name":"databases","columns":["name"],"values":[["_internal"],["HomeDB"]]}]}]}

SHOW DATABASEして、追加されていればOK

お試しデータの登録

curl -i -XPOST "http://localhost:8086/write?db=HomeDB" --data-binary 'ElectricPower,hard=RasPi4 Power=100'

何回か上記コマンドを実行して、時系列データとして見れるようにしておく

保存先を外付けSSDに変更

起動メディアはSDカードなので、書き込み耐久に不安がある
DBを外付けSSDに設定して、そっちに書き込むようにする
外付けSSDはex-ssdとしてマウント済みとする

vim /etc/influxdb/influxdb.conf
 [
              :
  dir = "/mnt/ex-ssd/var/lib/influxdb/meta"
  dir = "/mnt/ex-ssd/var/lib/influxdb/data"
  wal-dir = "/mnt/ex-ssd/var/lib/influxdb/wal"
              :
 ]

パーミッションで怒られる時は外付けドライブのアクセス権限を変更する

sudo chmod -R +rwx /mnt/ex-ssd

influxdb を再起動すれば外付けSSDに書き込みを行うようになる

Grafanaのインストール

sudo wget -q -O /usr/share/keyrings/grafana.key https://apt.grafana.com/gpg.key
echo "deb [signed-by=/usr/share/keyrings/grafana.key] https://apt.grafana.com stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list
echo "deb [signed-by=/usr/share/keyrings/grafana.key] https://apt.grafana.com beta main" | sudo tee -a /etc/apt/sources.list.d/grafana.list
sudo apt update && sudo apt install -y grafana
sudo systemctl unmask grafana-server
sudo systemctl start grafana-server
sudo systemctl enable grafana-server

RaspberryPiのIP:3000にアクセスする
以下の画面が表示されたらインストールできてる。
Screenshot from 2021-03-08 19-28-06.png

初回ログイン

  • username : admin
  • password : admin
  • パスワードはさっさと変更する

保存先を外付けSSDに変更

vim /etc/default/grafana-server
 [
              :
  LOG_DIR=/mnt/ex-ssd/var/log/grafana
  DATA_DIR=/mnt/ex-ssd/var/lib/grafana
  PLUGINS_DIR=/mnt/ex-ssd/var/lib/grafana/plugins
              :
 ]

GrafanaとinfluxDBをつなぐ

Configuration(ギアアイコン) -> Data Sources -> Add data source -> influxDB
Screenshot from 2021-03-08 19-14-23.png

以下のように設定、指定のない項目はデフォルトのまま

項目 設定
name HomeDB
URL http://localhost:8086
Database HomeDB

Screenshot from 2021-03-08 19-19-21.png

Save & Testを押して、以下の表示が出たらOK
Screenshot from 2021-03-08 19-23-54.png

Grafanaパネルの作り方

Create(+アイコン) -> Dashboard -> Add new panel

Screenshot from 2021-03-08 19-12-50.png

項目 設定
FROM -> select measurement ElectricPower
SELECT -> field Power
ALIAS BY ElectricPower

Screenshot from 2021-03-08 17-16-51.png

こんな感じで表示されたらOK
Screenshot from 2021-03-08 19-08-47.png

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?