使用应用程序负载均衡器 |舵图 | AWS

Use Application Load Balancers | Helm chart | AWS

我已经使用 EKS 在 AWS 上部署了一个应用程序。我的应用程序中大约需要 20-25 个负载均衡器。

现在,AWS 在我的账户中提供了 20 个 Classic 负载均衡器和 50 个应用程序负载均衡器。

我使用 helm chart 使用 service => type => LoadBalancer 创建这些负载均衡器,这些负载均衡器被认为是经典负载均衡器。

有没有办法使用 ALB 代替 CLB(使用 AWS 设置或在 helm 图表中传递一个选项)?

提前致谢!

根据AWS ELB documentation,您可以对入口对象使用以下入口注释:

annotations:
    kubernetes.io/ingress.class: alb

来自 AWS 文档:

The AWS Load Balancer Controller creates ALBs and the necessary supporting AWS resources whenever a Kubernetes Ingress resource is created on the cluster with the kubernetes.io/ingress.class: alb annotation. The Ingress resource configures the ALB to route HTTP or HTTPS traffic to different pods within the cluster. To ensure that your Ingress objects use the AWS Load Balancer Controller, add the following annotation to your Kubernetes Ingress specification. For more information, see Ingress specification on GitHub.

这个解决方案的好处是一个 ALB 也可以在多个 Ingresses 之间共享,所以你不需要使用那么多单独的 LB。

编辑: 正如 Bastian 所提到的,您需要将 AWS Load Balancer Controller 部署到您的集群才能正常工作。