Zabbixでディスク使用率を監視する

スポンサーリンク

目的

Zabbixを使用してディスク使用率を監視します。

ネットワーク構成

環境

Zabbixサーバの環境です。

OSWebサーバデータベースPHPZabbix ServerZabbix Agent
CnetOS 7.8Apache 2.4.6MySQL 8.0.217.2.324.0.234.0.23

クライアントの環境です。

OSZabbix Agent
CnetOS 7.44.0.23
Windows Server 20194.0.23

監視設定

アイテムの設定

項目CentOS側の設定値Windows側の設定値
名前ディスク使用率 /ディスク使用率 C:
タイプZabbixエージェントZabbixエージェント
キーvfs.fs.size[/,pused]vfs.fs.size[C:,pused]
データ型数値(浮動小数)数値(浮動小数)
単位%%
監視間隔1m1m
アプリケーションの作成DiskDisk

トリガーの設定

項目CentOS側の設定値Windows側の設定値
名前{HOST.NAME} ディスク使用率の閾値超え{HOST.NAME} ディスク使用率の閾値超え
深刻度警告警告
条件式{CentOS7-ZA4-1:vfs.fs.size[/,pused].last(#1)}>80

※ディスク使用率が80パーセントを超えたという意味です。
{Windows2019-1:vfs.fs.size[C:,pused].last(#1)}>80

※ディスク使用率が80パーセントを超えたという意味です。
手動クローズを許可チェックをつけるチェックをつける

アクションの設定

項目設定値
デフォルトのアクション実行ステップの間隔1h
デフォルトの件名【ZBX】{TRIGGER.NAME}
デフォルトのメッセージOriginal event ID: {EVENT.ID}
障害発生時刻:{DATE} {TIME}
ホスト名:{HOST.HOST}
IPアドレス:{HOST.IP}
設置場所:{INVENTORY.LOCATION}
深刻度:{TRIGGER.SEVERITY}
障害内容:{TRIGGER.NAME}
最新値:{ITEM.LASTVALUE}
メンテナンス中の場合に実行を保留チェックをつける
実行内容アラートメールの宛先を設定

動作確認

最新データの状態です。正常時は以下の通りです。

ホスト名前最新のチェック時刻最新の値
CentOS7-ZA4-1ディスク使用率 /2023/02/26 01:45:3036.2399 %
Windows2019-1ディスク使用率 C:2023/02/26 01:45:3127.9836 %

ダミーファイルを作成してディスク使用率が80パーセントを超えるようにします。
Windowsは「fsutilコマンド」、CentOSは「ddコマンド」を使用します。

ホスト名前最新のチェック時刻最新の値
CentOS7-ZA4-1ディスク使用率 /2023/02/26 01:59:2094.7356 %
Windows2019-1ディスク使用率 C:2023/02/26 01:50:4192.2075 %

アラートメールが届いていることを確認します。

件名本文備考
【ZBX】CentOS7-ZA4-1 ディスク使用率の閾値超えOriginal event ID: 480
障害発生時刻:2023.02.26 01:59:24
ホスト名:CentOS7-ZA4-1
IPアドレス:192.168.188.134
設置場所:UNKNOWN
深刻度:Warning
障害内容:CentOS7-ZA4-1 ディスク使用率の閾値超え
最新値:94.74 %
閾値の80%を超えたのが01:59でした。障害発生時刻が01:59なのでトリガーの閾値超えが正常に機能しています。
【ZBX】Windows2019-1 ディスク使用率の閾値超えOriginal event ID: 478
障害発生時刻:2023.02.26 01:49:23
ホスト名:Windows2019-1
IPアドレス:192.168.188.165
設置場所:UNKNOWN
深刻度:Warning
障害内容:Windows2019-1 ディスク使用率の閾値超え
最新値:92.21 %
閾値の80%を超えたのが01:49でした。障害発生時刻が01:49なのでトリガーの閾値超えが正常に機能しています。

参考

サーバに複数のディスクが搭載されている場合、ディスカバリ機能を使用すると便利です。ディスカバリ機能を使うとディスクを増設した場合でも自動的に全ドライブを検知し監視することができます。

ディスカバリルール

名前DiskDiscovery
タイプZabbixエージェント
キーvfs.fs.discovery
監視間隔1h

フィルタ

マクロ{#FSTYPE}
正規表現@File systems for discovery

アイテムのプロトタイプ

ディスクの総容量

項目CentOS/Windowsの設定値
名前05.ディスクの総容量 $1
タイプZabbixエージェント
キーvfs.fs.size[{#FSNAME},total]
データ型数値(整数)
単位B
監視間隔5m
アプリケーションの作成Disk

ディスクの使用量

項目CentOS/Windowsの設定値
名前10.ディスクの使用量 $1
タイプZabbixエージェント
キーvfs.fs.size[{#FSNAME},used]
データ型数値(整数)
単位B
監視間隔5m
アプリケーションの作成Disk

ディスクの空き容量

項目CentOS/Windowsの設定値
名前15.ディスクの空き容量 $1
タイプZabbixエージェント
キーvfs.fs.size[{#FSNAME},free]
データ型数値(整数)
単位B
監視間隔5m
アプリケーションの作成Disk

ディスクの使用率

項目CentOS/Windowsの設定値
名前20.ディスクの使用率 $1
タイプZabbixエージェント
キーvfs.fs.size[{#FSNAME},pused]
データ型数値 (浮動小数)
単位%
監視間隔5m
アプリケーションの作成Disk

トリガーのプロトタイプ

項目CentOS側の設定値Windows側の設定値
名前{HOST.NAME} {#FSNAME} ディスク使用率の閾値超え{HOST.NAME} {#FSNAME} ディスク使用率の閾値超え
深刻度警告警告
条件式{CentOS7-ZA4-1:vfs.fs.size[{#FSNAME},pused].last(#1)}>80

※ディスク使用率が80パーセントを超えたという意味です。
{Windows2019-1:vfs.fs.size[{#FSNAME},pused].last(#1)}>80

※ディスク使用率が80パーセントを超えたという意味です。
手動クローズを許可チェックをつけるチェックをつける