我通过helm chart安装了nginx入口控制器。
现在我不想有多个负载均衡器,我如何扩展它们?
编辑
我不想扩展nginx控制器的部署。helm chart还添加了负载均衡器,我想知道我是否可以创建一个新的负载均衡器,或者我是否需要添加一些注释或之类的。像这样吗?
还有一个新的负载均衡器会自动转发流量到现有的nginx控制器吗?你可以简单地使用kubectl
扩展Nginx部署副本
kubectl scale deployment <nginx-deployment-name> --replicas=5
例子kubectl scale deployment nginx-ingress-controller -n ingress-nginx --replicas=5
编辑
注释可以在入口文件中配置和添加。
例如:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: unifonic-service-ingress
annotations:
kubernetes.io/ingress.class: "nginx"
cert-manager.io/cluster-issuer: staging
nginx.ingress.kubernetes.io/proxy-read-timeout: "3600"
nginx.ingress.kubernetes.io/proxy-send-timeout: "3600"
nginx.ingress.kubernetes.io/proxy-body-size: "50m"
spec:
tls:
- hosts:
- example.com
secretName: staging
rules:
- host: example.com
http:
paths:
- path: /test
backend:
serviceName: main-service
servicePort: 80
如果您需要运行多个入口nginx控制器来管理公共和内部流量,这可能会有所帮助:https://kubernetes.github.io/ingress-nginx/user-guide/multiple-ingress/#multiple-ingress-nginx-controllers
https://docs.nginx.com/nginx-ingress-controller/installation/running-multiple-ingress-controllers/running-multiple-nginx-ingress-controllers
如果你想运行多个入口后端,你可以按类划分它们:
annotations:
kubernetes.io/ingress.class: "nginx"
或
annotations:
kubernetes.io/ingress.class: "gce"