Netdata:詳細なマシンメトリクス
VDSへのNetdataのインストール方法、外部からのアクセス制限、コントロールパネルのグラフでは不十分な場合に確認すべき項目を説明します。
更新日 2026年8月23日
/hosting/vds/m/<id> のコントロールパネルにあるグラフは、「マシンに負荷がかかっているか」という問いに答えてくれます。「何が、どの秒に起きているのか」を知りたいときは、Netdata を導入しましょう。数百のメトリクスを1秒間隔で収集し、設定なしでブラウザに描画してくれます。
インストール
curl -Ss https://my-netdata.io/kickstart.sh -o /tmp/netdata-kickstart.sh
sh /tmp/netdata-kickstart.sh --stable-channel --disable-telemetry
スクリプトがシステムを自動判別し、パッケージをインストールします。Debian と Ubuntu にはリポジトリ版(apt install -y netdata)もあります。古いバージョンですが、システムと一緒に更新されます。
Netdata はそれなりのメモリを消費します。2 GB の VDS-1 では、上限を設定しないとアプリケーションとメモリを奪い合います。/etc/netdata/netdata.conf で履歴の保持期間を削るだけで十分です。
[db]
mode = dbengine
dbengine multihost disk space MB = 256
変更後は systemctl restart netdata を実行します。
アクセスを閉じる
デフォルトでは、Netdata はすべてのアドレスのポート 19999 で待ち受けます。開いたままにしてはいけません。パスワードなしのインターフェースは、プロセスの一覧やアクティブな接続に至るまで、マシンの内部構造をすべて晒してしまいます。
/etc/netdata/netdata.conf で localhost にバインドします。
[web]
bind to = 127.0.0.1
確認するには、お使いのコンピューターから SSH トンネルを開きます。
ssh -L 19999:127.0.0.1:19999 root@YOUR_ADDRESS
あとはブラウザで http://127.0.0.1:19999 を開きます。常時外部からアクセスする必要がある場合は、Netdata をパスワードと証明書付きの Nginx の背後に置き、ファイアウォールでポート 19999 を閉じます。
何を監視するか
- CPU → 使用率を内訳付きで。
iowaitが高い場合はディスク、stealはノード上の競合、systemはカーネルのオーバーヘッドで、多くの場合はネットワークが原因です。 - ディスク → バックログと await — ディスクのキューです。お使いのティアの上限と比較してください。ディスク負荷を参照してください。
- メモリ → 空き容量とスワップのセクション。右肩上がりの増加はリークを意味します。
- アプリケーション — プロセスグループごとの消費量。「誰が悪いのか」という問いに、事後でも答えてくれるセクションです。
- アラーム — 組み込みのしきい値です。Netdata 自体が、ディスクの満杯、過熱したキュー、停止したサービスを強調表示します。
メールまたは Telegram の通知は /etc/netdata/health_alarm_notify.conf で設定します。受信者を指定し、使いたいチャンネルを有効にしてください。
よくある間違い
- ポート 19999 をインターネットに開いたままにする。 インフラの情報が漏洩し、場合によっては攻撃の糸口になります。確認コマンド:
ss -tulpn | grep 19999。 - VDS-1 に Netdata をインストールして、メモリ不足に驚く。 デフォルト設定では数百メガバイトを消費します。履歴を制限するか、単発のツールに譲って導入を諦めましょう。
- Netdata を外部監視の代わりと考える。 これは同じマシン上で動いています。落ちてしまえば、そのことを知る術がありません。外部監視については、記事サイトダウンアラートで扱っています。
- 履歴を何か月も保持する。 メトリクスのデータベースは常にディスクへ書き込み、バックグラウンド負荷を増やします。VPS なら数日で十分です。
Millida のコントロールパネルと Netdata は競合しません。前者はゲストを外から見た視点を与え、システムがフリーズしていても動作します。後者は内側からの詳細を提供します。両方を使い続けましょう。