Ingressコントローラー
Ingressリソースが動作するためには、クラスターでIngressコントローラーが実行されている必要があります。
kube-controller-manager
バイナリの一部として実行される他のタイプのコントローラーとは異なり、Ingressコントローラーはクラスターで自動的に起動されません。このページを使用して、クラスターに最適なIngressコントローラーの実装を選択してください。
プロジェクトとしてのKubernetesは現在、AWS、GCE、およびnginxのIngressコントローラーをサポート・保守しています。
追加のコントローラー
- AKS Application Gateway Ingress Controllerは、Azure Application Gatewayを設定するIngressコントローラーです。
- Ambassador API GatewayはEnvoyベースのIngressコントローラーです。
- 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 controllerは、Citrix Application Delivery Controllerで動作します。
- Contourは、EnvoyベースのIngressコントローラーです。
- EnRouteはIngressコントローラーのように実行できるEnvoyベースのAPI gatewayです。
- Easegress IngressControllerはIngressコントローラーのように実行できるEasegressベースのAPI gatewayです。
- F5 BIG-IPのContainer Ingress Services for KubernetesはF5 BIG-IPの仮想サーバー上でIngressの設定を可能にします。
- FortiADC Ingress Controllerは、Kubernetes Ingressリソースをサポートし、FortiADCオブジェクトをKubernetesから管理することができます。
- GlooはEnvoyをベースにしたオープンソースのIngressコントローラーで、API Gateway機能を提供しています。
- HAProxy Ingressは、HAProxy用のIngressコントローラーです。
- HAProxy Ingress Controller for Kubernetesも、HAProxy用のIngressコントローラーです。
- Istio Ingressは、IstioベースのIngressコントローラーです。
- Kong Ingress Controller for Kubernetesは、Kong Gateway向けのIngressコントローラーです。
- Kusk GatewayはEnvoyをベースにしたOpenAPIドリブンのIngressコントローラーです。
- NGINX Ingress Controller for Kubernetesは、NGINXウェブサーバーで(プロキシーとして)動作します。
- ngrok Kubernetes Ingress Controllerは、ngrok platformを使用するK8sサービスに安全な公開アクセスを追加するためのオープンソースコントローラーです。
- OCI Native Ingress Controllerは、Oracle Cloud Infrastructure用のIngressコントローラーであり、OCI Load Balancerを管理することができます。
- Pomerium Ingress ControllerはPomeriumベースのものであり、コンテキストを考慮したアクセスポリシーを提供します。
- Skipperは、カスタムプロキシーを構築するためのライブラリーとして設計された、Kubernetes Ingressなどのユースケースを含む、サービス構成用のHTTPルーターとリバースプロキシーです。
- Traefik Kubernetes Ingress providerは、Traefik proxy向けのIngressコントローラーです。
- Tyk OperatorはAPI管理機能をIngressに持たせるためにCustom ResourcesでAPIを拡張します。Tyk OperatorはOpen Source Tyk GatewayとTyk Cloudコントロールプレーンで動作します。
- Voyagerは、HAProxy向けのIngressコントローラーです。
- Wallarm Ingress ControllerはWAAP(WAF)やAPIセキュリティ機能を提供するIngressコントローラーです。
複数のIngressコントローラーの使用
Ingress Classを使用して、複数のIngressコントローラーをクラスターにデプロイすることができます。
Ingress Classリソースの.metadata.name
に注目してください。
Ingressを作成する際には、IngressオブジェクトでingressClassName
フィールドを指定するために、その名前が必要になります(IngressSpec v1 referenceを参照)。
ingressClassName
は古いannotation methodの代替品です。
Ingressに対してIngressClassを指定せず、クラスターにはデフォルトとして設定されたIngressClassが1つだけある場合、KubernetesはIngressにクラスターのデフォルトIngressClassを適用します。
IngressClassのingressclass.kubernetes.io/is-default-class
アノテーションを文字列"true"
に設定することで、デフォルトとしてIngressClassを設定します。
理想的には、すべてのIngressコントローラーはこの仕様を満たすべきですが、いくつかのIngressコントローラーはわずかに異なる動作をします。
次の項目
このページの項目は、Kubernetesが必要とする機能を提供するサードパーティー製品またはプロジェクトです。Kubernetesプロジェクトの作者は、それらのサードパーティー製品またはプロジェクトに責任を負いません。詳しくは、CNCFウェブサイトのガイドラインをご覧ください。第三者のリンクを追加するような変更を提案する前に、コンテンツガイドを読むべきです。