簡體   English   中英

Kubernetes 負載均衡器服務與雲負載均衡器

[英]Kubernetes loadbalancer service vs cloud loadbalancer

在 Kubernetes 配置中,我們使用的外部服務組件:

type: LoadBalancer

如果我們在 AWS 等雲提供商內部運行 k8s 集群,它提供了自己的負載均衡器,那么這一切是如何工作的呢? 我們是否需要進行配置以使這些負載均衡器之一處於非活動狀態?

AWS現在接手開源項目: https://kubernetes-sigs.github.io/aws-load-balancer-controller

它適用於 EKS(最簡單)集群以及非 EKS 集群(需要安裝 aws vpc cni 等才能使IP目標模式工作,如果您有對等 VPC 環境,則需要這樣做。)

這是使用 K8s 管理 AWS LB(又名 ELBv2)資源(App ELB、網絡 ELB)的官方/原生解決方案。 Kubernetes in-tree controller 始終協調Service object 與type: LoadBalancer

正確配置后,AWS LB controller 將管理以下 2 種類型的 LB:

  1. 應用程序 LB,通過 Kubernetes Ingress object。 它在 L7 上運行並提供與 HTTP 相關的功能
  2. 網絡 LB,通過帶有正確注釋的 Kubernetes Service object 。 它在 L4 上運行並提供較少的功能,但聲稱吞吐量要高得多。

據我所知,這在與external-dns一起使用時效果最好——它會自動使用您的 LB A 記錄更新您的 Route53 記錄,從而使整個服務發現解決方案成為 k8s-y。

同樣,一般來說,應該防止使用經典 ELB,因為它被 AWS 標記為已棄用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM