Zabbix CPU監視設定を初心者向けに完全解説
「CPU使用率が高い」と言われても、最初は何を見ればよいのか分からない。
監視運用を始めたばかりの頃は、こう感じる人が多いです。
実際の運用現場では、CPU監視はかなり重要です。
CPU負荷の上昇は、サーバ性能低下やサービス遅延の原因になるためです。
ただし、単純にCPU使用率を監視するだけでは不十分です。
・どの値を監視するのか
・どの閾値でアラートを出すのか
・誤検知をどう減らすのか
ここまで考えないと、運用負荷が増えてしまいます。
この記事では、ZabbixでCPU監視を設定する方法を、初心者向けに分かりやすく解説します。
実務でよくある失敗例や、運用現場で注意されるポイントも含めて説明するので、監視運用の基礎理解にも役立ちます。
ZabbixでCPU監視が重要な理由
CPU監視は、サーバ監視の基本です。
CPU使用率が高くなると、処理性能が低下します。
その結果、Webサイト表示遅延やバッチ処理停止などにつながります。
特に以下のような環境では重要です。
- Webサーバ
- DBサーバ
- 仮想サーバ
- バッチ処理サーバ
CPU監視が必要になる場面
実務では、以下のようなケースでCPU監視が役立ちます。
- 急なアクセス増加
- 無限ループによるCPU高騰
- バッチ処理暴走
- ウイルス対策ソフト負荷
- 仮想基盤側のリソース不足
CPU監視がないと、障害発見が遅れます。
ユーザーから「画面が遅い」と問い合わせが来て初めて気付くケースもあります。
CPU高負荷で発生しやすい障害
CPU高負荷になると、以下が起こりやすくなります。
- サービス応答遅延
- SSH接続遅延
- タイムアウト増加
- アプリ停止
特に新人エンジニアが勘違いしやすいのが、「CPU使用率100%=即障害」ではない点です。
バッチサーバでは一時的にCPU100%になることもあります。
そのため、「継続時間」も重要です。
ZabbixのCPU監視で取得できる主な項目
Zabbixでは、CPU関連のさまざまな情報を取得できます。
CPU使用率
もっとも基本的な監視です。
主に以下を確認します。
- user使用率
- system使用率
- idle率
Linuxでは、CPU idle率を利用してCPU使用率を計算するケースが多いです。
例えば以下のようなアイテムがあります。
system.cpu.util[,idle]
これはCPUの待機率です。
つまり、
100 - idle率
でCPU使用率を判断できます。
Load Average
Load Averageは、Linuxでよく使われる負荷指標です。
初心者はCPU使用率と混同しやすいですが、意味が違います。
Load Averageは、
「CPU処理待ちのプロセス数」
に近い考え方です。
CPU使用率が低くても、Load Averageが高い場合があります。
これはディスクI/O待ちなどが原因です。
先輩エンジニアとの会話でもよく出ます。
CPU使用率は低いのに重い…
Load Averageを見てみよう。I/O待ちかもしれないね
CPU待機時間(iowait)
iowaitは、ディスク待ち時間です。
DBサーバで重要になります。
CPU問題に見えて、実際はストレージ性能不足だった、というケースもあります。
CPU使用率だけを見ると原因を見誤ります。
ZabbixでCPU監視を設定する方法
ホストを登録する
まず監視対象サーバを登録します。
基本的には以下を設定します。
- ホスト名
- IPアドレス
- テンプレート
- エージェント接続情報
Linuxサーバなら、Zabbix Agentを導入する構成が一般的です。
CPU監視アイテムを設定する
代表的なCPU監視アイテムはこちらです。
system.cpu.util[,idle]
更新間隔は1分〜5分程度がよく使われます。
初心者は「短いほど良い」と考えがちですが、監視負荷も増えます。
監視対象が多い環境では注意が必要です。
よくある失敗
- 更新間隔を10秒にする
- 不要なCPU項目を大量取得する
- テスト用アイテムを残す
これでZabbix Server負荷が上がることがあります。
トリガーを設定する
例えばCPU使用率80%以上を5分継続した場合に通知します。
例:
avg(/Linux server/system.cpu.util[,idle],5m)<20
これは、
「5分平均のidle率が20%未満」
つまりCPU使用率80%以上を意味します。
初心者はここで混乱しやすいです。
idle監視なので、数字が低いほど負荷が高い点に注意してください。
グラフで確認する
設定後は必ずグラフを確認します。
ここを省略する新人はかなり多いです。
確認ポイントはこちらです。
- 値が取得できているか
- 急激な変動がないか
- 異常値が出ていないか
設定ミスだと、常に100%表示になるケースもあります。
ZabbixのCPU監視設定で初心者がハマりやすいポイント
閾値を低く設定しすぎる
CPU70%ですぐ通知。
これは実務ではかなり危険です。
通知が多発します。
結果として、
「またいつものアラートか」
となり、本当に危険な通知を見逃します。
これは“アラート疲れ”と呼ばれます。
一時的な高負荷で誤検知する
CPUは瞬間的に上がることがあります。
そのため、
- 5分平均
- 10分平均
を使うケースが多いです。
特にバッチサーバでは重要です。
CPU使用率だけを見てしまう
実務ではCPUだけで障害判断しません。
一緒に確認するもの:
- メモリ
- ディスクI/O
- Load Average
- プロセス数
CPUだけで判断すると、原因切り分けを誤ります。
Zabbixの実務でよく使うCPU監視の考え方
平均値で監視する
瞬間値だけだと誤検知しやすいです。
そのため、
- avg()
- min()
- max()
などを使います。
実務では平均監視がかなり多いです。
サーバ用途ごとに閾値を変える
WebサーバとDBサーバでは負荷傾向が違います。
例えば:
| サーバ | CPU閾値 |
|---|---|
| Webサーバ | 80% |
| DBサーバ | 70% |
| バッチサーバ | 90% |
一律設定は危険です。
障害対応時はCPU以外も確認する
CPU高負荷だけでは原因特定できません。
Linuxコマンドも重要です。
よく使うコマンド:
top
vmstat
iostat
監視だけではなく、OS調査もセットで覚えると実務で役立ちます。
ZabbixでCPU監視設定後に確認すべきポイント
正しくデータ取得できているか
まず最新データを確認します。
ここで値が取得できていなければ意味がありません。
アラートが多発していないか
通知頻度は重要です。
通知が多すぎると運用負荷が増えます。
「本当に通知が必要か」を考えましょう。
運用チームで基準を統一しているか
運用現場では、
- CPU80%で通知
- CPU90%で障害扱い
など基準を決めることがあります。
個人判断だけで設定しないことも大切です。
まとめ
ZabbixのCPU監視は、監視運用の基本です。
ただし、
「CPU使用率を見るだけ」
では実務では不十分です。
重要なのは以下です。
- 適切な閾値設定
- 誤検知を減らす
- サーバ用途に合わせる
- CPU以外も確認する
初心者のうちは、まず「なぜその設定をするのか」を意識してください。
そこを理解すると、単なる手順暗記ではなく、運用設計として考えられるようになります。








