Tag Archives: MimboloveHorizontalPodAutoscaler

Горизонтальное автомасштабирование модуля HorizontalPodAutoscaler (HPA)

Автор Itworkroom

Горизонтальное автомасштабирование модуля

Горизонтальное автомасштабирование модуля – это автоматическое масштабирование количества реплик модуля, управляемых контроллером. Оно выполняется горизонтальным контроллером, который активируется и конфигурируется путем создания ресурса HorizontalPodAutoscaler (HPA). Данный контроллер периодически проверяет метрики модуля, вычисляет количество реплик, необходимое для соответствия целевому значению метрики, сконфигурированной в ресурсе HorizontalPodAutoscaler, и настраивает поле replicas на целевом ресурсе (развертывании Deployment, наборе реплик ReplicaSet, контроллере репликации ReplicationController или наборе модулей с внутренним состоянием StatefulSet)

Процесс автомасштабирования

Процесс автомасштабирования можно разделить на три этапа:

  • получение метрик всех модулей, управляемых масштабируемым ресурсным объектом;
  • расчёт количества модулей, необходимого для приведения метрик к указанному целевому значению (или близкому к нему);
  • обновление поля replicas масштабируемого ресурса. Далее мы рассмотрим все три этапа

Получение метрик модуля

Автопреобразователь масштаба сам не выполняет сбор метрик модуля. Он получает метрики из другого источника. Метрики модуля и узла собираются агентом под названием cAdvisor, который выполняется в Kubelet на каждом узле, а затем агрегируется кластерным компонентом под названием Heapster. Контроллер автопреобразователя горизонтального масштаба модуля получает метрики всех модулей, запрашивая агрегатор Heapster посредством вызовов REST.

(далее…)