Перейти к содержанию
Серверы

Высокий iowait в Linux: CPU ждёт, но причина требует проверки

iowait показывает долю времени CPU, когда он простаивал при ожидающих I/O-операциях. Высокое значение указывает направление, но не называет диск, процесс или запрос.

Антон БелогородцевЧтение: 4 минОбновлено 15 июля 2026 г.4 практических разделов
Что получите
01не используйте iowait в одиночку
02измерьте await/latency
03проверьте очередь

Шкала риска

Демо-ориентир для быстрой интерпретации результата.

Норма

Показатель выглядит штатно.

Внимание

Пора проверить динамику и причины.

Риск

Нужна диагностика до инцидента.

Критично

Сервис может быть недоступен пользователям.

Короткий ответ

Диагностика iowait: CPU idle, disk latency, queue, throughput, процессы, database, swap, cloud volume limits и связь с TTFB.

01

Правильно интерпретируйте iowait

iowait зависит от модели учёта CPU и количества параллельной работы. Низкий iowait не гарантирует быстрый диск, если CPU занят другим, а высокий не доказывает физическую неисправность.

Смотрите latency операций, queue depth, throughput и saturation конкретного устройства. Для облачного volume учитывайте IOPS/throughput caps и burst credits.

не используйте iowait в одиночку
измерьте await/latency
проверьте очередь
учтите лимиты cloud volume
02

Найдите устройство и процесс

iostat показывает устройства и тип нагрузки; pidstat и eBPF-инструменты помогают связать I/O с процессами. Проверьте, не создают ли backup, логирование, контейнерные layers или antivirus постоянную запись.

Для базы данных сопоставьте checkpoint, flush, slow query и размер working set. Недостаток RAM может вытеснить кеш и превратить запросы в случайное чтение.

смотрите per-device
найдите read/write процесс
проверьте backup и logs
сопоставьте с базой
Разовая проверка показывает сейчас

Мониторинг покажет, когда состояние изменится

Добавьте сайт или сервер один раз — perfMon будет проверять его автоматически, сохранит историю и сообщит о сбое и восстановлении.

Начать бесплатно
03

Проверьте swap и память

Активный swap может создавать I/O и одновременно увеличивать latency приложения. Смотрите swap-in/swap-out, major page faults и память процессов.

Простое отключение swap без запаса RAM опасно: вместо задержки можно получить OOM. Сначала устраните утечку, скорректируйте limits или добавьте память.

измерьте si/so
проверьте memory pressure
не отключайте swap вслепую
учитывайте cgroup memory
04

Свяжите диск с пользовательским симптомом

Сопоставьте iowait и disk latency с TTFB, HTTP 5xx, очередью приложения и временем запросов. Если пользовательский симптом не меняется, сигнал может относиться к фоновой задаче.

После исправления повторите тот же workload и проверьте высокий перцентиль latency. Среднее может скрывать короткие, но болезненные stalls.

сравните timestamp
смотрите p95/p99 latency
отделите background I/O
проверьте эффект на TTFB
От знания к системе

Превратите метрики сервера в ранние сигналы

Графики полезны только тогда, когда по ним можно вовремя заметить деградацию и назначить реакцию.

Настроить бесплатно
01Подключите сервер безопасным агентом без удалённых команд.
02Собирайте heartbeat, CPU, RAM и диск вместе с историей.
03Получайте уведомления до того, как перегрузка станет падением сайта.

Частые вопросы

Короткие ответы на вопросы, которые обычно возникают при диагностике.

Какой iowait считается высоким?

Универсального процента нет. Важно устойчивое отклонение от базовой линии вместе с ростом device latency, очереди и пользовательской задержки.

SSD исключает высокий iowait?

Нет. Можно упереться в IOPS, throughput, latency cloud volume, fsync, queue или конкуренцию workloads.

Поможет ли добавить RAM?

Если I/O вызван вытеснением кеша или swap — возможно. Но сначала подтвердите memory pressure и характер операций.

Следующий шаг

Не ждите следующего сообщения «сайт не работает»

Добавьте первый сайт или сервер: perfMon будет проверять состояние автоматически, сохранит историю и уведомит ответственных.

7 дней бесплатнобез картыотмена в любой момент