Kubernetes-как обеспечивается высокая доступность при развертывании контейнерного приложения?

Я новичок в среде kubernetes. При развертывании приложения я мог бы выяснить, как сделать автоматическое масштабирование, но не совсем понял, как обеспечивается высокая доступность? Если это не так, как я могу его настроить?

Edit: под HA я имею в виду, как гарантировать, что pod запланирован на нескольких узлах, чтобы обеспечить HA на уровне pod/service.

пожалуйста, руководство. Заранее спасибо! :)

1 ответов


по HA, я имею в виду, как убедиться, что pod запланирован через несколько узлы для обеспечения HA на уровне pod / service.

Я предполагаю, что ваше приложение совместимо с облаком и может быть масштабировано, в этой ситуации есть несколько функций, которыми вы можете воспользоваться:

  • DaemonSets: контейнеры на demonsets будет выполняться на каждом узле. Если вы не включаете / исключаете определенные узлы.
  • Deployments: Deployments следующее поколение Replication Controllers. Используя deployments вы можете легко масштабировать свои приложения, а также обеспечить наличие определенного количества стручков. Обратите внимание, что для того, чтобы быть доступным при сбое узла, необходимо установить правила сродства узлов на стручках. Для этого Вам необходимо установить его в шаблонах pod. В 1.6 аффинити может быть указано как поле в PodSpec, а не annotations.