Новое Распределяем каналы MAX по категориям и территориям. Читать новость

🐧 Linux позволяет узнать, какой процесс создаёт давление на память, ещё до OOM Killer



👁 Когда сервер начинает тормозить, обычного free -h недостаточно: свободная память может выглядеть нормально, а процессы уже тратить время на reclaim и ожидание освобождения страниц. В Linux для этого есть PSI — Pressure Stall Information.

📝 Смотрим давление на память всей системы:

Файл memory показывает, сколько времени задачи теряют из-за нехватки памяти. Показатель full особенно полезен: он отражает периоды, когда все работающие задачи одновременно остановлены из-за давления на память.



cat /proc/pressure/memory

📝 Находим процессы, которые активно обращаются к памяти:

Снимите показатели до и после нагрузки: pgmajfault растёт при крупных промахах по страницам, а VmSwap показывает объём памяти процесса, выгруженный в swap.



for p in /proc/[0-9]*; do
[ -r "$p/status" ] || continue
awk '
/^Name:/ { name=$2 }
/^VmSwap:/ { swap=$2 }
/^VmRSS:/ { rss=$2 }
/^VmHWM:/ { peak=$2 }
END {
if (rss+0 > 0 || swap+0 > 0)
printf "%8s %8s %8s %s\n", rss+0, swap+0, peak+0, name
}
' "$p/status" 2>/dev/null
done | sort -nr

📝 Автоматически фиксируем периоды давления:

PSI можно использовать для раннего обнаружения проблем и запуска сбора диагностических данных. Например, some 100000 1000000 срабатывает, когда хотя бы одна задача суммарно простаивает из-за нехватки памяти 100 мс за интервал в 1 секунду.



# Требует ядро Linux с поддержкой PSI
echo "some 100000 1000000" > /sys/fs/cgroup/memory.pressure

❗️ PSI помогает обнаружить давление на память до аварии, но не определяет виновника самостоятельно. Сопоставляйте его показатели с метриками процессов, журналами и нагрузкой приложения. Запись в memory.pressure cgroup требует соответствующих прав и работает для конкретной cgroup.

tags: #linux #мониторинг

🧭 @recura_tech
Просмотры: 286
Открыть в MAX Сообщить о неточности

Сообщить о неточности

Опишите, что нужно исправить. Если есть источник, добавьте ссылку.

Вы покидаете datool.ru

Ссылка ведёт на внешний сайт. datool.ru не отвечает за его содержимое — проверьте адрес, прежде чем вводить пароли или платёжные данные.

Переход через 10 с

Перейти