Nginx-ingress舵图的“自动缩放”设置是否起作用?

时间:2018-07-05 09:10:56

标签: nginx kubernetes kubernetes-helm

我尝试使用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

1 个答案:

答案 0 :(得分:0)

似乎配置不一致,或者helm并未为nginx-ingress环境中的horizontal-autoscale安装提供每个参数。

我查看了nginx-ingress图表的template / controller-hpa.yaml,我认为错过的变量是:

controller.autoscaling.targetMemoryUtilizationPercentage=<value>