Контейнеры и оркестрация

Поэтапное обновление Kubernetes

Определение

Поэтапное обновление Kubernetes (RollingUpdate) — стратегия Deployment, при которой старые Pod заменяются новыми постепенно, а не все сразу. Параметр maxSurge задаёт допустимое превышение требуемого числа Pod, maxUnavailable — допустимое сокращение числа доступных копий.

Также ищут: Deployment RollingUpdate · Kubernetes rolling deployment · постепенное обновление Pod · Kubernetes RollingUpdate

Зачем это знать

Для обновления нужен временный запас: новая копия должна запуститься и пройти проверки, пока часть старых ещё работает. Посчитайте переходные состояния по каждому узлу. Проверяйте также завершение запросов и совместимость версий: достаточное число Pod не доказывает непрерывность сервиса.

Связи из словаря

Карта понятия

Доказательная часть

Что подтверждено

  1. RollingUpdate постепенно увеличивает новый ReplicaSet и уменьшает старый. Параметр maxSurge задаёт допустимое превышение требуемого числа Pod при замене, maxUnavailable — допустимое сокращение числа доступных копий. Завершающиеся Pod могут временно оставаться сверх расчёта с maxSurge.

    Граница применимости: Стратегия RollingUpdate для Deployment Kubernetes.

  2. Непрерывность сервиса требует готовой мощности, корректных проверок, завершения текущих запросов и совместимости одновременно работающих версий. RollingUpdate управляет числом экземпляров, но не доказывает эти условия.

    Граница применимости: Сопоставление стратегии Deployment, готовности Pod и сетевого доступа.

  3. Для трёх экземпляров 25% в maxSurge округляется вверх до одного дополнительного Pod, а 25% в maxUnavailable — вниз до нуля. При таких настройках нужна ёмкость для новой копии до вывода старой.

    Граница применимости: Deployment с тремя требуемыми экземплярами и обоими параметрами 25%; завершающиеся Pod учитываются отдельно.

  4. Параметры maxSurge и maxUnavailable нельзя одновременно установить в ноль. Без дополнительного места и без возможности временно сократить доступное число экземпляров контроллеру нечем выполнить замену.

    Граница применимости: Допустимая конфигурация стратегии RollingUpdate Deployment.

  5. Завершающиеся Pod могут ещё потреблять ресурсы, когда новая копия уже создаётся. Поэтому фактическая потребность во время обновления может превысить расчёт «требуемые экземпляры плюс maxSurge» до завершения старых процессов.

    Граница применимости: Переходные состояния RollingUpdate Deployment; длительность завершения зависит от приложения и его настроек.

  6. Разрешение дополнительного Pod не создаёт место на узле. При maxUnavailable=0 и отсутствии ресурсов для новой копии обновление может остановиться, сохранив старые экземпляры.

    Граница применимости: RollingUpdate при отсутствии допустимого места для дополнительного Pod; прежние экземпляры исправны.

  7. Во время RollingUpdate старые и новые экземпляры могут обслуживать одну систему одновременно. До выпуска нужно проверить совместимость их запросов и общих данных на этом переходе.

    Граница применимости: Параллельное существование старого и нового ReplicaSet при RollingUpdate.

  8. Процентный maxSurge переводят в число дополнительных Pod с округлением вверх, а процентный maxUnavailable — в допустимое число недоступных копий с округлением вниз. Проценты считают от требуемого числа экземпляров Deployment. Ресурсы ещё завершающихся Pod учитывают отдельно.

    Граница применимости: Стратегия RollingUpdate Deployment с процентными параметрами, когда хотя бы один результат округления больше нуля. Случай, когда оба результата равны нулю, здесь не рассматривается; явные maxSurge=0 и maxUnavailable=0 разобраны отдельно.

Граница терминов

Не путать

Поэтапное обновление Kubernetes Deployment Kubernetes

RollingUpdate определяет порядок замены экземпляров, Deployment хранит шаблон и управляет ReplicaSet. Условие завершённого обновления нужно дополнить проверкой работы приложения.

Поэтапное обновление Kubernetes Неизменяемое развёртывание

RollingUpdate управляет последовательностью замены. Неизменяемое развёртывание помогает повторить принятую сборку, но фиксированный образ не делает внешнюю конфигурацию и данные неизменяемыми.

Перед спецификацией

Что проверить

  1. Пересчитайте проценты maxSurge и maxUnavailable в целое число Pod для своего количества экземпляров.
  2. Проверьте место для новой копии на каждом допустимом узле.
  3. Учтите ресурсы ещё завершающихся экземпляров.
  4. Проверьте готовность новой копии и условие допуска её к запросам.
  5. Испытайте завершение старых запросов и соединений.
  6. Проверьте совместную работу старой и новой версий с общими данными.
  7. Повторите расчёт для отказа узла, если обновление должно пережить такой отказ.
  8. Назовите условие остановки, ответственного за решение и проверенный путь отката.
Открытые основания

Первоисточники

  • Стандарт1
  • Документация6
  • Официальная документация
    Deployments Kubernetes · Kubernetes current documentation · проверено

    Описывает управление ReplicaSet, стратегии обновления, параметры maxUnavailable и maxSurge, ход выпуска и историю для отката.

    Утверждения: 01 · 02 · 03 · 04 · 05 · 06 · 07 · 08

  • Официальная документация
    Liveness, Readiness, and Startup Probes Kubernetes · Kubernetes current documentation · проверено

    Разделяет проверки готовности, работоспособности и запуска. Объясняет их действия и риск каскадного отказа при неверной настройке.

    Утверждения: 02

  • Официальная документация
    Service Kubernetes · Kubernetes current documentation · проверено

    Описывает сетевой доступ через Service к меняющемуся набору экземпляров приложения и связанные EndpointSlice.

    Утверждения: 02

  • Официальная документация
    Resource Management for Pods and Containers Kubernetes · Kubernetes current documentation · проверено

    Разделяет запросы и ограничения CPU и памяти: их учёт при размещении, распределение процессорного времени и применение пределов на узле.

    Утверждения: 06

  • Официальная документация
    Kubernetes Scheduler Kubernetes · Kubernetes current documentation · проверено

    Описывает отбор допустимых узлов, оценку вариантов и назначение узла для ещё не размещённого Pod.

    Утверждения: 06

  • Первичная спецификация
    Open Container Initiative Image Format Specification Open Container Initiative · OCI Image Specification, November 2025 · проверено

    Определяет манифест, индекс, конфигурацию и слои образа, а также дескрипторы объектов с адресацией по содержимому.

  • Официальная документация
    ConfigMaps Kubernetes · документация Kubernetes v1.37, страница открыта 6 сентября 2026 года · проверено

    Открыт редактором 6 сентября 2026 года, заголовок и версия документа сверены. Внешняя конфигурация; различия переменных окружения, томов и подключений subPath.

Карта знаний

Связанные понятия

Из знания — в навык

Курсы по теме

Подтвердите действие