English version

NodeSwapHigh: что делать при алерте

Правило алерта

alert: NodeSwapHigh
expr: (1 - node_memory_SwapFree_bytes / node_memory_SwapTotal_bytes) * 100 > 80
and node_memory_SwapTotal_bytes > 0
for: 15m
severity: warning

Сообщение алерта: Swap почти заполнен ({{ $labels.instance }})

Что значит

Используется более 80% swap (при условии, что swap настроен). Система вытесняет память на диск и работает медленно.

Частые причины

Нехватка RAM; один процесс с утечкой; слишком большой vm.swappiness в сочетании с давно неактивными страницами (в этом случае занятый swap может быть безвредным, но 80% — повод посмотреть).

Диагностика

free -h
swapon --show
for f in /proc/*/status; do awk '/^Name|^VmSwap/{printf $2" "}END{print ""}' "$f"; done 2>/dev/null | sort -k2 -n -r | head
vmstat 1 5            # столбцы si/so — активный обмен
sysctl vm.swappiness

Как исправить

Освободить память (см. NodeMemoryLow). Если процессы лишь «пролежали» в swap без активного обмена (si/so около нуля), можно сбросить swap: swapoff -a && swapon -a — только когда RAM хватает на всё содержимое swap.

Когда можно заглушить

Если si/so нулевые и памяти достаточно, но swap заполнен давно-неактивными страницами.

Похожие алерты

Весь набор из 44 протестированных правил + Alertmanager → Telegram: 790 ₽
Открыть в Telegram · Бесплатный набор Monitoring Lite · Все алерты runbook