Sie können einen Port konfigurieren, um SR-IOV- oder DirectPath I/O-Passthrough zuzulassen, und anschließend OpenStack-Instanzen erstellen, die physische Hardwareschnittstellen verwenden.
Dieses Verfahren verwendet OpenStack Neutron, um Passthrough für Netzwerkgeräte zu aktivieren. Weitere Informationen für Geräte ohne Netzwerk finden Sie unter Konfigurieren von Passthrough für Geräte ohne Netzwerk.
Voraussetzungen
Aktivieren Sie SR-IOV oder DirectPath I/O in vSphere:
Erstellen Sie einen dedizierten Computing-Cluster für SR-IOV-Geräte. DRS-Regeln gelten nicht für diese Geräte.
Zum Beibehalten der MAC-Adresse eines physischen Geräts fügen Sie den zugehörigen Cluster vor dem Aktivieren von direktem Passthrough auf dem Gerät als Computing-Knoten hinzu. Wenn direktes Passthrough bereits aktiviert wurde, können Sie es deaktivieren, den Cluster neu starten und direktes Passthrough erneut aktivieren.
Prozedur
- Melden Sie sich beim OpenStack Management Server als
viouser
an.
- Wenn Sie eine NSX-T Data Center-Bereitstellung verwenden, geben Sie einen Distributed Switch für jeden Computing-Cluster an, auf dem SR-IOV aktiviert ist.
- Wenn die Datei custom.yml in Ihrer Bereitstellung nicht verwendet wird, kopieren Sie die Vorlagendatei custom.yml in das Verzeichnis /opt/vmware/vio/custom.
sudo mkdir -p /opt/vmware/vio/custom
sudo cp /var/lib/vio/ansible/custom/custom.yml.sample /opt/vmware/vio/custom/custom.yml
- Öffnen Sie die Datei /opt/vmware/vio/custom/custom.yml in einem Texteditor.
- Heben Sie die Auskommentierung des Parameters nova_dvs_moid auf.
- Geben Sie den DNS-Namen jedes Computing-Treibers in Ihrer Bereitstellung sowie den MOID (Managed Object Identifier) des damit verknüpften VDS an.
Beispiel:
nova_dvs_moid:
compute01: dvs-35
compute02: dvs-36
Beachten Sie, dass vor den Namen der einzelnen Computing-Treiber jeweils drei Leerzeichen vorhanden sind.
- Stellen Sie die aktualisierte Konfiguration bereit.
sudo viocli deployment configure
Die Bereitstellung der Konfiguration führt zu einer kurzen Unterbrechung der OpenStack-Dienste.
- Wechseln Sie zum
root
-Benutzer und laden Sie die Datei mit den Anmeldedaten des Cloud-Administrators.
sudo su -
source ~/cloudadmin.rc
- Erstellen Sie ein Provider-Netzwerk für SR-IOV-Geräte.
neutron net-create network-name --tenant-id project-uuid --provider:network_type {vlan | portgroup | nsx-net} --provider:physical_network physical-id [--provider:segmentation_id vlan-id]
Option |
Beschreibung |
network-name |
Geben Sie einen Namen für das Netzwerk ein. |
--tenant-id |
Geben Sie die UUID des Projekts an, für das der Port erstellt werden soll. Sie können mithilfe des Befehls openstack project list nach der UUID eines Projekts suchen. |
--provider:network_type |
Geben Sie vlan für ein VLAN-Netzwerk, portgroup für ein Portgruppennetzwerk oder nsx-net für ein Opaque-Netzwerk ein. |
--provider:physical_network |
Geben Sie für ein VLAN-Netzwerk in NSX Data Center for vSphere den MOID (Managed Object Identifier) des Distributed Switch an.
Geben Sie für ein VLAN-Netzwerk in NSX-T Data Center die UUID der VLAN-Transportzone an.
Geben Sie für ein Portgruppennetzwerk den MOID der Portgruppe an.
Geben Sie für ein Opaque-Netzwerk die UUID des logischen Switches an.
|
--provider:segmentation_id |
Geben Sie die VLAN-ID ein, wenn Sie ein VLAN-basiertes Netzwerk erstellen möchten. |
- Erstellen Sie einen Passthrough-fähigen Port.
neutron port-create network-id --tenant-id project-uuid --name port-name --vnic_type {direct | direct-physical}
Option |
Beschreibung |
network-id |
Geben Sie die UUID des Netzwerks an, in dem der Port erstellt werden soll. Sie können nach der UUID eines Netzwerks suchen, indem Sie den Befehl openstack network list ausführen. |
--tenant-id |
Geben Sie die UUID des Projekts an, für das der Port erstellt werden soll. |
--name |
Geben Sie einen Namen für den Port ein. |
--vnic_type |
Geben Sie direct für SR-IOV oder direct-physical für direktes Passthrough ein. |
Hinweis:
Portsicherheit wird für direct- und direct-physical-Ports nicht unterstützt und für den erstellten Port automatisch deaktiviert.
Ergebnisse
Sie können Passthrough-fähige virtuelle Maschinen nun bereitstellen, indem Sie sie mit dem in diesem Verfahren erstellten Port konfigurieren.