Back to questions
ОТП Банк
Senior
3
Можно ли в Deployment сделать последовательное обновление Pod'ов как в StatefulSet?
Companies where asked
Answer from AI
sobes.tech AI
В Deployment по умолчанию обновление Pod'ов происходит параллельно с контролем максимального количества одновременно обновляемых и доступных Pod'ов через параметры maxUnavailable и maxSurge. Последовательное обновление, как в StatefulSet (где Pod'ы обновляются по одному в порядке индексов), в Deployment напрямую не поддерживается.
Если нужна строго последовательная замена Pod'ов, можно:
- Использовать StatefulSet вместо Deployment.
- Имплементировать кастомную логику обновления вне Kubernetes.
- Настроить
maxUnavailable: 1иmaxSurge: 0в стратегиях обновления Deployment, чтобы обновлять по одному Pod'у, но порядок не гарантируется.
Пример настройки обновления по одному Pod'у:
strategy:
type: RollingUpdate
rollingUpdate:
maxUnavailable: 1
maxSurge: 0
Однако это не гарантирует последовательность обновления Pod'ов по индексу, как в StatefulSet.