Metabaseのセットアップ(ラズベリーパイ)
Metabaseは、データベースのデータをブラウザからグラフや表にできるオープンソースのBIツールです。SQLを書かなくても集計画面が作れるので、MariaDBに記録したPLCのデータを手早く「見える化」するのに便利です。
このページでは、ラズベリーパイ上でMetabaseを動かし、同じラズベリーパイのMariaDBにつなぐまでの手順をまとめます。インターネットにつながない社内LANだけで完結します。
外出先やスマホからも見たい場合は、クラウドで動かす「Grafana Cloud(無料枠)」も検討してください。
環境
| 項目 | 内容 |
|---|---|
| ハードウェア | Raspberry Pi 4 Model B(4GB) |
| OS | Raspberry Pi OS(64-bit) |
| Java | Eclipse Temurin 25(JRE) |
| Metabase | OSS版(jarファイル) |
| アクセス | http://192.168.0.100:3000/ |
Java 25のインストール
最新のMetabaseはJava 25が必要です。Raspberry Pi OSの標準リポジトリにはないため、Eclipse Temurin(Adoptium)のリポジトリから入れます。
$ sudo apt install -y wget apt-transport-https gpg $ wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/adoptium.gpg > /dev/null $ echo "deb https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" | sudo tee /etc/apt/sources.list.d/adoptium.list $ sudo apt update $ sudo apt install -y temurin-25-jre $ /usr/lib/jvm/temurin-25-jre-arm64/bin/java -version
default-jdk(Java 17)はそのまま残り、Metabaseだけが上のパスのJava 25で動くようにします。古いバージョンのMetabase(v0.43など)を使う場合はJava 17のままでも動きます。
ダウンロードと動作確認
ここではユーザー pi のホームに metabase ディレクトリを作り、その中にjarファイルを置きます。
$ mkdir -p ~/metabase $ cd ~/metabase $ wget -O metabase.jar https://downloads.metabase.com/latest/metabase.jar
ブラウザでダウンロードする場合は、Metabase公式サイト(OSS版)から入手して、上のディレクトリにコピーしてください。
まずは手動で起動して動作を確認します(停止は Ctrl+C)。
$ /usr/lib/jvm/temurin-25-jre-arm64/bin/java -jar metabase.jarPCのブラウザで http://192.168.0.100:3000/ を開きます。ラズベリーパイでは初回起動に数分かかるので、ログに「Metabase Initialization COMPLETE」と出るまで待ってください。
サービスとして自動起動する
ユニット定義ファイルの作成
ラズベリーパイの起動時に自動で立ち上がるよう、systemdのサービスとして登録します。
$ sudo nano /etc/systemd/system/metabase.service[Unit]
Description=Metabase server
After=network-online.target mariadb.service
Wants=network-online.target
[Service]
WorkingDirectory=/home/pi/metabase
ExecStart=/usr/lib/jvm/temurin-25-jre-arm64/bin/java -Xmx1g -jar /home/pi/metabase/metabase.jar
# 環境変数ファイル(ポート変更など)。先頭の「-」はファイルがなくてもエラーにしない指定
EnvironmentFile=-/etc/default/metabase
User=pi
Type=simple
SyslogIdentifier=metabase
SuccessExitStatus=143
TimeoutStopSec=120
Restart=always
[Install]
WantedBy=multi-user.target-Xmx1g はMetabaseが使うメモリの上限です。4GBモデルで他のサービスと同居させる場合の目安なので、環境に合わせて調整してください。ポートを3000から変えたい場合は、
/etc/default/metabase に MB_JETTY_PORT=8080 のように書きます。
サービスの登録と起動
$ sudo systemctl daemon-reload $ sudo systemctl enable --now metabase.service $ systemctl status metabase.service
ログの確認
現在のRaspberry Pi OSでは、ログはjournald(systemdのログ)で確認できます。
$ journalctl -u metabase -f以前のOSのようにrsyslogでファイルに書き出したい場合は、rsyslogを入れて振り分け設定を追加します。
$ sudo apt install -y rsyslog $ sudo nano /etc/rsyslog.d/metabase.conf
if $programname == 'metabase' then /var/log/metabase.log & stop
$ sudo systemctl restart rsyslogMariaDBとの接続
Metabaseの初期設定画面で管理者ユーザーを作成したあと、「データベースを追加」から次のように入力すると、MariaDBのデータをグラフにできます。
| 項目 | 設定値 |
|---|---|
| データベースの種類 | MySQL(MariaDBもこちらを選択) |
| ホスト | localhost |
| ポート | 3306 |
| データベース名 | testDB |
| ユーザー名/パスワード | testuser/passwd |
まとめ
これで、社内LANのPCのブラウザから http://192.168.0.100:3000/ を開くだけで、MariaDBに記録したPLCのデータを表やグラフで確認できるようになりました。
Metabaseの「質問(Question)」でグラフを作り、「ダッシュボード」にまとめておくと、設備の状態を一画面で確認できます。
関連ページ

初期設定とサーバー構築
固定IP・Apache・PHP・MariaDBのセットアップ手順

Grafana Cloud(無料枠)
ポート開放なしで、クラウドのGrafanaからラズパイのMariaDBを見える化します

ラズベリーパイとは
歴史・現行機種のスペック・PLCとの連携構成を紹介します
参考
- Metabaseのセットアップ(obenkyolab)
- Metabase公式ドキュメント:Running the Metabase OSS JAR file
- Eclipse Temurin(Adoptium)Linuxへのインストール
Raspberry Pi is a trademark of Raspberry Pi Ltd.
