設定 Amazon ELB Network Load Balancer
本操作指南說明如何在 Amazon 的 EC2 服務中設定 Network Load Balancer (NLB),以將流量導向 EC2 上的多個執行個體。
這些範例展示了將負載平衡器配置為將流量導向三個 Rancher 伺服器節點。如果 Rancher 安裝在 RKE Kubernetes 叢集上,則需要三個節點。如果 Rancher 安裝在 K3s Kubernetes 叢集上,則只需要兩個節點。
本教學介紹的是設定負載平衡器的一種可能方式,而非唯一方式。其他類型的負載平衡器,例如 Classic Load Balancer 或 Application Load Balancer,也可以將流量導向 Rancher 伺服器節點。
Rancher 僅支援在 Amazon NLB 上以 tcp 模式終止連接埠 443 的流量,而不支援 tls 模式。這是因為 NLB 在 NLB 層終止時不會將正確的標頭注入請求中。這意味著如果您想使用由 Amazon Certificate Manager (ACM) 管理的憑證,您應該使用 ALB。
需求
這些說明假設您已經在 EC2 中建立了 Linux 執行個體。負載平衡器將會把流量導向這些節點。
1. 建立目標群組
首先為 TCP 協定建立兩個目標群組,一個使用 TCP 連接埠 443,另一個使用 TCP 連接埠 80(提供重新導向至 TCP 連接埠 443)。您將把 Linux 節點加入這些群組。
您的第一個 NLB 配置步驟是建立兩個目標群組。技術上來說,只需要連接埠 443 就能存取 Rancher,但為連接埠 80 新增監聽器會很方便,因為連接埠 80 的流量會自動重新導向至連接埠 443。
無論使用 NGINX Ingress 或 Traefik Ingress 控制器,Ingress 都應該將流量從連接埠 80 重新導向至連接埠 443。
- 登入 Amazon AWS Console 以開始操作。請確保選擇您建立 EC2 執行個體(Linux 節點)的區域。
- 選擇 Services 並選擇 EC2,找到 Load Balancing 區段並開啟 Target Groups。
- 按一下 Create target group 以建立第一個目標群組,用於 TCP 連接埠 443。
健康狀態檢查的處理方式會因 Ingress 而異。詳情請參閱本節。