Kubernetes v1.36: многоуровневая защита памяти с помощью Memory QoS
Kubernetes v1.36 представляет обновления функции Memory QoS, которая использует cgroup v2 для лучшего управления памятью контейнеров. Ключевые обновления в v1.36 включают резервирование памяти по выбору, обеспечивающее многоуровневую защиту на основе классов QoS Pod. Гарантированные Pods теперь получают жесткую защиту памяти (memory.min), в то время как Burstable Pods получают мягкую защиту (memory.low). BestEffort Pods остаются полностью восстанавливаемыми без специальной защиты. Новый memoryReservationPolicy позволяет раздельно управлять дросселированием и резервированием. Предоставляются метрики наблюдаемости для мониторинга использования memory.min и memory.low по всему узлу. Проверка версии ядра предупреждает пользователей, если ядро старше 5.9 из-за потенциальных проблем с взаимоблокировками. Реализация использует интерфейсы cgroup v2 memory.max, memory.min, memory.low и memory.high. Распределение памяти узла управляется kubelet, обеспечивая надлежащую защиту для каждого pod и класса QoS. Функция может быть включена через конфигурацию kubelet, при этом TieredReservation является ключевой настройкой. Рекомендуемым требованием является Kubernetes v1.36 или более поздняя версия, Linux с cgroup v2 и ядром 5.9 или выше. Пользователи могут взаимодействовать с сообществом SIG Node для обратной связи и внесения вклада.
memoryReservationPolicyпозволяет раздельно управлять дросселированием и резервированием. Предоставляются метрики наблюдаемости для мониторинга использования memory.min и memory.low по всему узлу. Проверка версии ядра предупреждает пользователей, если ядро старше 5.9 из-за потенциальных проблем с взаимоблокировками. Реализация использует интерфейсы cgroup v2memory.max,memory.min,memory.lowиmemory.high. Распределение памяти узла управляется kubelet, обеспечивая надлежащую защиту для каждого pod и класса QoS. Функция может быть включена через конфигурацию kubelet, при этомTieredReservationявляется ключевой настройкой. Рекомендуемым требованием является Kubernetes v1.36 или более поздняя версия, Linux с cgroup v2 и ядром 5.9 или выше. Пользователи могут взаимодействовать с сообществом SIG Node для обратной связи и внесения вклада.