我尝试创建一个具有特定名称(ttt)的 kubernetes 水平 pod 自动扩缩器,但它没有按预期工作:
$ 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
答案1
我已在自动缩放中尝试过此选项的多种组合--name
,但对我来说也没有用。
还有其他方法可以实现此目的。如果您已经从 CLI 创建了 hpa,则可以获取自动缩放 yaml 文件。
1)从 hpa 获取 YAML 文件
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
您也可以直接从 YAML 文件创建 HPA。