Что такое Load Average в Linux

«Что такое Load Average в Linux» — вопрос из категории Linux, который задают на 65% собеседований Devops Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Load Average — это усредненные за определенные периоды времени значения числа процессов, находящихся в состоянии R (Runnable) или D (Uninterruptible Sleep).

  • R (Runnable): Процессы, готовые к выполнению и ожидающие своей очереди на CPU.
  • D (Uninterruptible Sleep): Процессы, заблокированные, обычно в ожидании завершения операции ввода-вывода (например, чтения с диска). Это ключевой момент: высокий load average может быть вызван не CPU, а медленным диском или сетью.

Система выводит три числа: средняя нагрузка за 1, 5 и 15 минут.

Как интерпретировать? Сравнивайте значение с количеством доступных CPU ядер (не потоков!). Узнать можно командой nproc или grep -c ^processor /proc/cpuinfo.

  • Load < Число ядер: Система справляется, процессы не ждут.
  • Load ≈ Число ядер: Система загружена полностью, но без очереди.
  • Load > Число ядер: Формируется очередь, возможны задержки в отклике.

Практический пример диагностики:

# 1. Смотрим нагрузку
$ uptime
 15:30:01 up 30 days,  2:15,  1 user,  load average: 4.21, 3.75, 2.90

# 2. Узнаем количество ядер
$ nproc
4

# 3. Интерпретация: На 4-ядерной системе load в 4.21 означает, что в среднем за последнюю минуту 4.21 процесса ждали своей очереди. Это указывает на насыщение.

# 4. Смотрим, что создает нагрузку (процессы в состоянии R и D)
$ top
# Или более детально с помощью `atop` или `htop`.

# 5. Проверяем, не связано ли это с I/O (состояние D). Команда `iostat` или `iotop` поможет.
$ iostat -dx 2 5
# Если `%util` у диска близок к 100%, проблема в медленном I/O.

Для DevOps важно: Высокий load average на серверах приложений или БД — это триггер для алертов в Prometheus (node_load1, node_load5). Мы настраиваем алерты, когда нагрузка превышает порог (например, node_load1 > (число_ядер * 0.8)), и далее исследуем причину с помощью мониторинга CPU, памяти и дискового I/O.

Видео-ответы