Das NSX Container Plugin (NCP) stellt eine Integration zwischen NSX und der Container-Orchestrierung wie Kubernetes sowie die Integration zwischen NSX und Container-basierten PaaS-Softwareprodukten (Plattform als Dienst) wie OpenShift bereit.

Dieses Handbuch beschreibt das Einrichten von NCP mit OpenShift 4. Informationen zum Einrichten von NCP mit OpenShift 3 finden Sie in der NCP 2.5-Version dieses Leitfadens.

Die Hauptkomponente von NCP wird in einem Container ausgeführt und kommuniziert mit NSX Manager und mit der OpenShift-Control Plane. NCP überwacht Änderungen an den Containern und anderen Ressourcen und verwaltet Netzwerkressourcen wie logische Ports, Switches, Router und Sicherheitsgruppen für die Container per Aufruf der NSX Policy API.

Das NSX CNI-Plugin wird auf jedem OpenShift-Knoten ausgeführt. Es überwacht Ereignisse im Container-Lebenszyklus, verbindet eine Containerschnittstelle mit dem Gast-vSwitch und programmiert den Gast-vSwitch für die Kennzeichnung und Weiterleitung des Containerdatenverkehrs zwischen den Containerschnittstellen und der VNIC.

NCP bietet die folgenden Funktionen:
  • Es erstellt automatisch eine logische NSX-Topologie für einen OpenShift-Cluster und erstellt ein separates logisches Netzwerk für jeden OpenShift-Namespace.
  • Es verbindet OpenShift-Pods mit dem logischen Netzwerk und weist IP- und MAC-Adressen zu.
  • Es unterstützt Netzwerkadressübersetzung (Network Address Translation – NAT) und weist eine separate SNAT-IP für jeden OpenShift-Namespace zu.
    Hinweis: Bei der Konfiguration von NAT darf die Gesamtzahl der übersetzten IPs 1000 nicht überschreiten.
  • Es implementiert OpenShift-Netzwerkrichtlinien mit verteilter NSX-Firewall.
    • Unterstützung für Ingress- und Egress-Netzwerkrichtlinien.
    • Unterstützung für IPBlock-Selektor in Netzwerkrichtlinien.
    • Unterstützung für matchLabels und matchExpression beim Angeben von Bezeichnungsselektoren für Netzwerkrichtlinien.
  • Es implementiert eine OpenShift-Route mit NSX-Load Balancer der Schicht 7.
    • Unterstützung für HTTP-Route und HTTPS-Route mit TLS-Edge-Beendigung.
    • Unterstützung für Routen mit alternativen Backends und Unterdomänen als Platzhalter.
  • Es erstellt auf dem logischen NSX-Switch Port Tags für den Namespace, den Pod-Namen und die Bezeichnungen eines Pods und lässt zu, dass der Administrator die NSX-Sicherheitsgruppen und -richtlinien basierend auf den Tags festlegt.