Load Average в Linux это параметр, позволяющий динамически оценивать нагрузку создаваемую процессами на сервере.
В любой нагруженной системе существует необходимость постоянного контроля уровня существующей нагрузки. Load Average (средняя нагрузка) или LA является основным показателем, на который ориентируются системы мониторинга и системные администраторы.
Самым простым способом посмотреть текущие показатели LA в Linux является выполнение команды uptime
По умолчанию команда выводит текущее время, время с момента старта сервера, количество пользователей в системе и характеристики LA
uptime
20:36:11 up 1:50, 1 user, load average: 1,09, 0,66, 0,66
Также uptime можно использовать с ключом -p — в выводе в этом случае будет только непосредственно время, которое сервер пребывает во включенном состоянии
uptime -p
up 1 hour, 52 minutes
Однако, LA в этом случае отображаться не будет
Показатели Load Average можно посмотреть открыв какой-либо анализатор состояния системы, например top
Load Average в Linux: что такое LA и какие его значения следует считать большими
LA — показатель нагрузки на систему. Подсчет ведется за последние минуту, 5 минут и 15 минут.
LA может считаться большим или малым в зависимости от количества ядер процессора.
Одноядерный процессор может обрабатывать в единицу времени определенное количество запросов. Если количество поступающих запросов меньше возможностей процессора — «пропускной способности» — высокой нагрузки не создается, значения LA не превышают единицу.
Единица считается максимальным значением для системы, содержащей одно процессорное ядро. Показатели превышающие единицу означают, что определенные процессы не могут быть обработаны и ждут своей очереди, их количество постоянно накапливается.
Если применяется несколько процессоров необходимо пересчитывать их количество на количество используемых ядер и сопоставлять полученное число с показателями LA.
Допустимая нагрузка просто умножается на количество используемых ядер процессора.
Если сервер использует 8 ядер — максимальная нагрузка считающаяся нормальной составляет 8. Значения, ее превышающие можно считать нештатной ситуацией.
Как узнать сколько ядер используется Linux сервер
Информация о процессоре в Linux хранится в файле /proc/cpuinfo. Получить сведения о количестве ядер процессора можно сделав выборку из содержимого файла по ключевому выражению 'cpu cores'
cat /proc/cpuinfo | grep 'cpu cores'
cpu cores : 2
cpu cores : 2
cpu cores : 2
cpu cores : 2
Повышенная нагрузка практически всегда является ситуацией, требующей вмешательства и означающей, что система работает некорректно.
Некоторые сервисы позволяют работать в режиме когда LA с определенной периодичностью возрастает больше допустимого — например, почтовые серверы — при возникновении нагрузки возможны задержки при отправке писем, но в целом работоспособности системы контролируемый рост нагрузки не угрожает и конечные пользователи сервисов не заметят ухудшения их качества.
В то же время для бэкэнд веб-серверов и сервером телефонии возрастание LA выше допустимого означает что посетители сайтов не смогут на них зайти, звонки не будут проходить.
Читайте про управление процессами в Linux, если LA выше обычного — рассмотренные в материале команды позволят выявить процессы, нагружающие систему.