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