我尝试使用autoscaling
文件中的values.yaml
设置来部署nginx-ingress,但似乎不起作用。
autoscaling:
enabled: false
# minReplicas: 1
# maxReplicas: 11
# targetCPUUtilizationPercentage: 50
我尝试部署这样的nginx插件
helm upgrade --install ingress --set \
controller.service.type=NodePort,\
controller.service.nodePorts.http=$http_nodePort,\
controller.service.nodePorts.https=$https_nodePort,\
rbac.create=true,\
controller.replicaCount=$ingress_replicas,\
controller.stats.enabled=true,\
controller.metrics.enabled=true,\
controller.autoscaling.enabled=true,\
controller.autoscaling.minReplicas=1,\
controller.autoscaling.maxReplicas=10,\
controller.autoscaling.targetCPUUtilizationPercentage=50 \
stable/nginx-ingress
但是我得到这个错误
Release "ingress" does not exist. Installing it now.
Error: release ingress failed: HorizontalPodAutoscaler.autoscaling "ingress-nginx-ingress-controller" is invalid: spec.metrics[1].resource.targetAverageUtilization: Required value: must set either a target raw value or a target utilization
是否有人设法使用了自动缩放设置,或者您只是手动部署了HPA?
编辑1
我尝试了同一个helm upgrade ...
命令,并使用了以下Ingress图表的本地副本(有点旧):
name: nginx-ingress
version: 0.11.1
appVersion: 0.11.0
会造成HPA罚款!但是,我宁愿使用稳定的图表仓库来部署它。
当前图表版本is this。
答案 0 :(得分:0)
似乎配置不一致,或者helm并未为nginx-ingress环境中的horizontal-autoscale安装提供每个参数。
我查看了nginx-ingress图表的template / controller-hpa.yaml,我认为错过的变量是:
controller.autoscaling.targetMemoryUtilizationPercentage=<value>