Das NSX-Routing-Subsystem wird durch mehrere Komponenten aktiviert.

  • NSX Manager
  • Controller-Cluster
  • ESXi-Hostmodule (Kernel und UWA)
  • DLR-Kontroll-VMs
  • ESGs

NSX Manager

NSX Manager stellt folgende Funktionen für das NSX-Routing bereit:
  • Zentrale Verwaltungskomponente mit einem einheitlichen API-Zugriffspunkt für alle NSX-Verwaltungsvorgänge
  • Installation des Kernelmoduls für das verteilte Routing und die Benutzerwelt-Agenten (UWAs, User World Agents) auf den Hosts zu deren Vorbereitung für die NSX-Funktionen
  • Erstellen/Löschen von DLRs und DLR-LIFs
  • Bereitstellen/Löschen der DLR-Kontroll-VM sowie des ESG über vCenter
  • Konfiguration des Controller-Clusters über eine REST API und der Hosts über einen Nachrichtenbus:
    • Ausstattung des Steuerungskomponenten-Agenten für den Host mit den IP-Adressen von Controllern
    • Generierung der Zertifikate zum Schutz der Kommunikation der Steuerungskomponente und deren Verteilung an Hosts und Controller
  • Konfiguration von ESGs und DLR-Kontroll-VMs über den Nachrichtenbus
    • Beachten Sie, dass ESGs auf nicht vorbereiteten Hosts bereitgestellt werden können; in diesem Fall wird VIX anstelle des Nachrichtenbus verwendet

Controller-Cluster

Das verteilte NSX-Routing erfordert Controller, die nach Skalierung und Verfügbarkeit gruppiert sind und die folgenden Funktionen bereitstellen:
  • Unterstützung von VXLAN und einer Steuerungskomponente für das verteilte Routing
  • CLI-Schnittstelle für Statistiken und Laufzeitstatus
  • Auswahl eines Master-Controller-Knotens für jede DLR-Instanz
    • Master-Controller erhalten Routing-Informationen von der DLR-Kontroll-VM und verteilen diese an die Hosts
    • Senden der LIF-Tabelle an die Hosts
    • Permanente Erfassung des Hosts, auf dem sich die DLR-Kontroll-VM befindet
    • Auswahl der designierten Instanz für VLAN-LIFs und Übergabe dieser Informationen an die Hosts, Überwachung des DI-Hosts über „Keep-alives“ der Steuerungskomponente (der Zeitüberschreitungswert beträgt 30 Sekunden, die Nachweiszeit zwischen 20-40 Sekunden), Senden eines Updates an Hosts, wenn der ausgewählte DI-Host nicht mehr vorhanden ist

ESXi-Hostmodule

Das NSX-Routing nutzt direkt zwei Benutzerwelt-Agenten (UWAs, User World Agents) sowie ein Routing-Kernelmodul und benötigt das VXLAN-Kernelmodul für die VXLAN-Konnektivität.

Im Folgenden finden Sie eine Zusammenfassung der Funktion der einzelnen Komponenten:
  • Der Steuerungskomponenten-Agent (netcpa) ist ein TCP-Client (SSL), der mit dem Controller mithilfe des Steuerungskomponentenprotokolls kommuniziert. Damit lässt sich eine Verbindung mit mehreren Controllern herstellen. netcpa kommuniziert mit dem Nachrichtenbus-Client (vsfwd), um vom NSX Manager Informationen zur Steuerungskomponente abzurufen.
  • netcpa-Packaging und -Bereitstellung:
    • Der Agent ist Bestandteil des VXLAN-VIB (vSphere-Installationspaket)
    • Wird vom NSX Manager im Rahmen der Hostvorbereitung über EAM (ESX Agency Manager) installiert
    • Wird als Dienst-Daemon auf ESXi-netcpa ausgeführt
    • Kann über sein Startskript /etc/init.d/netcpad gestartet/angehalten/abgefragt werden
    • Kann remote über „Networking and Security“ > „UI-Installation“ -> „Hostvorbereitung“ -> „Installationsstatus“ auf einzelnen Hosts oder in einem kompletten Cluster neu gestartet werden
  • Das DLR-Kernelmodul (vdrb) ist in DVS zur Aktivierung der L3-Weiterleitung integriert
    • Mit netcpa konfiguriert
    • Als Bestandteil der VXLAN-VIB-Bereitstellung installiert
    • Wird mit dem DVS über einen speziellen Trunk namens „vdrPort“ verbunden, der sowohl VLANs als auch VXLANs unterstützt
    • Verfügt über Informationen zu DLR-Instanzen (pro Instanz):
      • LIF und Routentabellen
      • Lokaler ARP-Cache auf Host
  • Der Nachrichtenbus-Client (vsfwd) wird von netcpa, ESGs und DLR-Kontroll-VMs zur Kommunikation mit dem NSX Manager verwendet
    • vsfwd ruft die IP-Adresse des NSX Manager, die von vCenter über vpxa/hosd festgelegt wurde, von /UserVars/RmqIpAddress ab und meldet sich beim Nachrichtenbusserver mithilfe der Host-spezifischen Anmeldedaten, die in anderen /UserVars/Rmq*-Variablen gespeichert sind, an
  • Der auf einem ESXi-Host ausgeführte netcpa-Agent benötigt vsfwd für folgende Aufgaben:
    • Abrufen des privaten SSL-Schlüssels der Steuerungskomponente für den Host und des Zertifikats vom NSX Manager. Diese sind in /etc/vmware/ssl/rui-for-netcpa gespeichert*
    • Abrufen der IP-Adressen und SSL-Fingerabdrücke von Controllern vom NSX Manager. Diese sind in /etc/vmware/netcpa/config-by-vsm.xml gespeichert
    • Erstellen und Löschen von DLR-Instanzen auf seinem Host nach Anweisungen vom NSX Manager
  • Packaging und Bereitstellung
    • Wie bei netcpa, Teil des VXLAN-VIB
    • Wird als Dienst-Daemon auf ESXi-vsfwd ausgeführt
    • Kann über sein Startskript /etc/init.d/ vShield-Stateful-Firewall gestartet/angehalten/abgefragt werden
  • ESGs und DLR-Kontroll-VMs verwenden den VMCI-Kanal für vsfwd zum Empfang der Konfiguration vom NSX Manager

DLR-Kontroll-VMs und ESGs

  • Die DLR-Kontroll-VM ist ein „Routenverarbeitungsmodul“ für seine DLR-Instanz
    • Verfügt über einen „Platzhalter“ oder über „echte“ vNIC-Schnittstellen für jede DLR-LIF zusammen mit der IP-Konfiguration
    • Kann eines von zwei verfügbaren dynamischen Routing-Protokollen (BGP oder OSPF) ausführen und/oder statische Routen verwenden
    • Erfordert mindestens eine „Uplink“-LIF, um OSPF oder BGP ausführen zu können
    • Berechnet die Weiterleitungstabelle von direkt verbundenen (LIF-) Subnetzen, statischen sowie dynamischen Routen und sendet diese über seinen VMCI-Link an netcpa zum Master-Controller der DLR-Instanz
    • Unterstützt die HA in der Aktiv/Standby-VM-Paarkonfiguration
  • Das ESG ist ein eigenständiger Router in einer VM
    • Vollständig unabhängig vom NSX-DLR-Routing-Subsystem (keine Integration der NSX-Steuerungskomponente)
    • Wird in der Regel als Upstream-Gateway für einen oder mehrere DLRs verwendet
    • Unterstützt mehrere gleichzeitig ausgeführte dynamische Routing-Protokolle