Raspberry PiとE-inkディスプレイでサーバー監視システムを製作、20秒ごとに稼働状況を表示

FabScene(ファブシーン)

サーバーの稼働状況を常時監視する環境では、専用モニターの電力消費や設置スペースが課題になる。液晶ディスプレイは常時点灯が必要で、サーバーラックに設置すると視認性の問題も生じる。

米国のエンジニアDrStrangeL0W氏は、Raspberry PiとE-inkディスプレイを組み合わせたサーバー監視システムを製作し、GitHubで公開した。E-inkディスプレイは電力消費が極めて少なく、画面の焼き付きが発生しないため、長時間の連続表示に適している。また、あらゆる角度から視認できる特性を持つ。

システムは2.13インチのWaveshare製E-inkディスプレイ(250×122ピクセル、約2100円)を使用し、サーバーの各種情報を3列のレイアウトで表示する。表示内容は、UPS(無停電電源装置)のバッテリー残量や稼働可能時間、負荷率、温度、電圧、GPU温度や使用率、消費電力、クロック周波数、システムのCPU温度や周波数、メモリ使用量、ディスク使用量など多岐にわたる。

DrStrangeL0W氏の設計で注目すべき点は、Raspberry Pi上でPrometheusサーバーを実行しない構成を採用したことだ。Prometheus(プロメテウス)はサーバーのメトリクス収集・監視を行うオープンソースソフトウェアで、Raspberry Piは、ネットワーク上の既存のPrometheusインスタンスにクエリを送信するだけで、自身は軽量なクライアントとして動作する。この設計により、Raspberry Piの負荷を最小限に抑えながら、サーバー上で稼働するnode_exporterやnvidia_gpu_exporterなどから収集された詳細なメトリクスを表示できる。

リフレッシュの設定を工夫して、E-inkディスプレイの寿命を延ばす

E-inkディスプレイの書き換え回数には制限があり、Waveshare製の製品では約100万回のリフレッシュが寿命とされている。20秒ごとの更新では約230日で寿命に達する計算になるが、同システムでは部分リフレッシュと完全リフレッシュを組み合わせることでこの問題に対処している。

具体的には、20秒ごとに部分リフレッシュを実行し、10サイクルごとに1回だけ完全リフレッシュを行う。この手法により、ゴースト(残像)を防ぎながら、ディスプレイの寿命を延ばしている。DrStrangeL0W氏によると、約7カ月間の使用で問題は発生していないという。

システムのハードウェア構成は、Raspberry Pi(2100円〜5600円)、Waveshare 2.13インチE-inkディスプレイ(約2100円)、監視対象サーバー上のPrometheusとエクスポーターで、総額5000円程度から構築できる。GitHubリポジトリによると、Raspberry Pi 3、4、5でテスト済みだという。

GitHubリポジトリには、インストールガイド、systemdサービスファイル、トラブルシューティングドキュメントが含まれており、表示するメトリクスやレイアウトのカスタマイズも容易だ。監視対象のサーバーでPrometheusとnode_exporterを設定し、Raspberry Pi側でPython環境とWaveshareのE-paperライブラリをインストールすれば動作する。

関連情報

GitHubリポジトリ

Raspberry Pi
¥14,880 (2025/11/12 12:08時点 | Amazon調べ)

fabsceneの更新情報はXで配信中です

この記事の感想・意見をSNSで共有しよう
  • URLをコピーしました!