Rolling Update допускает обновление без простоя, но не гарантирует его автоматически. Нужны готовые реплики, запас ресурсов, корректные readiness-проверки и завершение старых запросов.
Есть ли downtime при Rolling Update?
Rolling Update допускает обновление без простоя, но не гарантирует его автоматически. Нужны готовые реплики, запас ресурсов, корректные readiness-проверки и завершение старых запросов.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Rolling Update допускает обновление без простоя, но не гарантирует его автоматически. Нужны готовые реплики, запас ресурсов, корректные readiness-проверки и завершение старых запросов.
В Kubernetes maxSurge и maxUnavailable регулируют временное число реплик и допустимое снижение доступности. Приложение должно объявлять готовность только после инициализации, а при остановке корректно завершать обслуживание.
Старая и новая версии некоторое время работают одновременно: API, сообщения и схема БД должны быть совместимы. Недостаток ресурсов, неверная readiness или несовместимая миграция способны вызвать downtime даже при выбранной стратегии RollingUpdate. Проверяйте весь путь запроса, включая балансировщик, а не только статус Pod.
Источник: kubernetes.io.