Назад к вопросам
Aston
Middle+
4
Как обновить приложение так, чтобы поднялся только один новый под, и процесс остановился до ручного вмешательства?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Чтобы обновить приложение в Kubernetes так, чтобы поднялся только один новый под, а процесс остановился до ручного вмешательства, можно использовать стратегию обновления с параметром maxUnavailable и maxSurge в Deployment.
Например, задать:
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
maxUnavailable: 0
Это позволит поднять максимум один новый под сверх желаемого количества, не убивая старые.
Чтобы остановить процесс обновления после запуска одного нового пода, можно вручную приостановить Deployment:
kubectl rollout pause deployment/<deployment-name>
После этого обновление не продолжится, пока вы не выполните:
kubectl rollout resume deployment/<deployment-name>
Таким образом, последовательность действий:
- Запустить обновление с нужными параметрами.
- После появления одного нового пода — выполнить
kubectl rollout pause. - Проверить состояние и при необходимости вмешаться вручную.
Это позволяет контролировать процесс обновления и избежать одновременного поднятия нескольких новых подов.