#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:
Один стручок-это всегда только один стручок. У него нет никакого механизма горизонтального масштабирования, потому что это механизм для всего остального.