Stellen Sie die NetScaler VPX-Instanz mit SR-IOV auf OpenStack bereit
Sie können leistungsstarke NetScaler VPX-Instances auf OpenStack bereitstellen, die die Single-Root-I/O-Virtualisierungstechnologie (SR-IOV) verwenden.
Sie können eine NetScaler VPX-Instanz, die die SR-IOV-Technologie verwendet, auf OpenStack in drei Schritten bereitstellen:
- Aktivieren Sie virtuelle SR-IOV-Funktionen (VFs) auf dem Host.
- Konfigurieren Sie die vFS und stellen Sie sie OpenStack zur Verfügung.
- Stellen Sie den NetScaler VPX auf OpenStack bereit.
Voraussetzungen
Stellen Sie sicher, dass Sie:
- Fügen Sie die Intel 82599 NIC (NIC) zum Host hinzu.
- Laden Sie den neuesten IXGBE Treiber von Intel herunter und installieren Sie ihn.
- Blockieren Sie den IXGBEVF-Treiber auf dem Host auf. Fügen Sie den folgenden Eintrag in die Datei /etc/modprobe.d/blacklist.conf hinzu: Sperrliste
ixgbevf
Hinweis:
Die
ixgbe
Treiberversion muss mindestens 5.0.4 sein.
Aktivieren von SR-IOV-VFs auf dem Host
Führen Sie einen der folgenden Schritte aus, um SR-IOV-VFs zu aktivieren:
-
Wenn Sie eine ältere Kernelversion als 3.8 verwenden, fügen Sie der Datei /etc/modprobe.d/ixgbe den folgenden Eintrag hinzu und starten Sie den Host neu: options ixgbe max_vfs= <number_of_VFs>
-
Wenn Sie die Kernel-Version 3.8 oder höher verwenden, erstellen Sie VFs mit dem folgenden Befehl:
echo <number_of_VFs> > /sys/class/net/<device_name>/device/sriov_numvfs
<!--NeedCopy-->
Ort:
- Number_of_VFS ist die Anzahl der virtuellen Funktionen, die Sie erstellen möchten.
- device_name ist der Schnittstellenname.
Wichtig:
Achten Sie beim Erstellen der SR-IOV-VFs darauf, dass Sie den VFs keine MAC-Adressen zuweisen.
Hier ist ein Beispiel für vier VFs, die erstellt werden.
Machen Sie die VFs persistent, fügen Sie die Befehle, die Sie zum Erstellen von VFs verwendet haben, zur Datei rc.local hinzu. Hier ist ein Beispiel, das den Inhalt der rc.local-Datei zeigt.
Weitere Informationen finden Sie in diesem Intel SR-IOV-Konfigurationshandbuch.
Konfigurieren und stellen Sie die VFs für OpenStack zur Verfügung
Folgen Sie den Schritten unter dem folgenden Link, um SR-IOV auf OpenStack zu konfigurieren:. https://wiki.openstack.org/wiki/SR-IOV-Passthrough-For-Networking
Bereitstellen der NetScaler VPX Instanz auf OpenStack
Sie können eine NetScaler VPX-Instanz in einer OpenStack-Umgebung bereitstellen, indem Sie die OpenStack-CLI verwenden.
Das Provisioning einer VPX-Instanz umfasst optional die Verwendung von Daten aus dem Konfigurationslaufwerk. Das Konfigurationslaufwerk ist ein spezielles Konfigurationslaufwerk, das beim Booten an die Instanz anhängt. Dieses Konfigurationslaufwerk kann verwendet werden, um Netzwerkkonfigurationsinformationen wie Management-IP-Adresse, Netzwerkmaske und Standardgateway usw. an die Instanz zu übergeben, bevor Sie die Netzwerkeinstellungen für die Instanz konfigurieren.
Wenn OpenStack eine VPX-Instanz zur Verfügung stellt, erkennt sie zuerst, dass die Instanz in einer OpenStack-Umgebung gestartet wird, indem sie eine bestimmte BIOS-Zeichenfolge (OpenStack Foundation) liest, die OpenStack angibt. Für Red Hat Linux-Distributionen wird die Zeichenfolge in /etc/nova/release gespeichert. Dies ist ein Standardmechanismus, der in allen OpenStack-Implementierungen verfügbar ist, die auf der KVM-Hypervisor-Plattform basieren. Das Laufwerk muss ein bestimmtes OpenStack-Label haben. Wenn das Konfigurationslaufwerk erkannt wird, versucht die Instanz, die folgenden Informationen aus dem im nova
Boot-Befehl angegebenen Dateinamen zu lesen. In den folgenden Verfahren heißt die Datei userdata.txt.
- Verwaltungs-IP-Adresse
- Netzwerkmaske
- Standard-Gateway
Sobald die Parameter erfolgreich gelesen wurden, werden sie in den NetScaler-Stack gefüllt. Dies hilft bei der Remote-Verwaltung der Instanz. Wenn die Parameter nicht erfolgreich gelesen werden oder das Konfigurationslaufwerk nicht verfügbar ist, wechselt die Instanz zum Standardverhalten:
- Die Instanz versucht, die IP-Adressinformationen von DHCP abzurufen.
- Wenn DHCP ausfällt oder ein Timeout auftritt, erstellt die Instance die Standard-Netzwerkkonfiguration (192.168.100.1/16).
Stellen Sie die NetScaler VPX-Instanz auf OpenStack über CLI bereit
Sie können eine VPX-Instanz in einer OpenStack-Umgebung mithilfe der OpenStack-CLI bereitstellen. Im Folgenden finden Sie eine Zusammenfassung der Schritte zum Bereitstellen einer NetScaler VPX-Instanz auf OpenStack:
-
Extrahieren der
.qcow2
Datei aus der TGZ-Datei -
Erstellen eines OpenStack-Images aus dem qcow2-Image
-
Provisioning einer VPX-Instanz
Führen Sie die folgenden Schritte aus, um eine VPX-Instanz in einer OpenStack-Umgebung bereitzustellen.
-
Extrahiere das.
qcow2
Datei aus der.tqz
Datei, indem Sie den Befehl eingeben:tar xvzf <TAR file> tar xvzf NSVPX-KVM-12.0-26.2_nc.tgz NSVPX-KVM.xml NSVPX-KVM-12.0-26.2_nc.qcow2 <!--NeedCopy-->
-
Erstellen Sie ein OpenStack-Image mit der in Schritt 1 extrahierten
.qcoz2
Datei, indem Sie den folgenden Befehl eingeben:glance image-create --name="<name of the OpenStack image>" --property hw_disk_bus=ide --is-public=true --container-format=bare --disk-format=qcow2< <name of the qcow2 file> glance image-create --name="NS-VPX-12-0-26-2" --property hw_disk_bus=ide --is-public= true --container-format=bare --disk-format=qcow2< NSVPX-KVM-12.0-26.2_nc.qcow2 <!--NeedCopy-->
Die folgende Abbildung enthält eine Beispielausgabe für den Befehl glance image-create.
-
Nachdem ein OpenStack-Image erstellt wurde, stellen Sie die NetScaler VPX-Instanz bereit.
nova boot --image NSVPX-KVM-12.0-26.2 --config-drive=true --userdata ./userdata.txt --flavor m1. medium --nic net-id=3b258725-eaae- 455e-a5de-371d6d1f349f --nic port-id=218ba819-9f55-4991-adb6- 02086a6bdee2 NSVPX-10 <!--NeedCopy-->
Im vorherigen Befehl ist userdata.txt die Datei, die Details wie IP-Adresse, Netzmaske und Standardgateway für die VPX-Instanz enthält. Die Benutzerdatendatei ist eine vom Benutzer anpassbare Datei. NSVPX-KVM-12.0-26.2 ist der Name der virtuellen Appliance, die Sie bereitstellen möchten. —NIC port-id=218ba819-9f55-4991-adb6-02086a6bdee2 ist der OpenStack ss.
Die folgende Abbildung zeigt eine Beispielausgabe des
nova
Boot-Befehls.Die folgende Abbildung zeigt ein Beispiel der Datei userdata.txt. Die Werte innerhalb der Tags <PropertySection></PropertySection> sind die vom Benutzer konfigurierbaren Werte und enthalten Informationen wie IP-Adresse, Netzmaske und Standardgateway.
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <Environment xmlns:oe="http://schemas.dmtf.org/ovf/environment/1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" oe:id="" xmlns="http://schemas.dmtf.org/ovf/environment/1"> <PlatformSection> <Kind>NOVA</Kind> <Version>2013.1</Version> <Vendor>Openstack</Vendor> <Locale>en</Locale> </PlatformSection> <PropertySection> <Property oe:key="com.citrix.netscaler.ovf.version" oe:value="1.0"/> <Property oe:key="com.citrix.netscaler.platform" oe:value="vpx"/> citrix.com 4 <Property oe:key="com.citrix.netscaler.orch_env" oe:value="openstack-orch-env"/> <Property oe:key="com.citrix.netscaler.mgmt.ip" oe:value="10.1.0.100"/> <Property oe:key="com.citrix.netscaler.mgmt.netmask" oe:value="255.255.0.0"/> <Property oe:key="com.citrix.netscaler.mgmt.gateway" oe:value="10.1.0.1"/> </PropertySection> </Environment> <!--NeedCopy-->
Zusätzliche unterstützte Konfigurationen: Erstellen und Löschen von VLANs auf SR-IOV-VFs vom Host
Geben Sie den folgenden Befehl ein, um ein VLAN auf dem SR-IOV VF zu erstellen:
ip link show enp8s0f0 vf 6 vlan 10
Im vorherigen Befehl “enp8s0f0” ist der Name der physikalischen Funktion.
Beispiel: VLAN 10, erstellt auf vf 6
Geben Sie den folgenden Befehl ein, um ein VLAN auf dem SR-IOV VF zu löschen:
ip link show enp8s0f0 vf 6 vlan 0
Beispiel: VLAN 10, aus vf 6 entfernt
Mit diesen Schritten wird das Verfahren zum Bereitstellen einer NetScaler VPX-Instanz, die die SRIOV-Technologie verwendet, auf OpenStack abgeschlossen.