如何增加nginx入口负载均衡器副本?

问题描述 投票:0回答:2

我通过helm图表安装了nginx入口控制器。

现在我不想拥有多个负载均衡器,如何扩展它们?

编辑

我不想扩展 nginx 控制器部署。舵图还添加了负载平衡器,我想知道是否可以创建一个新的负载平衡器,或者是否必须添加一些注释或其他东西。就这样?

新的负载均衡器是否会自动将流量转发到现有的 nginx 控制器?

kubernetes load-balancing kubernetes-ingress nginx-ingress
2个回答
3
投票

您可以使用

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 控制器

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"

0
投票

如果现在有人提出这个问题,您可以通过在 nginx-ingress-controller 上添加注释来自定义 DigitalOcean 负载均衡器的节点数

controller.service.annotations.service.beta.kubernetes.io/do-loadbalancer-size-unit: 2

这将添加 2 个节点(记住,它的成本也会加倍)。

© www.soinside.com 2019 - 2024. All rights reserved.