2026年5月26日

2026年5月26日

Glancesでシステムリソースを監視する方法:WordPressサーバーが重いときの原因の見分け方

Glances は、CPU・メモリ・ディスク・ネットワーク・プロセスを1つの画面にまとめて表示する、Python 製のシステム監視ツールです。WordPress のサイトが急に重くなったときに Glances を開くと、原因が CPU、メモリ不足、ディスクの読み書き、特定のプロセスのどれにあるかを短時間で絞り込めます。この記事では、インストールから画面の読み方、WordPress サーバーで注目する項目、閾値の設定、Web 画面の安全な使い方までを説明します。

Glances でできること・できないこと

Glances が得意なのは「今この瞬間」の状態を一覧することです。top や htop よりも表示項目が多く、負荷の高い項目が色で示されるため、どこから調べればよいかがすぐ分かります。

一方で、長期間のデータを保存して傾向を見るのは本来の用途ではありません。過去のグラフやアラートが必要なら、Prometheus や InfluxDB などの監視基盤と組み合わせます。Glances にも外部へデータを送る機能がありますが、まずは障害時の調査用ツールとして使い方を押さえておくと役に立ちます。

ステップ1:インストールする

ディストリビューションのパッケージで入れるのが最も手軽です。

# Ubuntu / Debian
sudo apt install glances

glances --version

ただし、ディストリビューションのパッケージは古いバージョンのことが多く、Web 画面や API の機能が新しい版と異なる場合があります。新しい版を使いたい場合は、システムの Python 環境を汚さないよう pipx で入れる方法が公式に案内されています。

sudo apt install pipx
pipx install glances
# Web 画面などの追加機能はエクストラ指定が必要な場合がある
# 指定方法は公式ドキュメントを確認する

Glances は 4 系が現行のメジャーバージョンで、3 系とは API のパスなど一部が異なります(2026年10月現在)。記事や手順を参考にするときは、どちらの版を前提にしているかを確認してください。

ステップ2:画面の読み方

glances と入力すると、ターミナル全体に監視画面が表示されます。終了は q です。上から順に、次の情報が並びます。

  • CPU:user(アプリケーション)、system(カーネル)、iowait(ディスク待ち)、steal(仮想化基盤に奪われた時間)などの割合
  • MEM と SWAP:メモリとスワップの使用率
  • LOAD:1分・5分・15分のロードアベレージ。コア数と比べて読みます
  • NETWORK と DISK I/O:インターフェースごとの送受信量、ディスクごとの読み書き量
  • FILE SYS:ファイルシステムごとの使用率
  • プロセス一覧:CPU やメモリを多く使っているプロセス

値の色は状態を表し、通常は緑が正常、青が注意、マゼンタが警告、赤が危険です。画面の下部には、警告や危険の状態になった項目の履歴が表示され、いつ何が起きたかを後から確認できます。

よく使うキー操作は次のとおりです。キーの割り当ては版によって変わることがあるため、h でヘルプを表示して確認してください。

  • c/m/i:プロセス一覧を CPU・メモリ・ディスク I/O の順で並べ替える
  • a:並べ替えを自動にする(負荷の種類に応じて切り替わる)
  • 1:CPU を全体表示とコアごとの表示で切り替える
  • ENTER:プロセス名で絞り込む(php-fpm、mysqld など)

ステップ3:WordPress サーバーで注目する項目

サイトが重いときに、症状から原因を絞り込む見方です。可能性の高い順に並べています。

PHP-FPM のプロセスが CPU を使い切っている

プロセス一覧の上位に php-fpm が並び、CPU の user が高い状態です。アクセスの急増、ボットによる大量アクセス、重いプラグインの処理が考えられます。Web サーバーのアクセスログで同じ URL や同じ送信元からのリクエストが集中していないかを確認し、キャッシュの導入やボットの制限、重い処理を行うプラグインの見直しを検討します。

メモリが足りずスワップを使っている

MEM の使用率が高く、SWAP の使用量が増え続けている状態です。PHP-FPM のワーカー数(pm.max_children)が、1プロセスあたりのメモリに対して多すぎる場合によく起こります。プロセス一覧でメモリ順に並べ、php-fpm と mysqld がそれぞれどれだけ使っているかを確認し、ワーカー数や MySQL のバッファサイズを搭載メモリに見合う値に調整します。

