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 网站指南。
在提议添加额外第三方链接的更改之前,你应该阅读内容指南。