Ingress 控制器
為了讓 Ingress 資源正常工作,叢集中必須執行 Ingress 控制器。
與其他作為 `kube-controller-manager` 二進位制檔案一部分執行的控制器型別不同,Ingress 控制器不會隨叢集自動啟動。使用此頁面選擇最適合你的叢集的 Ingress 控制器實現。
Kubernetes 作為專案支援並維護 AWS、GCE 和 nginx Ingress 控制器。
附加控制器
- AKS Application Gateway Ingress Controller 是一個配置 Azure Application Gateway 的 Ingress 控制器。
- 阿里雲 MSE Ingress 是一個配置 阿里雲原生閘道器 的 Ingress 控制器,阿里雲原生閘道器也是 Higress 的商業版本。
- Apache APISIX ingress controller 是一個基於 Apache APISIX 的 Ingress 控制器。
- Avi Kubernetes Operator 使用 VMware NSX Advanced Load Balancer 提供 L4-L7 負載平衡。
- BFE Ingress Controller 是一個基於 BFE 的 Ingress 控制器。
- Cilium Ingress Controller 是一個由 Cilium 提供支援的 Ingress 控制器。
- Citrix Ingress 控制器 適用於 Citrix Application Delivery Controller。
- Contour 是一個基於 Envoy 的 Ingress 控制器。
- Emissary-Ingress API 閘道器是一個基於 Envoy 的 Ingress 控制器。
- EnRoute 是一個基於 Envoy 的 API 閘道器,可以作為 Ingress 控制器執行。
- Easegress IngressController 是一個基於 Easegress 的 API 閘道器,可以作為 Ingress 控制器執行。
- F5 BIG-IP Kubernetes 容器 Ingress 服務 允許你使用 Ingress 配置 F5 BIG-IP 虛擬伺服器。
- FortiADC Ingress Controller 支援 Kubernetes Ingress 資源,並允許你從 Kubernetes 管理 FortiADC 物件。
- Gloo 是一個基於 Envoy 的開源 Ingress 控制器,提供 API 閘道器功能。
- HAProxy Ingress 是 HAProxy 的 Ingress 控制器。
- Higress 是一個基於 Envoy 的 API 閘道器,可以作為 Ingress 控制器執行。
- 用於 Kubernetes 的 HAProxy Ingress Controller 也是 HAProxy 的 Ingress 控制器。
- Istio Ingress 是一個基於 Istio 的 Ingress 控制器。
- 用於 Kubernetes 的 Kong Ingress Controller 是一個驅動 Kong Gateway 的 Ingress 控制器。
- Kusk Gateway 是一個基於 Envoy 的 OpenAPI 驅動的 Ingress 控制器。
- 用於 Kubernetes 的 NGINX Ingress Controller 與 NGINX Web 伺服器(作為代理)協同工作。
- ngrok Kubernetes Ingress Controller 是一個開源控制器,用於使用 ngrok 平臺為你的 K8s 服務新增安全的公共訪問。
- OCI Native Ingress Controller 是一個用於 Oracle Cloud Infrastructure 的 Ingress 控制器,允許你管理 OCI Load Balancer。
- OpenNJet Ingress Controller 是一個基於 OpenNJet 的 Ingress 控制器。
- Pomerium Ingress Controller 基於 Pomerium,提供上下文感知的訪問策略。
- Skipper HTTP 路由器和反向代理,用於服務組合,包括 Kubernetes Ingress 等用例,設計為構建自定義代理的庫。
- Traefik Kubernetes Ingress 供應商 是 Traefik 代理的 Ingress 控制器。
- Tyk Operator 透過自定義資源擴充套件 Ingress,將 API 管理功能引入 Ingress。Tyk Operator 適用於開源 Tyk 閘道器和 Tyk Cloud 控制平面。
- Voyager 是 HAProxy 的 Ingress 控制器。
- Wallarm Ingress Controller 是一個提供 WAAP (WAF) 和 API 安全功能的 Ingress 控制器。
使用多個 Ingress 控制器
你可以在叢集中使用 Ingress 類 部署任意數量的 Ingress 控制器。請注意你的 Ingress 類資源的 `metadata.name`。當你建立一個 Ingress 時,你需要這個名稱來指定 Ingress 物件上的 `ingressClassName` 欄位(請參閱 IngressSpec v1 參考)。`ingressClassName` 取代了舊的註解方法。
如果你沒有為 Ingress 指定 IngressClass,並且你的叢集中只有一個 IngressClass 被標記為預設,那麼 Kubernetes 會將叢集的預設 IngressClass 應用於該 Ingress。你可以透過在該 IngressClass 上設定 `ingressclass.kubernetes.io/is-default-class` 註解並將其字串值設定為 `"true"` 來將其標記為預設。
理想情況下,所有 Ingress 控制器都應滿足此規範,但不同的 Ingress 控制器操作方式略有不同。
注意
請務必查閱 Ingress 控制器的文件,以瞭解選擇它時的注意事項。下一步
- 瞭解更多關於 Ingress 的資訊。
- 在 Minikube 上使用 NGINX 控制器設定 Ingress.
本頁面上的專案涉及提供 Kubernetes 所需功能的第三方產品或專案。Kubernetes 專案作者不對這些第三方產品或專案負責。有關更多詳細資訊,請參閱 CNCF 網站指南。
在提議新增額外第三方連結的更改之前,你應該閱讀內容指南。