ingress-nginx und nginx ingress sind nicht dasselbe

Nach zweiwöchiger Dokumentation habe ich endlich herausgefunden, dass Ingress-Nginx und Nginx Ingress nicht dasselbe sind. Beide unterscheiden sich in Funktionsumfang und Implementierung. Es gibt sogar Dokumentation zur Migration.

Ingress-NGINX ist die Community-Version mit mehr Teilnehmern und mehr verfügbaren Antworten in Suchergebnissen. NGINX Ingress ist die kommerzielle Version mit mehr Funktionen, jedoch geringerer Community-Beteiligung.

Laut Deploy with NGINX Ingress Controller - Overview

NGINX Ingress Controller kann kostenlos mit NGINX Open Source genutzt werden. Bezahlende Kunden haben Zugriff auf NGINX Ingress Controller mit NGINX Plus. Für den Einsatz von NGINX Ingress Controller mit NGINX Service Mesh muss entweder verwendet werden:

Open Source NGINX Ingress Controller ab Version 3.0+ NGINX Plus Version von NGINX Ingress Controller Weitere Informationen finden Sie auf der Produktseite von NGINX Ingress Controller.

NGINX Ingress Controller kann mit NGINX Open Source kostenlos genutzt werden. Bezahlende Kunden können auf die NGINX Plus-Version von NGINX Ingress Controller zugreifen.

Außerdem ist die offizielle Website der kommerziellen Nginx-Version nach www.f5.com umgezogen.

Die Produktseite von Nginx Ingress Controller befindet sich unter https://www.f5.com/products/nginx/nginx-ingress-controller

Dieser Blogbeitrag aus Mai 2021 vergleicht die Unterschiede: There are two Nginx Ingress Controllers for k8s. What?

Aspekt oder Funktionkubernetes/ingress-nginxnginxinc/kubernetes-ingress mit NGINXnginxinc/kubernetes-ingress mit NGINX Plus
Grundlegend
AutorenKubernetes-CommunityNGINX Inc und CommunityNGINX Inc und Community
NGINX-VersionBenutzerdefinierte NGINX-Builds mit mehreren Drittanbieter-ModulenNGINX offizielle Mainline BuildsNGINX Plus
Kommerzieller SupportNicht verfügbarNicht verfügbarEnthalten
ImplementierungGo/Lua (während Nginx in C geschrieben ist)Go/PythonGo/Python
Lastverteilungskonfiguration über die Ingress-Ressource
Zusammenführen von Ingress-Regeln mit demselben HostUnterstütztUnterstützt über Mergeable IngressesUnterstützt über Mergeable Ingresses
HTTP-Load-Balancing-Erweiterungen - AnnotationenSiehe unterstützte AnnotationenSiehe unterstützte AnnotationenSiehe unterstützte Annotationen
HTTP-Load-Balancing-Erweiterungen - ConfigMapSiehe unterstützte ConfigMap-SchlüsselSiehe unterstützte ConfigMap-SchlüsselSiehe unterstützte ConfigMap-Schlüssel
TCP/UDPUnterstützt über eine ConfigMapUnterstützt über benutzerdefinierte RessourcenUnterstützt über benutzerdefinierte Ressourcen
WebsocketUnterstütztUnterstützt über eine AnnotationUnterstützt über eine Annotation
TCP SSL PassthroughUnterstützt über eine ConfigMapUnterstützt über benutzerdefinierte RessourcenUnterstützt über benutzerdefinierte Ressourcen
JWT-ValidierungNicht unterstütztNicht unterstütztUnterstützt
Session-PersistenzUnterstützt über ein Drittanbieter-ModulNicht unterstütztUnterstützt
Canary-Testing (nach Header, Cookie, Gewicht)Unterstützt über AnnotationenUnterstützt über benutzerdefinierte RessourcenUnterstützt über benutzerdefinierte Ressourcen
KonfigurationsvorlagenSiehe VorlageSiehe VorlagenSiehe Vorlagen
Lastverteilungskonfiguration über benutzerdefinierte Ressourcen
HTTP-LastverteilungNicht unterstütztSiehe VirtualServer und VirtualServerRoute RessourcenSiehe VirtualServer und VirtualServerRoute Ressourcen
TCP/UDP-LastverteilungNicht unterstütztSiehe TransportServer RessourceSiehe TransportServer Ressource
TCP SSL Passthrough-LastverteilungNicht unterstütztSiehe TransportServer RessourceSiehe TransportServer Ressource
Bereitstellung
KommandozeilenargumenteSiehe ArgumenteSiehe ArgumenteSiehe Argumente
TLS-Zertifikat und Schlüssel für den StandardserverErforderlich als Kommandozeilenargument / automatisch generiertErforderlich als KommandozeilenargumentErforderlich als Kommandozeilenargument
Helm-ChartUnterstütztUnterstütztUnterstützt
OperatorNicht unterstütztUnterstütztUnterstützt
Operational
Melden der IP-Adresse(n) des Ingress-Controllers in Ingress-RessourcenUnterstütztUnterstütztUnterstützt
Erweiterter StatusUnterstützt über ein Drittanbieter-ModulNicht unterstütztUnterstützt
Prometheus-IntegrationUnterstütztUnterstütztUnterstützt
Dynamische Neukonfiguration von Endpunkten (ohne Konfigurationsneuladen)Unterstützt mit einem Drittanbieter-Lua-ModulNicht unterstütztUnterstützt