我们在 Azure (aks) 上有一个 K8s 集群。在此集群上,我们在安装了 nginx-ingress Controller 的设置上添加了一个负载均衡器。
查看部署:
addon-http-application-routing-default-http-backend 1
addon-http-application-routing-external-dns 1
addon-http-application-routing-nginx-ingress-controller 1
我看到每个运行都有 1 个。现在我发现很少的信息是否应该缩放这些(每个 1 个 pod)以及如果应该缩放,如何缩放?
我尝试过运行
kubectl scale deployment addon-http-application-routing-nginx-ingress-controller --replicas=3
这会暂时将其缩放为 3 个 Pod,但过了一会儿,它会再次缩小。
那么,这些应该被缩放吗?为什么?怎么办?
编辑
对于那些像我一样错过它的人:AKS addon-http-application 尚未准备好用于生产,它可以让您快速设置并开始试验。这就是为什么我无法正确缩放它的原因。
最佳答案
这通常是您的做法:
$ kubectl scale deployment addon-http-application-routing-nginx-ingress-controller --replicas=3
但是,我怀疑您有一个 HPA配置为根据负载或某些指标放大/缩小,并将 minReplicas
规范设置为 1
。您可以检查:
$ kubectl get hpa
$ kubectl describe hpa <hpa-name>
如果是这种情况,您只需修补 HPA 即可进行扩展:
$ kubectl patch hpa <hpa-name> -p '{"spec": {"minReplicas": 3}}'
或手动编辑:
$ kubectl edit hpa <hpa-name>
有关 HPA 的更多信息 here .
是的,入口 Controller 应该根据负载进行缩放。
关于azure - 缩放 Azure nginx 入口 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53303411/