У меня Intel ssd (серия 530, 480gb). Данные с сайта Intel:
Последовательное чтение - 540 МБ / с
Последовательная запись - 490 МБ / с
Случайное чтение - 48000 IOPS
Случайная запись - 80000 IOPS
Текущая нагрузка составляет около 5000 iops, 50 МБ / с при чтении, 1 МБ / с при записи. Диск используется для базы данных. Плагин Munin "disk utilization" показывает 50% использования. По тесту Мунин рассчитал правильно.
Как я могу рассчитать использование диска на основе текущих операций ввода-вывода в секунду, скорости чтения и записи?
Считывая исходный код плагина diskstats, munin вычисляет процент использования диска, глядя на общее время, потраченное на ввод-вывод за данный период мониторинга. Если устройство все свое время тратит на ввод-вывод, то оно загружено на 100%. Это в некоторой степени не зависит от фактического количества операций ввода-вывода в секунду и скорости чтения / записи, так как они будут иметь очень зависимый от шаблона доступа эффект. (Я полагаю, вы на самом деле спрашиваете, как munin вычисляет процент использования, а не конкретно, как использовать IOP и размеры чтения / записи для расчета того же самого)
Мунин получает эти данные из / proc / diskstats. Рассматриваемый столбец - это 10-е поле после имени устройства (и munin выполняет обычную операцию по сохранению значения в первый раз, когда он его читает, и второй раз, когда он читает его, вычисляя разницу между старым и новым значениями, чтобы рассчитать дельту за период мониторинга).
Доступна документация для / proc / diskstats. Вот