Мониторинг ввода-вывода
100%

Использование процессов · Урок 5

Мониторинг ввода-вывода

Узнайте, как использовать образцы iostat для исследования активности CPU и блочных устройств.

iostat, обычно предоставляемый пакетом sysstat, сообщает активность CPU и блочных устройств. Используйте повторные образцы вместе с задержкой приложения: одна пропускная способность или утилизация не доказывает, что видимую пользователю проблему вызывает хранилище.

Сбор полезных образцов

Запустите расширенную статистику устройств с интервалом в одну секунду:

$ iostat -xz 1

В распространённых реализациях первый отчёт содержит средние значения с момента загрузки, а последующие охватывают каждый интервал. Параметр -x добавляет расширенные поля, а -z скрывает неактивные устройства. Дайте команде собрать несколько интервалов нормальной и проблемной работы.

Что обычно представляет первый отчёт iostat?

Чтение полей CPU

Раздел CPU обычно включает время пользователя (%user), системы (%system), простоя (%idle), ожидания ввода-вывода (%iowait) и времени, забранного виртуальной машиной (%steal). Ожидание ввода-вывода — это время простоя CPU, когда в системе есть незавершённый запрос I/O, а не процент занятости диска.

Что описывает %iowait?

Чтение полей устройств

Имена полей зависят от версии sysstat, но полезны следующие понятия:

  • Число операций чтения и записи или объём данных в секунду показывает интенсивность нагрузки.
  • await сообщает среднюю задержку запроса, включая время в очереди и обслуживания.
  • Поля среднего размера очереди показывают запросы, ожидающие или получающие обслуживание.
  • %util сообщает процент прошедшего времени, когда устройство выполняло ввод-вывод.

Высокий %util может указывать на насыщение простого последовательного устройства, но не переводится напрямую в доступную производительность параллельного хранилища, массива или виртуального устройства. Сравнивайте задержку с конструкцией устройства, характером нагрузки и целью обслуживания.

Какое поле наиболее непосредственно связано со средней задержкой запроса ввода-вывода?

Сопоставление свидетельств

До выводов сопоставьте имена устройств с точками подключения и нижележащими устройствами:

$ lsblk -o NAME,TYPE,SIZE,FSTYPE,MOUNTPOINTS
$ findmnt

Затем сопоставьте интервалы iostat со временем ответа приложения, метриками базы данных или файловой системы и вводом-выводом процессов. Device mapper, RAID, контейнеры и сетевые хранилища могут добавлять уровни, для которых нужны собственные инструменты.

Что следует сделать после обнаружения высокого %util у устройства?

Урок завершён

Вы завершили Мониторинг ввода-вывода

Теперь вы можете использовать iostat как свидетельство при исследовании ввода-вывода.

  • Собирайте несколько интервалов расширенной статистики.

  • Отличайте ожидание ввода-вывода CPU от времени занятости устройства.

  • Интерпретируйте вместе задержку, очередь, пропускную способность и утилизацию.

  • Сопоставляйте устройства с нагрузками и проверяйте влияние на приложение.

Сохраните прогресс

Создайте бесплатный аккаунт, чтобы сохранить этот урок и продолжить на любом устройстве.

Создать бесплатный аккаунт
Следующий Урок
Назад к Использование процессов