Independent testing Updated April 2026 387 self-hosting guides 5 VPS providers tested

guide

Beszelを使ったセルフホスティング:あなたのVPS全 fleetを監視する

Beszelを使ったセルフホスティングサーバーモニタリングの方法を解説します。マルチサーバー設定、アラート設定、連携、そしてホームラバー向けの実用例を紹介します。

複数のサーバーを運用している場合、可視性が必要です - そして、それはSaaS監視ツールの料金を支払ったり、重厚な observability スタックを運用したりせずに得たいものです。Beszelはそのギャップを見事に埋めます。軽量でセルフホスト可能なサーバーモニタリングダッシュボードで、複数のマシンからシステムメトリクスを集約し、一つのインターフェースに表示します。この記事では、なぜBeszelが優れているのか、マルチサーバー環境への設定方法、そして本番運用での活用例について解説します。

なぜBeszelをセルフホステッド監視に選ぶのか?

多くのセルフホスト監視ソリューションは二つのタイプに分かれます:あまりにもシンプル(稼働確認のみ)か、あまりにも複雑(Prometheus + Grafana スタック)。Beszelはその中間であり、PromQLの習得や複数コンテナからなる観測プラットフォームの維持管理を必要とせずに、行動可能なシステムメトリクスを提供します。

主な特徴:

Beszel Hubを動かすのにおすすめのVPS

プロバイダー価格RAMストレージ特徴
Hetzner Cloud4.15 EUR/月4 GB40 GB NVMeEU地域最安値
Contabo VPS5.99 EUR/月8 GB200 GB NVMe最大ストレージ保持容量
Linode (Akamai)5 USD/月1 GB25 GB SSD手頃な価格のグローバル展開
Vultr6 USD/月1 GB25 GB SSD32地域に展開
DigitalOcean6 USD/月1 GB25 GB SSD初心者に優しい onboarding

監視用途のシナリオ例

1. ホームラブfleetの監視

複数のVPSインスタンス、NAS、ローカルサーバーを運用している場合、Beszelは一つのダッシュボードを提供します。すべてのマシンにエージェントをインストールし、一つのURLで全てのメトリクスを確認可能です。ディスク容量がいっぱいになっているかなど、各サーバーにSSHでアクセスして確認する必要はありません。

2. 本番VPSの監視と管理

NextcloudやGitea、Mastodonといったアプリをセルフホスティングしている方は、Beszelを用いてCPUやメモリのスパイクとトラフィックイベントの関連付けが行えます。過去のチャートからリソースのトレンドを把握し、障害発生前に対策を立てることが容易です。

3. CI/CDビルドサーバーの監視

Woodpecker CI、Drone、Gitea Actionsなどを運用している場合、ビルドジョブによるCPUやメモリの高負荷をBeszelで把握できます。どのタイミングでサーバーに負担をかけているのかを確認し、適切な規模調整を行えます。

4. VPNやネットワークアプライアンスの監視

エージェントはWireGuardやheadscaleノード上でも動作可能で、ネットワークのスループットやシステムヘルスを監視しながらも、公開インターネットにはさらさずに監視情報を収集できます。

マルチサーバー構成

アーキテクチャ

[監視対象サーバー1] -- beszel-agent --> [Beszel Hub VPS:8090]
[監視対象サーバー2] -- beszel-agent --> [Beszel Hub VPS:8090]
[監視対象サーバーN] -- beszel-agent --> [Beszel Hub VPS:8090]

Hubはあなたの中心的なVPSです。各サーバーにはエージェントを運用し、ローカルのメトリクスを定期的に取得してHubに集約します。

Hubのデプロイ

docker run -d \
  --name beszel \
  --restart unless-stopped \
  -p 8090:8090 \
  -v beszel_data:/beszel_data \
  henrygd/beszel

エージェントの大規模展開

監視対象のサーバーごとに、Beszelダッシュボードの【Add Server】でキーを生成し、次のコマンドを実行します。

docker run -d \
  --name beszel-agent \
  --restart unless-stopped \
  --network host \
  -e KEY="<サーバー固有のキー>" \
  henrygd/beszel-agent

Ansibleを利用して一括展開も可能です。例:

- name: Beszelエージェントの展開
  community.docker.docker_container:
    name: beszel-agent
    image: henrygd/beszel-agent:latest
    restart_policy: unless-stopped
    network_mode: host
    env:
      KEY: "{{ beszel_agent_key }}"

アラートと通知設定

BeszelはWebhookを使ったアラート通知をサポートします。閾値設定例:

Discord通知の設定方法

  1. Discordサーバの サーバ設定 > インテグレーション > Webhook からWebhookを作成
  2. WebhookのURLをコピー
  3. Beszelの 設定 > 通知 に進み、新規WebhookとしてURLを貼り付け
  4. 各サーバーごとに閾値を設定可能

Slack通知の設定方法

同様にWebhookのURLを作成し、Beszelの通知設定に追加します。

連携サービス

Caddyによるリバースプロキシ設定

monitor.yourdomain.com {
    reverse_proxy localhost:8090
}

CaddyはLet’s Encryptを用いた自動HTTPS設定もサポートします。

Resticでのバックアップ

BeszelはSQLiteを使用しているため、バックアップも簡単です。

restic -r s3:s3.amazonaws.com/your-bucket backup /var/lib/docker/volumes/beszel_data/_data/

cronを使って定期バックアップも可能:

0 3 * * * restic -r s3:s3.amazonaws.com/your-bucket backup /var/lib/docker/volumes/beszel_data/_data/ --quiet

Uptime Kumaとの併用

Beszelはシステムメトリクス、Uptime Kumaはサービスの稼働状況を監視します。両方動作させることで包括的な監視が可能です - Beszelがサーバーの調子を教え、Uptime Kumaが特定サービスの稼働状況を教えます。

パフォーマンスとデータ保持

BeszelのSQLiteデータベースは、サーバーの追加や保持期間の拡大に合わせて増大します。大まかな目安:

Contaboの200GB NVMeストレージなら、数年間にわたり履歴データの維持も容易です。

よくある質問

Beszelを公開インターネットに公開しても安全ですか?

逆プロキシ経由でHTTPSを設定し、強力な管理者パスワードを使用してください。Beszelは複数ユーザー認証やOIDCには対応していないため、VPNや追加認証(例:AutheliaやCaddyの basicauth)を併用することを推奨します。

BeszelはGrafana + Prometheusの基本的な監視を置き換えられますか?

小~中規模のサーバーフリート(100台未満)であれば十分です。Beszelはほとんどのセルフホスターにとって必要なコアメトリクスをカバーし、運用の複雑さを抑えています。カスタムメトリクスやログ集約、アラートパイプラインには、Prometheusベースのスタックが適しています。

Beszelのアップデートはどうすればいいですか?

最新イメージを取得し、コンテナを再作成します。

docker pull henrygd/beszel:latest
docker compose down && docker compose