Могу ли я автоматически масштабировать Вид : Pod?

#kubernetes #autoscaling #kubernetes-pod #hpa

Вопрос:

 apiVersion: autoscaling/v1
kind: HorizontalPodAutoscaler
metadata:
 name: testingHPA

spec:
 scaleTargetRef:
   apiVersion: apps/v1beta1
   kind: Deployment
   name: my_app
 minReplicas: 3
 maxReplicas: 5
 targetCPUUtilizationPercentage: 85
 

Выше приведена обычная структура hpa.yaml, можно ли использовать kind в качестве модуля и автоматически масштабировать его ??

Комментарии:

1. Короткий ответ, нет

2. Вы не можете использовать вид модуля и автоматически масштабировать его. HPA создан для автоматического масштабирования модулей. Почему вы не хотите использовать HPA?

3. Я хотел использовать это , потому что всякий раз, когда я удалял модули, они создавались снова, поскольку они находятся под контроллером развертывания. Существует ли какая-либо политика, которая остановит перезапуск модулей, находящихся в процессе развертывания ? .. как в некоторых сценариях, нам может потребоваться это сделать !

Ответ №1:

Как уже указывали другие, невозможно установить Pod Kind объект в качестве целевого ресурса для HPA.

В документе HPA описывается как:

Автоматический масштабер горизонтальных модулей автоматически масштабирует количество модулей в контроллере репликации, развертывании, наборе реплик или наборе с отслеживанием состояния на основе наблюдаемой загрузки ЦП (или, при поддержке пользовательских метрик, на основе некоторых других метрик, предоставляемых приложением). Обратите внимание, что горизонтальное автоматическое масштабирование Pod не применяется к объектам, которые невозможно масштабировать, например, к наборам демонов.

В документе также описано, как алгоритм реализован на серверной части, как:

 desiredReplicas = ceil[currentReplicas * ( currentMetricValue / desiredMetricValue )]
 

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

Ответ №2:

Один стручок-это всегда только один стручок. У него нет никакого механизма горизонтального масштабирования, потому что это механизм для всего остального.