「Windowsサーバーが夜中に停止していた…」 「ディスク容量不足に気づかなかった…」 「CPUが100%になっているのを見逃した…」
こんなトラブルを防ぐために必要なのが「監視」です。
Zabbix(ザビックス)は、世界中で使われている無料の監視ツール。 WindowsサーバーのCPU、メモリ、ディスク、サービスなど、あらゆる状態を24時間365日監視して、異常があればすぐに通知してくれます。
大企業のデータセンターから、小規模なオフィスまで、規模を問わず活用できるんです。
この記事では、WindowsをZabbixで監視する方法を、インストールから実践的な活用まで、すべて分かりやすく解説します。 もう深夜の緊急対応に怯える必要はありません!
Zabbixって何?なぜWindows監視に最適なの?

Zabbixの基本概念
Zabbixは、ラトビア発のオープンソース監視ツールです。
主な特徴:
- 完全無料:エンタープライズ機能も無料
- 高機能:大規模環境にも対応
- 柔軟性:カスタマイズ自在
- 日本語対応:UIも文書も充実
監視の仕組み:
Zabbixサーバー(監視する側)
↓↑
Zabbixエージェント(Windowsにインストール)
↓
Windows情報を収集・送信
なぜZabbixがWindows監視に適しているのか
Windows専用機能:
- WMI(Windows Management Instrumentation)対応
- イベントログ監視
- パフォーマンスカウンター取得
- Windowsサービス監視
- Active Directory連携
他ツールとの比較:
- Nagios:設定が複雑、GUI劣る
- PRTG:有料(100センサーまで無料)
- SolarWinds:高額
- Azure Monitor:Azure限定、従量課金
Zabbixは無料で高機能、これが最大の魅力です!
監視環境の構成パターン
小規模環境(1-10台)
シンプル構成:
Zabbixサーバー(Linux/Windows)
├── Windows Server 2022
├── Windows Server 2019
└── Windows 10/11 クライアント
仮想マシン1台でZabbixサーバーを構築可能。
中規模環境(10-100台)
標準構成:
Zabbixサーバー(専用サーバー)
├── Zabbixプロキシ(支社)
│ └── Windows群
└── 直接監視
└── 本社Windows群
プロキシで負荷分散と拠点間通信を最適化。
大規模環境(100台以上)
エンタープライズ構成:
- 冗長化されたZabbixサーバー
- 複数のプロキシ
- 専用データベースサーバー
- 分散監視
Zabbixエージェントのインストール(Windows側)
エージェントのダウンロード
公式サイトから入手:
- https://www.zabbix.com/download_agents
- Windows用を選択
- バージョンとアーキテクチャ選択
- 64bit版推奨
- LTS版が安定
インストール手順
方法1:MSIインストーラー(推奨)
- MSIファイルを実行
- 設定入力
- Host name:監視対象の名前
- Zabbix server IP:サーバーのIPアドレス
- Server active:アクティブチェック用
- Listen port:10050(デフォルト)
- サービスとして登録
- 自動的にサービス登録
- 自動起動設定
方法2:手動インストール
# ファイルを展開
C:\zabbix\
# 設定ファイル編集
notepad C:\zabbix\conf\zabbix_agentd.conf
# サービス登録
C:\zabbix\bin\zabbix_agentd.exe --config C:\zabbix\conf\zabbix_agentd.conf --install
# サービス開始
net start "Zabbix Agent"
設定ファイルの重要パラメータ
zabbix_agentd.conf:
# Zabbixサーバーのアドレス
Server=192.168.1.100
# アクティブチェック用
ServerActive=192.168.1.100
# ホスト名(Zabbixサーバーと一致させる)
Hostname=WIN-SERVER-01
# ログファイル
LogFile=C:\zabbix\zabbix_agentd.log
# タイムアウト
Timeout=30
# リモートコマンド許可(注意が必要)
EnableRemoteCommands=1
# PSK暗号化(セキュリティ強化)
TLSConnect=psk
TLSAccept=psk
TLSPSKIdentity=WIN-01
TLSPSKFile=C:\zabbix\zabbix_agentd.psk
Windowsファイアウォールの設定
ポート開放
PowerShell(管理者)で実行:
# Zabbixエージェント用ポート開放
New-NetFirewallRule -DisplayName "Zabbix Agent" `
-Direction Inbound `
-Protocol TCP `
-LocalPort 10050 `
-Action Allow
# 特定IPからのみ許可する場合
New-NetFirewallRule -DisplayName "Zabbix Agent Restricted" `
-Direction Inbound `
-Protocol TCP `
-LocalPort 10050 `
-RemoteAddress 192.168.1.100 `
-Action Allow
Windows Defenderの除外設定
# Zabbixフォルダを除外
Add-MpPreference -ExclusionPath "C:\zabbix"
Add-MpPreference -ExclusionProcess "zabbix_agentd.exe"
Zabbixサーバー側の設定

ホストの追加
Web UIでの設定:
- 設定 → ホスト → ホストの作成
- ホストタブ:
- ホスト名:WIN-SERVER-01
- 表示名:Windows Server 2022
- グループ:Windows servers
- エージェントインターフェース:
- IPアドレス:192.168.1.10
- ポート:10050
- テンプレートタブ:
- 「Windows by Zabbix agent」を追加
- Active Directory用なら専用テンプレート
- 保存
テンプレートの種類
Windows用標準テンプレート:
- Windows by Zabbix agent:基本監視
- Windows filesystems by Zabbix agent:ファイルシステム
- Windows CPU by Zabbix agent:CPU詳細
- Windows memory by Zabbix agent:メモリ詳細
- Windows network by Zabbix agent:ネットワーク
主要な監視項目の設定
CPU監視
監視項目:
# CPU使用率
system.cpu.util[all,avg5]
# CPU負荷
system.cpu.load[percpu,avg5]
# プロセッサキュー
perf_counter["\System\Processor Queue Length"]
トリガー設定:
- 警告:CPU使用率 > 80%(5分間)
- 致命的:CPU使用率 > 95%(3分間)
メモリ監視
監視項目:
# 物理メモリ使用率
vm.memory.size[pused]
# 利用可能メモリ
vm.memory.size[available]
# ページファイル使用率
perf_counter["\Paging File(_Total)\% Usage"]
推奨閾値:
- メモリ使用率 > 90%で警告
- ページファイル > 80%で警告
ディスク監視
監視項目:
# ディスク使用率
vfs.fs.size[C:,pused]
# ディスク空き容量
vfs.fs.size[C:,free]
# ディスクI/O
perf_counter["\PhysicalDisk(_Total)\Avg. Disk Queue Length"]
アラート例:
- C:ドライブ残容量 < 10GB
- 使用率 > 90%
Windowsサービス監視
重要サービスの監視:
# サービス状態確認
service.info[servicename]
# 例:IISの監視
service.info[W3SVC]
# SQL Serverの監視
service.info[MSSQLSERVER]
# Active Directoryの監視
service.info[NTDS]
自動復旧設定:
# リモートコマンドでサービス再起動
system.run[net start servicename]
イベントログ監視
設定方法
重要イベントの監視:
# エラーイベント監視
eventlog[System,,Error,,,,skip]
# 特定イベントIDの監視
eventlog[Application,,"Warning|Error",,,1001,skip]
# セキュリティログ監視
eventlog[Security,,"Failure Audit",,,,skip]
よく監視するイベントID
システム系:
- 6008:予期しないシャットダウン
- 1074:システムシャットダウン
- 7036:サービスの開始/停止
セキュリティ系:
- 4625:ログオン失敗
- 4624:ログオン成功
- 4720:ユーザーアカウント作成
パフォーマンスカウンター監視
カスタム監視の作成
パフォーマンスカウンター取得:
# IISの接続数
perf_counter["\Web Service(_Total)\Current Connections"]
# SQL Serverのバッファキャッシュ
perf_counter["\SQLServer:Buffer Manager\Buffer cache hit ratio"]
# ネットワーク使用率
perf_counter["\Network Interface(*)\Bytes Total/sec"]
PowerShellスクリプト連携
カスタムスクリプト実行:
# UserParameter設定
UserParameter=custom.check,powershell.exe -NoProfile -ExecutionPolicy Bypass -File C:\zabbix\scripts\check.ps1
アラート通知の設定
メール通知
設定手順:
- 管理 → メディアタイプ → Email
- SMTPサーバー設定
- ユーザーにメールアドレス登録
- アクション設定
Teams/Slack通知
Webhook設定:
// Teams通知用JavaScript
var params = JSON.parse(value);
var req = new HttpRequest();
req.addHeader('Content-Type: application/json');
var message = {
"@type": "MessageCard",
"summary": params.Subject,
"sections": [{
"activityTitle": params.Subject,
"text": params.Message
}]
};
return req.post(params.URL, JSON.stringify(message));
トラブルシューティング

エージェントが接続できない
確認項目:
- サービス状態確認
sc query "Zabbix Agent"
- ログ確認
type C:\zabbix\zabbix_agentd.log
- ポート確認
netstat -an | findstr 10050
- 疎通確認
telnet zabbix-server-ip 10051
データが取得できない
対処法:
- UAC無効化またはエージェント権限昇格
- WMIサービス再起動
- パフォーマンスカウンター再構築
lodctr /R
高負荷時の対処
最適化:
- 監視間隔を調整(30秒→60秒)
- 不要な監視項目を無効化
- アクティブチェックに切り替え
セキュリティ強化
PSK暗号化の設定
事前共有鍵の生成:
# 64文字の16進数文字列生成
-join ((1..32) | ForEach {'{0:X2}' -f (Get-Random -Max 256)})
最小権限の原則
専用ユーザー作成:
# Zabbix用ローカルユーザー
New-LocalUser -Name "zabbix_mon" -Password (ConvertTo-SecureString "P@ssw0rd" -AsPlainText -Force)
Add-LocalGroupMember -Group "Performance Monitor Users" -Member "zabbix_mon"
まとめ:24時間365日の安心を手に入れる
ZabbixでのWindows監視環境を構築すれば、システムトラブルを未然に防げます。
導入のステップ:
- 小さく始める
- まず1台から監視
- 基本的な項目のみ
- 徐々に拡張
- 重要項目から監視
- CPU、メモリ、ディスク
- 重要サービス
- イベントログ
- カスタマイズ
- 業務に合わせた監視
- 自動復旧設定
- 通知の最適化
成功のポイント:
- 過剰な監視は避ける
- 閾値は環境に合わせて調整
- 定期的なメンテナンス
- ドキュメント化
Zabbixは学習コストはありますが、一度構築すれば強力な味方になります。
もう深夜の障害対応に怯える必要はありません。 Zabbixが24時間365日、あなたの代わりに見守ってくれます。
この記事を参考に、安心できる監視環境を構築してください! システムの健康状態を可視化して、トラブルを未然に防ぎましょう!
コメント