iowait が高い

CPU の iowait が高く、DISK I/O の値が大きい状態は、ディスクの読み書きが詰まっていることを示します。データベースの重いクエリ、バックアップ処理、ログの大量書き込みが主な原因です。i でディスク I/O 順に並べ、どのプロセスが読み書きしているかを確認します。バックアップの実行時刻とずらす、遅いクエリを特定するといった対処につながります。

steal が高い

VPS で CPU の steal が継続して高い場合、同じ物理サーバーの他の利用者の影響など、サーバー内からは解決できない原因の可能性があります。サーバー内の設定を変えても改善しない場合は、事業者への問い合わせやプランの変更を検討する材料になります。

ディスクの空き容量が少ない

FILE SYS の使用率が高い状態です。ディスクが埋まると、MySQL が書き込めずにサイトがエラーになることがあります。ログファイル、古いバックアップ、キャッシュのファイルが溜まっていないかを確認し、ログのローテーションを設定します。

ステップ4:閾値を自分の環境に合わせる

色が変わる閾値は設定ファイルで変更できます。Linux では、ユーザーごとの ~/.config/glances/glances.conf や、システム全体の /etc/glances/glances.conf が読み込まれます。読み込まれる場所や項目名は版によって異なるため、配布物に含まれる設定ファイルの例をコピーして編集すると誤りが少なくなります。

# ~/.config/glances/glances.conf の例
[cpu]
user_careful=50
user_warning=70
user_critical=90

[mem]
careful=60
warning=75
critical=90

[fs]
careful=70
warning=80
critical=90

ディスクの容量は、危険の色になってから対処するのでは遅いことがあるため、早めに注意が出る値にしておくと安心です。

ステップ5:Web 画面と API を安全に使う

glances -w で起動すると、ブラウザで同じ画面を見られる Web サーバーモードになり、既定ではポート 61208 で待ち受けます。同時に REST API も提供されるため、ほかのツールから値を取得することもできます。

この画面にはプロセス名やコマンドライン引数など、サーバーの内部情報が表示されます。インターネットに公開せず、ローカルだけで待ち受けて SSH のトンネル経由で見るのが安全です。

# サーバー側:ローカルアドレスだけで待ち受ける
glances -w -B 127.0.0.1

# 手元の PC 側:SSH トンネルを張ってから
# ブラウザで http://localhost:61208/ を開く
ssh -L 61208:127.0.0.1:61208 user@example.com

どうしても外部から見る必要がある場合は、--password でパスワードを設定し、ファイアウォールで接続元の IP を限定し、HTTPS のリバースプロキシを前に置きます。

画面を使わずに特定の値だけを確認したいときは、標準出力モードが便利です。スクリプトやログへの記録に使えます。

# CPU 使用率・メモリ使用率・ロードアベレージを5秒ごとに表示
glances --stdout cpu.user,mem.percent,load -t 5

ステップ6:長期の監視とつなぐ

Glances には、InfluxDB や Prometheus、CSV などにデータを送るエクスポート機能があります。たとえば glances --export csv --export-csv-file /tmp/glances.csv で値を CSV に記録できます。送信先ごとの設定は glances.conf の対応するセクションに書きます。

ただし、常時の監視とアラートには、node_exporter と Prometheus のように常駐とデータ保存を前提とした仕組みのほうが向いています。Glances は「アラートが来たときにサーバーに入って原因を見る道具」と位置づけ、両方を使い分けるのが現実的です。

まとめ

  • Glances は CPU・メモリ・ディスク・ネットワーク・プロセスを1画面で見られ、負荷の高い項目が色で分かります
  • サイトが重いときは、php-fpm の CPU、メモリとスワップ、iowait、steal、ディスク容量の順に確認すると原因を絞りやすくなります
  • 閾値は glances.conf で環境に合わせ、ディスク容量は早めに注意が出る値にします
  • Web 画面と API はローカルで待ち受け、SSH トンネル経由で使います
  • 長期の記録とアラートは Prometheus などに任せ、Glances は調査用として使い分けます

お気軽にご相談ください

お見積りへ お問い合わせへ
▲