Я попытался создать автоматическое масштабирование горизонтальных модулей Kubernetes с определенным именем (ttt), но он не работал должным образом:
$ kubectl autoscale deployment hello-web --cpu-percent=50 --min=2 --max=10 --name=ttt
horizontalpodautoscaler.autoscaling/hello-web autoscaled
$ kubectl get hpa
NAME REFERENCE TARGETS MINPODS MAXPODS REPLICAS AGE
hello-web Deployment/hello-web <unknown>/50% 2 10 0 5s
Я пробовал много комбинаций этого --name
опция в автомасштабировании, и у меня она тоже не сработала.
Есть вариант сделать это иначе. Если у вас уже есть hpa, созданный из CLI, вы можете получить файл yaml автомасштабирования.
1) Получите файл YAML с вашего HPA
kubectl get hpa/<your_hpa_name> -o yaml --export > hpa.yaml
2) Откройте этот файл
vi hpa.yaml
3) Отредактируйте имя в нем (вы также можете отредактировать или добавить сюда многие параметры HPA)
apiVersion: autoscaling/v1
kind: HorizontalPodAutoscaler
metadata:
name: <your name>
...
и сохраните файл.
4) Удалить старое развертывание
kubectl delete hpa <old_hpa_name>
5) Применить новый hpa с новым именем
kubectl apply -f hpa.yaml
Вы также можете создать HPA прямо из файла YAML.