

 **協助改進此頁面** 

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

若要為本使用者指南貢獻內容，請點選每個頁面右側面板中的**在 GitHub 上編輯此頁面**連結。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Amazon EKS 混合節點閘道
<a name="hybrid-nodes-gateway-overview"></a>

Amazon EKS 混合節點閘道可自動化 Amazon EKS 叢集 VPC 與在 [EKS 混合節點](https://docs.aws.amazon.com/eks/latest/userguide/hybrid-nodes-overview.html)上執行的 Kubernetes Pod 之間的聯網。閘道不需要讓內部部署 Pod 網路可從 VPC 路由或協調網路基礎設施變更。它會在 VPC 中的 EC2-based閘道節點與現場部署環境中的 Cilium 受管混合節點之間建立 VXLAN 通道，並自動維護 VPC 路由表項目，讓流量到達正確的閘道執行個體。

## 使用案例
<a name="hybrid-nodes-gateway-use-cases"></a>

混合節點閘道可啟用 VPC 與內部部署環境之間的下列流量流程：
+  **控制平面到 Webhook 通訊** — Kubernetes API 伺服器可以連接在混合節點上執行的 Webhook 端點。如果沒有閘道，除非 Pod CIDRs 在內部部署環境中變成可路由，否則混合節點上的 Webhook 無法從控制平面連線。
+  **跨雲端和內部部署的 Pod-to-pod 流量** — 在 VPC 中 EC2 節點上執行的 Pod 可以直接與在混合節點上執行的 Pod 通訊，反之亦然。
+  ** AWS 與混合式 Pod 的服務連線** – Application Load Balancer、Network Load Balancer 和 Amazon Managed Service for Prometheus 等 AWS 服務可以連接在混合節點上執行的 Pod。

## Architecture
<a name="hybrid-nodes-gateway-architecture"></a>

兩個閘道 Pod 會在標記的 EC2 節點上執行為部署。Kubernetes 租用型領導者選擇會決定哪些 Pod 處於作用中狀態。兩個 Pod 都會在啟動時建立 VXLAN 界面，並執行可監看`CiliumNode`物件的節點對帳程式，因此待命隨時準備好在容錯移轉時在 3-5 秒內轉送流量。只有領導層特定的動作 (VPC 路由表更新`CiliumVTEPConfig`和管理） 會在領導層變更時轉移。

## 運作方式
<a name="hybrid-nodes-gateway-how-it-works"></a>

混合節點閘道使用四種機制來啟用連線：

 **VXLAN 通道** — 閘道會在 UDP 連接埠 8472 (Cilium 預設`hybrid_vxlan0`) 上建立具有 VNI 2 的 VXLAN 介面 ()。它透過程式設計 VXLAN 界面上的 FDB 項目、ARP 項目和路由，為每個混合節點建立通道。節點控制器會監看`CiliumNode`物件，並在混合節點聯結或離開叢集時自動新增或移除通道。

 **VPC 路由表管理** — 當閘道成為領導者時，它會在指定的 VPC 路由表中建立或取代路由。每個路由會將混合 Pod CIDR 指向領導者的主要 ENI，因此以混合 Pod 為目標的 VPC 流量會轉送至作用中閘道執行個體。

 **Cilium VTEP 整合** — 閘道會建立`CiliumVTEPConfig`自訂資源，告知混合節點上的 Cilium 代理程式傳送 VPC 繫結流量的位置。組態包含領導者的節點 IP 做為通道端點和 VXLAN 介面 MAC 地址。當混合式 Pod 將流量傳送至 VPC 地址時，Cilium 會將流量封裝在 VXLAN 封包中，並將其傳送至閘道。

 **領導者選擇** — 閘道使用以 Kubernetes Lease 為基礎的領導者選擇搭配作用中待命模型。兩個閘道 Pod 會在由 Pod 反親和性強制執行的個別節點上執行。兩個 Pod 都會在啟動時建立 VXLAN 界面，並執行節點調校程式，以維護所有混合節點的 VTEP 項目。領導者會執行 VPC 路由表更新和 Cilium VTEP 組態。如果領導者失敗，待命會偵測到租用過期、取得租用，並執行領導者設定序列。預期的容錯移轉時間約為 3–5 秒。

## 部署模型
<a name="hybrid-nodes-gateway-deployment-model"></a>

混合節點閘道會在 VPC 中的 EC2 執行個體上執行，並使用 Helm Chart 部署。閘道支援下列部署目標：
+  **EKS 自動模式** — 您可以建立 `NodePool`和 `NodeClass`，以使用正確的標籤、污點和來源/目的地檢查組態自動佈建閘道節點。這是建議的組態。
+  **EKS 受管節點群組** — 您可以在停用閘道標籤、污點和來源/目的地檢查的情況下建立專用受管節點群組，然後在 Helm 值`autoMode.enabled=false`中設定 。

對於所有部署目標，建議使用至少兩個節點以獲得高可用性。如需詳細資訊，請參閱[EKS 混合節點閘道入門](hybrid-nodes-gateway-getting-started.md)。

## 定價
<a name="hybrid-nodes-gateway-pricing"></a>

Amazon EKS 混合節點閘道不收取額外費用，但您需要支付執行閘道的基礎設施成本，包括適用的 EC2 執行個體和 EKS Auto Mode 管理費。如需詳細資訊，請參閱 [Amazon EKS 定價](https://aws.amazon.com/eks/pricing/)。

## 區域可用性
<a name="hybrid-nodes-gateway-region-availability"></a>

Amazon EKS 混合節點閘道適用於所有可使用 EKS 混合節點 AWS 的區域，但中國區域除外。如需支援區域的目前清單，請參閱 [Amazon EKS 混合節點概觀](hybrid-nodes-overview.md)。

## 開放原始碼
<a name="hybrid-nodes-gateway-open-source"></a>

Amazon EKS 混合節點閘道程式碼庫是開放原始碼。您可以在 [GitHub 儲存庫](https://github.com/aws/eks-hybrid-nodes-gateway)檢視原始程式碼、報告問題和貢獻。

## 限制及考量
<a name="hybrid-nodes-gateway-limitations"></a>

部署混合節點閘道之前，請考慮下列事項：
+  **無流量加密** — 閘道建立的 VXLAN 通道不會加密流量。如果您需要 VPC 與內部部署環境之間的傳輸中加密，請使用加密傳輸，例如 AWS Direct Connect with MACsec 或 VPN 連接。如需詳細資訊，請參閱 [Amazon EKS 中的資料保護](https://docs.aws.amazon.com/eks/latest/userguide/data-protection.html)。
+  **單一叢集** — 每個閘道部署都提供單一 EKS 叢集。如果您有多個具有混合節點的叢集，請為每個叢集部署個別閘道。
+  **需要 Cilium VTEP** — 閘道需要 Cilium CNI 的 EKS 版本，並在混合節點上啟用 VTEP 支援。不支援其他 CNI 外掛程式。

## 後續步驟
<a name="hybrid-nodes-gateway-next-steps"></a>
+  [EKS 混合節點閘道入門](hybrid-nodes-gateway-getting-started.md) 
+  [Amazon EKS 混合節點閘道組態參考](hybrid-nodes-gateway-configuration.md) 
+  [Amazon EKS 混合節點閘道操作](hybrid-nodes-gateway-operations.md) 
+  [Amazon EKS 混合節點閘道疑難排解](hybrid-nodes-gateway-troubleshooting.md) 