Sobes.tech
Middle+

Πώς ενημερώνει το Kubernetes ένα Deployment κατά την εφαρμογή μιας νέας διαμόρφωσης (κυλιόμενη ενημέρωση);

sobes.tech AI

Απάντηση από AI

Kubernetes при обновлении Deployment использует стратегию rolling update, которая позволяет постепенно заменить старые Pod'ы новыми без простоя приложения.

Основные шаги:

  1. Создается новая ReplicaSet с обновленной конфигурацией.
  2. Постепенно уменьшается количество Pod'ов в старом ReplicaSet и увеличивается в новом, обычно по одному или по заданному параметру maxUnavailable и maxSurge.
  3. Kubernetes следит за состоянием новых Pod'ов, ожидает их готовности (readiness), прежде чем удалять старые.
  4. Если новые Pod'ы не становятся Ready, обновление приостанавливается (rollback возможен).

Пример параметров в Deployment для управления обновлением:

strategy:
  type: RollingUpdate
  rollingUpdate:
    maxUnavailable: 1
    maxSurge: 1

Таким образом, обновление происходит плавно, без остановки сервиса, с контролем доступности и возможностью отката.