ingress-nginxとnginx ingressは同じものではない

2週間のドキュメントを読んで、やっと Ingress-NginxNginx Ingress が同じものではないことに気づいた。両者の機能と実装方法は異なる。さらに、移行を指導するドキュメントもある。

Ingress-NGINX はコミュニティ版で、参加者の数が多く、検索結果も豊富。NGINX Ingress は商用版で、機能は多いが、コミュニティの参加度は低い。

Deploy with NGINX Ingress Controller - Overview によると、

NGINX Ingress Controller は NGINX Open Source で無料で使用できる。有料顧客は NGINX Plus 版の NGINX Ingress Controller を利用できる。NGINX Ingress Controller と NGINX Service Mesh を導入するには、以下のいずれかを使用する必要がある:

Open Source NGINX Ingress Controller バージョン 3.0+ NGINX Plus 版の NGINX Ingress Controller 詳細は NGINX Ingress Controller 製品ページを参照。

NGINX Ingress Controller は NGINX Open Source で無料で使用できる。有料顧客は NGINX Plus 版の NGINX Ingress Controller を利用できる。

また、nginx の商用版公式サイトは www.f5.com に移行した。

Nginx Ingress Controller の製品ページは https://www.f5.com/products/nginx/nginx-ingress-controller にある。

この 2021.05 のブログ記事は、それらの違いを比較している:There are two Nginx Ingress Controllers for k8s. What?

アスペクトまたは機能kubernetes/ingress-nginxnginxinc/kubernetes-ingress with NGINXnginxinc/kubernetes-ingress with NGINX Plus
基本
作者KubernetesコミュニティNGINX Inc とコミュニティNGINX Inc とコミュニティ
NGINX バージョンカスタム NGINX ビルド(いくつかのサードパーティモジュールを含む)NGINX 公式メインライン ビルドNGINX Plus
商用サポートN/AN/A含まれる
実装Go/Lua (NGINX は C で書かれている)Go/PythonGo/Python
Ingress リソースによるロードバランシング設定
同じホストを持つ Ingress ルールのマージサポートMergeable Ingresses 経由でサポートMergeable Ingresses 経由でサポート
HTTP ロードバランシング拡張 – 注釈サポートされる注釈 を参照サポートされる注釈 を参照サポートされる注釈 を参照
HTTP ロードバランシング拡張 – ConfigMapサポートされる ConfigMap キー を参照サポートされる ConfigMap キー を参照サポートされる ConfigMap キー を参照
TCP/UDPConfigMap 経由でサポートカスタムリソース経由でサポートカスタムリソース経由でサポート
Websocketサポート注釈 経由でサポート注釈 経由でサポート
TCP SSL PassthroughConfigMap 経由でサポートカスタムリソース経由でサポートカスタムリソース経由でサポート
JWT バリデーションサポートされていないサポートされていないサポート
セッション永続化サードパーティモジュール経由でサポートサポートされていないサポート
カナリアテスト(ヘッダー、クッキー、ウェイト)注釈経由でサポートカスタムリソース経由でサポートカスタムリソース経由でサポート
設定テンプレートテンプレート を参照テンプレート を参照テンプレート を参照
カスタムリソースによるロードバランシング設定
HTTP ロードバランシングサポートされていないVirtualServer と VirtualServerRoute リソースを参照VirtualServer と VirtualServerRoute リソースを参照
TCP/UDP ロードバランシングサポートされていないTransportServer リソースを参照TransportServer リソースを参照
TCP SSL Passthrough ロードバランシングサポートされていないTransportServer リソースを参照TransportServer リソースを参照
導入
コマンドライン引数引数 を参照引数 を参照引数 を参照
Ingress コントローラのデフォルトサーバー用 TLS 証明書と鍵コマンドライン引数として必要/自動生成コマンドライン引数として必要コマンドライン引数として必要
Helm チャートサポートサポートサポート
オペレーターサポートされていないサポートサポート
運用
Ingress リソースへの Ingress コントローラの IP アドレスの報告サポートサポートサポート
拡張ステータスサードパーティモジュール経由でサポートサポートされていないサポート
Prometheus 統合サポートサポートサポート
エンドポイントの動的再設定(設定のリロードなし)サードパーティ Lua モジュール経由でサポートサポートされていないサポート