InfiniBand inschakelen

Let op

In dit artikel wordt verwezen naar CentOS, een Linux-distributie die de status End Of Life (EOL) nadert. Houd rekening met uw gebruik en plan dienovereenkomstig. Zie de Richtlijnen voor het einde van de levensduur van CentOS voor meer informatie.

Van toepassing op: ✔️ Virtuele Linux-machines voor Windows-VM's ✔️ ✔️ Flexibele schaalsets Uniform-schaalsets ✔️

VM's uitde HB-serie en N-serie communiceren via het infiniBand-netwerk met lage latentie en hoge bandbreedte. De RDMA-functionaliteit via een dergelijke verbinding is essentieel om de schaalbaarheid en prestaties van HPC- en AI-workloads op gedistribueerde knooppunten te vergroten. De VM's uit de InfiniBand-serie en N-serie zijn verbonden in een niet-blokkerende vetstructuur met een ontwerp met een lage diameter voor geoptimaliseerde en consistente RDMA-prestaties.

Er zijn verschillende manieren om InfiniBand in te schakelen op de compatibele VM-grootten.

VM-installatiekopieën met InfiniBand-stuurprogramma's

Zie VM-installatiekopieën voor een lijst met ondersteunde VM-installatiekopieën op marketplace, die vooraf worden geladen met InfiniBand-stuurprogramma's (voor SR-IOV- of niet-SR-IOV-VM's) of kunnen worden geconfigureerd met de juiste stuurprogramma's voor VM's die geschikt zijn voor RDMA. De installatiekopieën van Ubuntu-HPC en AlmaLinux-HPC-VM's in de marketplace zijn de eenvoudigste manier om aan de slag te gaan.

VM-extensies voor InfiniBand-stuurprogramma's

In Linux kan de VM-extensie InfiniBandDriverLinux worden gebruikt om de Mellanox OFED-stuurprogramma's te installeren en InfiniBand in te schakelen op de VM's uit de SR-IOV-serie en N-serie.

In Windows installeert de VM-extensie InfiniBandDriverWindows Windows Network Direct-stuurprogramma's (op niet-SR-IOV-VM's) of Mellanox OFED-stuurprogramma's (op SR-IOV-VM's) voor RDMA-connectiviteit. In bepaalde implementaties van A8- en A9-exemplaren wordt de HpcVmDrivers-extensie automatisch toegevoegd. Houd er rekening mee dat de VM-extensie hpcVmDrivers wordt afgeschaft; het wordt niet bijgewerkt.

Als u de VM-extensie wilt toevoegen aan een VIRTUELE machine, kunt u Azure PowerShell-cmdlets gebruiken. Zie Extensies en functies van virtuele machines voor meer informatie. U kunt ook werken met extensies voor VM's die zijn geïmplementeerd in het klassieke implementatiemodel.

Handmatige installatie

Mellanox OpenFabrics-stuurprogramma's (OFED) kunnen handmatig worden geïnstalleerd op de VM's uit de SR-IOV-serie en N-serie.

Linux

De OFED-stuurprogramma's voor Linux kunnen worden geïnstalleerd met het onderstaande voorbeeld. Hoewel het voorbeeld hier voor RHEL/CentOS is, maar de stappen zijn algemeen en kunnen worden gebruikt voor elk compatibel Linux-besturingssysteem zoals Ubuntu (18.04, 19.04, 20.04) en SLES (12 SP4+ en 15). Meer voorbeelden voor andere distributies bevinden zich in de opslagplaats azhpc-images. De stuurprogramma's voor Postvak IN werken ook, maar de Mellanox OFED-stuurprogramma's bieden meer functies.

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/centos-release | awk '{print $4}') )
#yum -y install http://olcentgbl.trafficmanager.net/centos/${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

Download en installeer voor Windows de Mellanox OFED voor Windows-stuurprogramma's.

IP via InfiniBand (IB) inschakelen

Als u MPI-taken wilt uitvoeren, hebt u doorgaans geen IPoIB nodig. De MPI-bibliotheek gebruikt de werkwoordeninterface voor IB-communicatie (tenzij u expliciet het TCP/IP-kanaal van de MPI-bibliotheek gebruikt). Maar als u een app hebt die TCP/IP gebruikt voor communicatie en u wilt over IB lopen, kunt u IPoIB gebruiken via de IB-interface. Gebruik de volgende opdrachten (voor RHEL/CentOS) om IP via InfiniBand in te schakelen.

Belangrijk

Om problemen te voorkomen, moet u ervoor zorgen dat u geen oudere versies van Microsoft Azure Linux Agent (waagent) uitvoert. We raden u aan ten minste versie 2.4.0.2 te gebruiken voordat u IP via IB inschakelt.

sudo sed -i -e 's/# OS.EnableRDMA=n/OS.EnableRDMA=y/g' /etc/waagent.conf
sudo systemctl restart waagent

Volgende stappen