Ночью падают API-запросы к K3s, логи чисты, диск NVMe с p99 <1ms. Но kube-apiserver зависает на 300–800 мс каждые 10–20 секунд. Причина — SQLite в WAL-режиме, используемый K3s как замена etcd. WAL требует периодического checkpointing, который сбрасывает dirty pages и вызывает fsync(). При росте числа подов (особенно с частыми обновлениями статуса) журнал WAL раздувается, а checkpointing блокирует основной поток control-plane. Диагностика: # iostat -x 1 — покажет sporadic await в моменты задержек # strace -p $(pgrep k3s-server) -e trace=sync,fdatasync,fsync — поймает сериализованные fsync() # cat /proc/$(pgrep k3s-server)/mountinfo | grep sqlite — убедитесь, что БД не на tmpfs Решение: либо перейти на внешний etcd, либо ограничить масштабируемость ноды до 30 подов. WAL — не распределённая БД. https://ftops.space/?utm*source=telegram&utm*medium=smm&utm*campaign=ftops&utm*content=sqlite-wal-rezhim-v-k3s-control-plan

Ночью падают API-запросы к K3s, логи чисты, диск NVMe с p99 <1ms. Но kube-apiserver зависает на 300–800 мс каждые 10–20 секунд. Причина — SQLite в WAL-режиме, используемый K3s как замена etcd | Сетка — социальная сеть от hh.ru