SystemdDoctor
служба не работает контейнеры кластеры память

Узел кластера не поднимается: включён раздел подкачки

Узлы кластеров контейнеров по умолчанию отказываются работать при включённой подкачке: она делает учёт памяти контейнеров неверным. Отключать её нужно в двух местах — в текущей системе и в описании точек монтирования, иначе после перезагрузки она вернётся.

Вероятные причины

По порядку: сверху то, что встречается чаще.

  1. Подкачка включена и служба отказывается стартовать

    Проверка при запуске находит активный раздел подкачки и завершает работу с сообщением.

  2. Подкачка возвращается после перезагрузки

    Запись в описании точек монтирования или отдельный unit подкачки поднимают её заново.

  3. Подкачка включена облачным образом

    Часть образов создаёт файл подкачки при первой загрузке своими средствами настройки.

Диагностика

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

Активные разделы и файлы подкачки.

swapon --show

Unit подкачки и их состояние.

systemctl list-units --type=swap --all --no-legend

Сообщения службы узла кластера при запуске.

journalctl -u k3s -n 30 --no-pager 2>/dev/null

Решение

Решение своё для каждой причины. Сначала определите, какая из них ваша, — иначе правки наложатся друг на друга.

1. Подкачка включена и служба отказывается стартовать
Почему происходит
Проверка при запуске находит активный раздел подкачки и завершает работу с сообщением.
Как проверить
Посмотрите активную подкачку и сообщение службы.
swapon --show
journalctl -u k3s -n 20 --no-pager 2>/dev/null | grep -i swap
Как исправить
Отключите подкачку и уберите её из описания точек монтирования. Только отключение без правки описания вернётся после перезагрузки.
sudo swapoff -a && sudo sed -i.bak "/\sswap\s/s/^/#/" /etc/fstab
2. Подкачка возвращается после перезагрузки
Почему происходит
Запись в описании точек монтирования или отдельный unit подкачки поднимают её заново.
Как проверить
Посмотрите описание и unit подкачки.
grep -nE "\sswap\s" /etc/fstab 2>/dev/null
systemctl list-units --type=swap --all --no-legend
Как исправить
Уберите запись из описания и отключите unit подкачки. Он мог быть создан отдельно и не зависеть от описания.
3. Подкачка включена облачным образом
Почему происходит
Часть образов создаёт файл подкачки при первой загрузке своими средствами настройки.
Как проверить
Посмотрите, чем создана подкачка.
swapon --show; sudo grep -rl swap /etc/cloud/ 2>/dev/null | head
Как исправить
Уберите создание подкачки из описания первичной настройки образа. Иначе она будет возвращаться на каждой новой машине.

Пример вывода

Служба отказывается стартовать при активной подкачке. Пример показательный: он собран на тестовой машине специально для этой страницы, а не взят из чужого журнала.

k3s[8300]: F0915 18:10:44.102931 kubelet.go:1599] "Failed to run kubelet" err="running with swap on is not supported, please disable swap! or set --fail-swap-on flag to false"
systemd[1]: k3s.service: Main process exited, code=exited, status=1/FAILURE

$ swapon --show
NAME      TYPE      SIZE USED PRIO
/swap.img file        2G   0B   -2

Связанные ошибки

Где встречается чаще всего

Источники

  • systemd.swap(5)
    Unit подкачки и их связь с описанием точек монтирования.
    официальная документация, systemd 255
    сверено 15 сентября 2026
  • Воспроизведено на тестовой машине, systemd 255 (Ubuntu 24.04)
    Воспроизведено запуском узла кластера при активном файле подкачки.
    собственная проверка, systemd 255
    сверено 15 сентября 2026