Немедленное масштабирование Kubernetes Statefulset / Deployment на полную мощность

в настоящее время мы увеличили один из наших наборов состояний до 11 реплик. Наша текущая стратегия обновления

updateStrategy:
  type: RollingUpdate

Если мы развернем набор состояний с нуля, Kubernetes запустит их один за другим. Для запуска одной реплики требуется около 5 минут. Итак, в общей сложности мы ждем 55 минут, чтобы заполнить емкость.

Есть ли способ сразу пополнить емкость при запуске с нуля? Чтобы все 11 реплик запускались одновременно?

Обновления уже существующего набора состояний должны выполняться через RollingUpdate из-за отказоустойчивости.

С наилучшими пожеланиями, Стефан


person Stephan    schedule 19.03.2020    source источник


Ответы (2)


Я так не думаю. StatefulSets разработаны для обеспечения безопасности прежде всего, поэтому контроллер управляет одним модулем за раз.

person coderanger    schedule 19.03.2020

мы нашли ответ глубоко в документации:

https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/#parallel-pod-management

https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#pod-management-policies

Политики управления пакетами

В Kubernetes 1.7 и более поздних версиях StatefulSet позволяет ослабить гарантии упорядочения, сохраняя при этом гарантии уникальности и идентичности через поле .spec.podManagementPolicy.

Управление готовыми капсулами

Управление модулем OrderedReady используется по умолчанию для StatefulSets. Он реализует описанное выше поведение.

Параллельное управление пакетами

Параллельное управление модулями сообщает контроллеру StatefulSet запускать или завершать работу всех модулей параллельно и не ждать, пока модули станут запущенными и готовыми к работе или полностью завершатся перед запуском или завершением другого модуля. Этот параметр влияет только на поведение операций масштабирования. Обновления не затронуты.

person Stephan    schedule 20.03.2020