Темы
- Масштабирование приложения с помощью kubectl.
Масштабирование приложения
В предыдущих модулях мы создали развёртывание, а затем открыли к нему публичный доступ через сервис. Развёртывание создало только один под, в котором работает наше приложение. По мере увеличения трафика необходимо будет промасштабировать приложение, чтобы оно могло справиться с возросшим потоком пользователей.
Масштабирование осуществляется за счёт изменения количества реплик в развёртывании.
Краткое содержание:
- Масштабирование развёртывания
Количество экземпляров можно указать прямо при создании развёртывания, используя параметр --replicas команды kubectl run
Обзор масштабирования
В случае масштабирования развёртывания создаются новые поды, которые распределяются по узлам с доступными ресурсами. Масштабирование увеличит количество подов в соответствии с указанным требуемым состоянием. Kubernetes также поддерживает автоматическое масштабирование подов (не рассматривается в данном уроке). Кроме этого, возможно масштабирование до нуля, тогда завершается работа всех подов в развертывании.
При запуске нескольких экземпляров приложения нужно правильно распределить трафик между ними. У сервисов есть встроенный балансировщик нагрузки, который распределяет сетевой трафик всех подов в открытом извне развертывания. Сервисы постоянно отслеживают запущенные поды через их конечные точки, чтобы направлять трафик только на доступные поды.
Масштабирование выполняется с помощью изменения количества реплик в развертывании.
Имея несколько работающих экземпляров приложения можно выполнять плавающие обновления (rolling updates) без простоев. С ними мы познакомимся в следующем модуле. А пока перейдём к онлайн-терминалу и промасштабируем наше приложение.