2026年10月3日、HOME.LABのProxmox VEクラスタにZabbixを導入しました。ホストやコンテナの状態に加えて、同じLANにある機器の接続状態も、一つの画面から確認できるようにするための作業です。今回もAIと対話しながら、ブラウザ上の管理画面を使って構築と確認を進めました。
監視サーバーは小さく始める
Zabbix用のLXCコンテナを新しく作成し、2 CPU・メモリ1GB・ディスク8GBという小さな構成にしました。監視のために大きなリソースを確保するのではなく、まずは必要な範囲から運用を始める方針です。
Debian 12上にZabbix 7.0 LTSとPostgreSQLを導入し、データベースやWebサーバーの設定も小規模環境に合わせて調整しました。履歴は7日、トレンドは30日を保存する設定です。この構成で今回の監視データを取得できることは確認しましたが、今後の機器数や保存期間に応じて容量と負荷を見直していきます。
ProxmoxのAPIからクラスタ全体を監視
Proxmox VEの監視には、Zabbixの公式HTTPテンプレートを利用しました。監視専用の読み取り権限を持つAPIトークンを使い、TLS証明書の検証も有効にしています。今回のリソース監視では、各ゲストへのエージェント導入は行っていません。
3台のホストと稼働中のコンテナについて、CPU・メモリ・ネットワーク・ディスク関連の情報や起動状態を確認できるようになりました。VMの自動検出も設定済みですが、現時点ではVMがないため、実機でのVM監視確認は今後になります。ゲスト内部のアプリケーションやプロセスまで監視する場合は、別途設定が必要です。
データの収集と、ダッシュボードの表示は別の作業
導入直後の標準ダッシュボードには、すべての監視対象が自動で並ぶわけではありませんでした。データは取れていても、最初に開く画面ではZabbix自身の情報が中心になっていたため、Global viewにホストとコンテナの稼働状態を並べるウィジェットを追加しました。
ここで気づいたのが、標準の「ホスト稼働状況」と、Proxmoxの起動・停止状態は意味が違うことです。前者はZabbixエージェントなどの監視インターフェースの通信状態を示します。APIやPingで監視できていても、そこでは「不明」と表示されることがあります。実際の起動状態や接続状態は、追加した専用の一覧で確認する形にしました。
コピー元のコンテナを監視対象から外す
停止中のコンテナの一つは、コピー元として使うためのものでした。常時起動している必要がないので、停止を障害として扱うのは適切ではありません。そこで、そのコンテナを自動検出の対象から除外し、監視項目とアラートも停止しました。
除外後は、3台のホストと8台のコンテナの監視が続いていることを確認しました。監視対象は「存在するもの全部」ではなく、運用上必要なものに合わせて選ぶことが大切だと感じます。
同じLANにある機器も自動登録する
続いて、同一セグメントの機器をICMP Pingで自動検出する設定を追加しました。15分ごとに探索し、登録した機器の接続状態・応答時間・パケット損失を1分ごとに確認します。既存のProxmoxホストとZabbixサーバーは重複登録から除外しました。
作業時点で13台を追加登録し、全台から接続監視データを取得できました。Global viewには「LAN機器の接続状態」も追加しています。Pingに応答しない機器はこの方法では自動登録されず、CPUやメモリなどの詳細を取得するには、SNMPやエージェントなど機器に応じた設定が必要です。
今日できたこと、これから確認すること
今回は、監視用コンテナの構築、クラスタのリソース監視、ダッシュボードの整備、不要な監視対象の除外、LAN機器の自動登録までを進めました。通知先へのメール送信などは、今回の作業には含めていません。
AIに操作を任せる場合も、収集できたデータと画面の意味を照らし合わせることは欠かせません。「不明」は何を指すのか、停止していてよい機器を障害にしていないか。そうした点を対話しながら調整することで、日常的に使える監視画面に近づけられました。今後は保存データの増え方や負荷を見ながら、必要な監視と通知を少しずつ整えていきます。
追記:古いノートPC 3台で、低コスト・省電力クラスタを育てる
監視の整備に続いて、Proxmox VEを動かしている3台のノートPCも点検しました。このクラスタは、低コストで運用するために、あえて古いノートPCを選んでいます。最新の機材へ置き換えることより、手元の機材を活用し、日常の負荷に合わせて省電力で動かすことを優先しています。ノートPCはふたを閉じた状態でサーバーとして使っています。
今回の3台を紹介
1台目は富士通のノートPC(機種コード FMVA50B3W2)。CPUはIntel Core i7-7700HQで、ストレージにはCrucialの240GB SATA SSDを搭載しています。
2台目はDell Latitude 3540。CPUはIntel Core i5-4200Uで、ストレージはWestern Digitalの500GB HDDです。ほかの2台とは異なるHDD構成も、監視で状態を確認しながら利用しています。
3台目はLenovo ideapad 710S Plus-13IKB。CPUはIntel Core i7-7500Uで、ストレージは約128GBのNVMe SSDです。同じノートPCでも、CPUの世代や電源管理の方式、取得できるセンサーには違いがあります。
性能優先から、負荷に応じたCPU電源管理へ
点検時は、3台ともCPUの電源管理がperformance設定になっていました。そこで、Intelの電源管理ドライバーに合わせて設定を変更しました。富士通とLenovoはintel_pstateのpowersave、Dellはintel_cpufreqのschedutilを使用しています。対応する2台では、電力と性能の優先度もbalance_powerにしました。
ここでのintel_pstateのpowersaveは、CPUを最低速度へ固定する設定ではありません。負荷に応じて性能を調整する方式です。CPUの最大周波数やターボ機能に追加の制限は設けず、必要なときに性能を使える構成にしています。設定は起動時に適用するサービスとして登録し、3台とも有効になったことを確認しました。今回、ホストの再起動は行っていません。
ふたを閉じてもスリープしない設定と、サスペンド・休止状態の無効化は、すでに3台とも設定されていました。クラスタの定足数も正常です。稼働中のサービスへの影響を避けるため、ネットワークやディスクの強い省電力化は今回の対象にしていません。省電力効果の比較測定は、今後同じ負荷条件で確認していきます。
各ホストにエージェントを導入し、ハードウェアも監視
APIによるクラスタ監視に加え、3台のProxmoxホストへZabbix agent 2を導入しました。Linuxの基本監視とともに、CPU・各センサーの温度、ディスクのSMART健康状態、ディスク温度、通電時間、セクターやメディアのエラー情報を取得します。NVMe SSDでは寿命使用率と予備領域も確認でき、ファン回転数は機器が情報を提供する場合に表示します。
ディスク情報は読み取り専用の定期収集処理で取得し、エージェントは収集結果を読み出します。エージェント自体に管理者権限を与える構成にはしていません。高温、SMART異常、収集停止などの検知も追加しました。点検時のディスク健康状態は3台とも正常でした。
電力は測定範囲を区別して見る
3台ともCPU内蔵のRAPL電力計が利用できたため、CPUパッケージやメモリなどの電力をW単位で監視に追加しました。毎分、約1秒間の電力量の差分から平均電力を計算します。継続した1分間の平均値ではないので、短い負荷の変動をすべて捉えるものではありません。
この値はコンセント側で測った本体全体の消費電力とは異なります。CPUパッケージとその内部のCPUコアなどは測定範囲が重なるため、表示値を全部足して総消費電力にはしません。ACアダプタを含めた総電力は、別途、電力計などで確認する必要があります。
古いバッテリーは、状態を知ったうえで使う
バッテリーの満充電容量は、設計容量に対して富士通が39%、Dellが21.9%、Lenovoが85.9%でした。これは現在の充電残量とは別の数値です。点検時の残量は3台とも100%でも、蓄えられる容量には差がありました。
古い機材を低コストで活用する方針なので、劣化の数値だけを理由にすぐ交換する予定はありません。状態を把握できるよう、AC電源の接続、バッテリー残量、満充電容量の健康度を監視に追加しました。AC切断が続いた場合、残量が20%未満になった場合、健康度が60%未満の場合には、Zabbix上で障害・警告として確認できます。自動シャットダウンや外部へのメール通知は設定していません。
Global viewを、日常の確認画面にする
Global viewには3台それぞれのハードウェア詳細を並べ、温度・ディスク・電力・バッテリー情報を確認できるようにしました。「Top hosts by CPU utilization」にも3台を追加し、CPU使用率や平均負荷を比較できます。HOME LABの地理マップには登録済みの位置へピンを表示しましたが、この記事には具体的な座標を掲載しません。
グラフの日本語が四角い文字になっていた問題も、グラフ描画用フォントを日本語対応フォントへ変更して修正しました。タイトルや最新値・最小・平均・最大の表示が読めることを確認しています。
将来は基板とACアダプタでの運用も検討
将来的には、ノートPCの基板とACアダプタを中心にした運用も考えています。現時点では構想段階で、分解やバッテリーの取り外しは行っていません。今の構成で監視データを蓄積しながら、冷却や設置方法も含めて運用の形を考えていきます。古いノートPCを選ぶこと自体が、このHOME.LABの低コストな実験の一部です。