Aktivieren von InfiniBand
Gilt für: ✔️ Linux-VMs ✔️ Windows-VMs ✔️ Flexible Skalierungsgruppen ✔️ Einheitliche Skalierungsgruppen
RDMA-fähige VMs der HB-Serie und der N-Serie kommunizieren über das InfiniBand-Netzwerk, das sich durch seine geringe Latenz und seine hohe Bandbreite auszeichnet. Die RDMA-Funktion über eine solche Verbindung ist entscheidend, um die Skalierbarkeit und Leistung von HPC- und KI-Workloads mit verteilten Knoten zu steigern. Die InfiniBand-fähigen VMs der HB-Serie und der N-Serie sind über einen nicht-blockierenden Fat-Tree mit einem geringen Durchmesser für eine optimierte und konsistente RDMA-Leistung verbunden.
Es gibt verschiedene Möglichkeiten, InfiniBand für die dazu geeigneten VM-Größen zu aktivieren.
VM-Images mit InfiniBand-Treibern
Unter Konfigurieren und Optimieren von virtuellen Computern finden Sie eine Liste der unterstützten VM-Images im Marketplace, die vorab mit InfiniBand-Treibern (für SR-IOV- oder Nicht-SR-IOV-VMs) geladen werden oder mit den entsprechenden Treibern für RDMA-fähige VMs konfiguriert werden können. Die Ubuntu-HPC- und AlmaLinux-HPC-VM-Images im Marketplace sind der einfachste Weg für den Einstieg.
InfiniBand-Treibererweiterungen für VMs
Unter Linux können Sie die InfiniBandDriverLinux-VM-Erweiterung verwenden, um die Mellanox OFED-Treiber zu installieren und InfiniBand auf den SR-IOV-fähigen VMs der HB-Serie und der N-Serie zu aktivieren.
Unter Windows installiert die VM-Erweiterung InfiniBandDriverWindows Windows Network Direct-Treiber (auf VMs ohne SR-IOV) oder Mellanox OFED-Treiber (auf VMs mit SR-IOV), um RDMA-Konnektivität herzustellen. In bestimmten Bereitstellungen von A8- und A9-Instanzen wird die Erweiterung HpcVmDrivers automatisch hinzugefügt. Beachten Sie, dass die VM-Erweiterung „HpcVmDrivers“ eingestellt wird. Sie wird nicht mehr aktualisiert.
Um die VM-Erweiterung einer VM hinzuzufügen, können Sie Azure PowerShell-Cmdlets verwenden. Weitere Informationen finden Sie unter Erweiterungen und Features für virtuelle Computer. Erweiterungen können auch für virtuelle Computer verwendet werden, die mit dem klassischen Bereitstellungsmodell bereitgestellt wurden.
Manuelle Installation
Mellanox OpenFabrics-Treiber (OFED) können manuell auf den SR-IOV-fähigen VMs der HB-Serie und der N-Serie installiert werden.
Linux
Die OFED-Treiber für Linux können mithilfe des folgenden Beispiels installiert werden. Obwohl das hier genannte Beispiel für RHEL gilt, sind die Schritte allgemein und können für jedes kompatible Linux-Betriebssystem wie Ubuntu (18.04, 19.04, 20.04) und SLES (12 SP4+ und 15) verwendet werden. Weitere Beispiele für andere Distributionen finden Sie im azhpc-Images-Repository. Die enthaltenen Treiber funktionieren ebenfalls, die Mellanox OFED-Treiber bieten aber mehr Features.
MLNX_OFED_DOWNLOAD_URL=http://content.mellanox.com/ofed/MLNX_OFED-5.0-2.1.8.0/MLNX_OFED_LINUX-5.0-2.1.8.0-rhel7.7-x86_64.tgz
# Optionally verify checksum
wget --retry-connrefused --tries=3 --waitretry=5 $MLNX_OFED_DOWNLOAD_URL
tar zxvf MLNX_OFED_LINUX-5.0-2.1.8.0-rhel7.7-x86_64.tgz
KERNEL=( $(rpm -q kernel | sed 's/kernel\-//g') )
KERNEL=${KERNEL[-1]}
# Uncomment the lines below if you are running this on a VM
#RELEASE=( $(cat /etc/redhat-release | awk '{print $4}') )
#yum -y install http://olcentgbl.trafficmanager.net/redhat/${RELEASE}/updates/x86_64/kernel-devel-${KERNEL}.rpm
sudo yum install -y kernel-devel-${KERNEL}
sudo ./MLNX_OFED_LINUX-5.0-2.1.8.0-rhel7.7-x86_64/mlnxofedinstall --kernel $KERNEL --kernel-sources /usr/src/kernels/${KERNEL} --add-kernel-support --skip-repo
Windows
Laden Sie für Windows den Mellanox OFED für Windows-Treiber herunter, und installieren Sie ihn.
Aktivieren von IP über InfiniBand (IB)
Wenn Sie planen, MPI-Aufträge auszuführen, wird IPoIB in der Regel nicht benötigt. Die MPI-Bibliothek verwendet die Verbenschnittstelle für die IB-Kommunikation (es sei denn, Sie verwenden explizit den TCP/IP-Kanal der MPI-Bibliothek). Wenn Sie jedoch über eine App verfügen, die TCP/IP für die Kommunikation verwendet und die Sie über IB ausführen möchten, können Sie IPoIB über die IB-Schnittstelle verwenden. Verwenden Sie die folgenden Befehle (für RHEL), um IP über InfiniBand zu aktivieren.
Wichtig
Um Probleme zu vermeiden, stellen Sie sicher, dass Sie keine älteren Versionen des Microsoft Azure Linux-Agents (waagent) ausführen. Sie sollten mindestens Version 2.4.0.2 verwenden, bevor IP über IB aktiviert wird.
sudo sed -i -e 's/# OS.EnableRDMA=n/OS.EnableRDMA=y/g' /etc/waagent.conf
sudo systemctl restart waagent
Nächste Schritte
- Erfahren Sie mehr über das Installieren und Ausführen verschiedener unterstützter MPI-Bibliotheken auf den VMs.
- Weitere Informationen finden Sie in der Übersicht über virtuelle Computer der HBv3-Serie und in der Übersicht über virtuelle Computer der HC-Serie.
- Informieren Sie sich über die neuesten Ankündigungen, HPC-Workloadbeispiele und Leistungsergebnisse in den Tech Community-Blogs zu Azure Compute.
- Eine allgemeinere Übersicht über die Architektur für die Ausführung von HPC-Workloads finden Sie unter High Performance Computing (HPC) in Azure.