ディスクのI/Oを監視する

はじめに

ディスクのI/Oを監視します。

このコンテンツをテストするには、事前に以下の設定が必要です。1番から順番に実施して下さい。
ホストグループの作成 → ②ホストの登録

環境

OS:CentOS 7.7.1908
WebServer:Apache/2.4.6
PHP:7.2.28
MySQL:8.0.19
Zabbix:4.0.18

対象OS

ディスクのI/Oは、Linux系OSとWindowsOSで使用できるキーが異なるので分けてまとめています。

Linux

監視内容

監視項目アイテムキー説明
ディスク読み込みvfs.dev.read[(device),(type),(mode)]https://www.zabbix.com/documentation/2.2/jp/manual/config/items/itemtypes/zabbix_agent
ディスク書き込みvfs.dev.write[(device),(type),(mode)]同上

アイテムの作成

10.ディスクの読み込み

  • 名前:10.ディスクの読み込み
  • タイプ:Zabbixエージェント
  • キー:vfs.dev.read[,sps,avg1]
  • データ型:数値 (浮動小数)
  • 単位:sps

20.ディスク書き込み

  • 名前:20.ディスク書き込み
  • タイプ:Zabbixエージェント
  • キー:vfs.dev.write[,sps,avg1]
  • データ型:数値 (浮動小数)
  • 単位:sps

動作確認

CentOSの監視状況です。

Windows

監視内容

監視項目アイテムキー説明
ディスクタイムperf_counter[\PhysicalDisk(_Total)\% Disk Time]ディスクに対するI/O要求を処理する時間の割合。
ディスク転送時間(R/W)perf_counter[\PhysicalDisk(_Total)\Avg. Disk sec/Transfer]ディスク転送時間の平均秒数。300ms以上が継続する場合はエラー発生の可能性あり。
ディスク転送時間(Read)perf_counter[\PhysicalDisk(_Total)\Avg. Disk sec/Read]ディスクからのデータ読み込み時間の平均秒数
ディスク転送時間(Write)perf_counter[\PhysicalDisk(_Total)\Avg. Disk sec/Write]ディスクからのデータ書き込み時間の平均秒数
ディスク速度(R/W)perf_counter[\PhysicalDisk(_Total)\Disk Transfer/sec]ディスクが1秒当たりに処理できる読み書き速度
ディスク速度(Read)perf_counter[\PhysicalDisk(_Total)\Disk Reads/sec]ディスクが1秒当たりに処理できる読み込み速度
ディスク速度(Write)perf_counter[\PhysicalDisk(_Total)\Disk Writes/sec]ディスクが1秒当たりに処理できる書き込み速度
ディスク転送量(R/W)perf_counter[\PhysicalDisk(_Total)\Disk Bytes/sec]ディスクが1秒間の読み書きで転送できるデータ量常に20KByte以下の場合は、ディスクI/Oがボトルネックの可能性あり。
ディスク転送量(Read)perf_counter[\PhysicalDisk(_Total)\Disk Read Bytes/sec]ディスクが1秒間の読み込みで転送できるデータ量
ディスク転送量(Write)perf_counter[\PhysicalDisk(_Total)\Disk Write Bytes/sec]ディスクが1秒間の書き込みで転送できるデータ量
ディスクキュー(Avg)perf_counter[\PhysicalDisk(_Total)\Avg. Disk Queue Length]ディスクのキューに入った読み込みおよび書き込み要求の数の平均値。2以下が望ましい。
ディスクキュー(Read)perf_counter[\PhysicalDisk(_Total)\Avg. Disk Read Queue Length]ディスク読み込み待ちの要求数。2以下が望ましい。
ディスクキュー(Write)perf_counter[\PhysicalDisk(_Total)\Avg. Disk Write Queue Length]ディスク書き込み待ちの要求数。2以下が望ましい。

ディスカバリの作成

ディスカバリのルール

  • 名前:Disk Discovery
  • タイプ:Zabbixエージェント
  • キー:vfs.fs.discovery

フィルタ

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

アイテムのプロトタイプの作成

名前:05.ディスクタイム {#FSNAME}
タイプ:Zabbixエージェント
キー:perf_counter[\PhysicalDisk(* {#FSNAME})\% Disk Time]
データ型:数値 (浮動小数)
単位:%

名前:12.ディスク転送時間 Read {#FSNAME}
タイプ:Zabbixエージェント
キー:perf_counter[\PhysicalDisk(* {#FSNAME})\Avg. Disk sec/Read]
データ型:数値 (浮動小数)
単位:s

名前:14.ディスク転送時間 Write {#FSNAME}
タイプ:Zabbixエージェント
キー:perf_counter[\PhysicalDisk(* {#FSNAME})\Avg. Disk sec/Write]
データ型:数値 (浮動小数)
単位:s

名前:22.ディスク速度 Read {#FSNAME}
タイプ:Zabbixエージェント
キー:perf_counter[\PhysicalDisk(* {#FSNAME})\Disk Reads/sec]
データ型:数値 (浮動小数)

名前:24.ディスク速度 Write {#FSNAME}
タイプ:Zabbixエージェント
キー:perf_counter[\PhysicalDisk(* {#FSNAME})\Disk Writes/sec]
データ型:数値 (浮動小数)

名前:32.ディスク転送量 Read {#FSNAME}
タイプ:Zabbixエージェント
キー:perf_counter[\PhysicalDisk(* {#FSNAME})\Disk Read Bytes/sec]
データ型:数値 (浮動小数)
単位:B

名前:34.ディスク転送量 Write {#FSNAME}
タイプ:Zabbixエージェント
キー:perf_counter[\PhysicalDisk(* {#FSNAME})\Disk Write Bytes/sec]
データ型:数値 (浮動小数)
単位:B

名前:42.ディスクキュー Read {#FSNAME}
タイプ:Zabbixエージェント
キー:perf_counter[\PhysicalDisk(* {#FSNAME})\Avg. Disk Read Queue Length]
データ型:数値 (浮動小数)

名前:44.ディスクキュー Write {#FSNAME}
タイプ:Zabbixエージェント
キー:perf_counter[\PhysicalDisk(* {#FSNAME})\Avg. Disk Write Queue Length]
データ型:数値 (浮動小数)

アイテムの作成

名前:05.ディスクタイム All
タイプ:Zabbixエージェント
キー:perf_counter[\PhysicalDisk(_Total)\% Disk Time]
データ型:数値 (浮動小数)
単位:%

名前:10.ディスク転送時間 All
タイプ:Zabbixエージェント
キー:perf_counter[\PhysicalDisk(_Total)\Avg. Disk sec/Transfer]
データ型:数値 (浮動小数)
単位:s

名前:20.ディスク速度 All
タイプ:Zabbixエージェント
キー:perf_counter[\PhysicalDisk(_Total)\Disk Transfers/sec]
データ型:数値 (浮動小数)

名前:30.ディスク転送量 All
タイプ:Zabbixエージェント
キー:perf_counter[\PhysicalDisk(_Total)\Disk Bytes/sec]
データ型:数値 (浮動小数)
単位:B

名前:40.ディスクキュー All
タイプ:Zabbixエージェント
キー:perf_counter[\PhysicalDisk(_Total)\Avg. Disk Queue Length]
データ型:数値 (浮動小数)

動作確認

Windows10の監視状況です。

タイトルとURLをコピーしました