InfiniBand-Treibererweiterung für Linux
Diese Erweiterung installiert InfiniBand-OFED-Treiber auf VMs der HB-Serie und N-Serie, auf denen InfiniBand und SR-IOV (r-Größen) aktiviert ist und Linux ausgeführt wird. Je nach VM-Familie installiert die Erweiterung die entsprechenden Treiber für die Connect-X-NIC. Die InfiniBand ND-Treiber auf VMs der HB-Serie und N-Serie, auf denen SR-IOV nicht aktiviert ist, werden nicht installiert.
Anweisungen zur manuellen Installation der OFED-Treiber finden Sie unter Manuelle Installation.
Außerdem ist eine Erweiterung zur Installation der InfiniBand-Treiber für Windows-VMs verfügbar.
Voraussetzungen
Betriebssystem
Diese Erweiterung unterstützt die folgenden Betriebssystem-Distributionen, abhängig von der Treiberunterstützung für bestimmte BS-Versionen. Die aktuelle Liste der unterstützten Betriebssysteme und Treiberversionen finden Sie unter resources.json.
Distribution | Version | InfiniBand-NIC-Treiber |
---|---|---|
Ubuntu | 18.04 LTS, 20.04 LTS, 22.04 LTS | CX3-Pro, CX5, CX6 |
Red Hat Enterprise Linux | 7.4, 7.5, 7.6, 7.7, 7.8, 7.9, 8.1, 8,2 | CX3-Pro, CX5, CX6 |
Wichtig
Dieses Dokument verweist auf eine Releaseversion von Linux, die sich dem Ende des Lebenszyklus (End of Life, EOL) nähert oder es erreicht hat. Erwägen Sie ein Update auf eine aktuellere Version.
Internetkonnektivität
Die Microsoft Azure-Erweiterung für InfiniBand-Treiber erfordert, dass der virtuelle Zielcomputer mit dem Internet verbunden ist und Zugriff hat.
Erweiterungsschema
Der folgende JSON-Code zeigt das Schema für die Erweiterung.
{
"name": "<myExtensionName>",
"type": "extensions",
"apiVersion": "2015-06-15",
"location": "<location>",
"dependsOn": [
"[concat('Microsoft.Compute/virtualMachines/', <myVM>)]"
],
"properties": {
"publisher": "Microsoft.HpcCompute",
"type": "InfiniBandDriverLinux",
"typeHandlerVersion": "1.2",
"autoUpgradeMinorVersion": true,
"settings": {
}
}
}
Eigenschaften
Name | Wert/Beispiel | Datentyp |
---|---|---|
apiVersion | 2015-06-15 | date |
publisher | Microsoft.HpcCompute | Zeichenfolge |
type | InfiniBandDriverLinux | Zeichenfolge |
typeHandlerVersion | 1.2 | INT |
Bereitstellung
Azure Resource Manager-Vorlage
Azure-VM-Erweiterungen können mithilfe von Azure Resource Manager-Vorlagen bereitgestellt werden. Vorlagen sind ideal, wenn Sie virtuelle Computer bereitstellen, die nach der Bereitstellung konfiguriert werden müssen.
Die JSON-Konfiguration für eine VM-Erweiterung kann innerhalb der VM-Ressource geschachtelt oder im Stamm bzw. auf der obersten Ebene einer Resource Manager-JSON-Vorlage platziert werden. Die Platzierung der JSON-Konfiguration wirkt sich auf den Wert von Name und Typ der Ressource aus. Weitere Informationen finden Sie unter Set name and type for child resources (Festlegen von Name und Typ für untergeordnete Ressourcen).
Im folgenden Beispiel wird davon ausgegangen, dass die Erweiterung in der VM-Ressource geschachtelt ist. Beim Schachteln der Ressource für die Erweiterung wird der JSON-Code im "resources": []
-Objekt des virtuellen Computers platziert.
{
"name": "myExtensionName",
"type": "extensions",
"location": "[resourceGroup().location]",
"apiVersion": "2015-06-15",
"dependsOn": [
"[concat('Microsoft.Compute/virtualMachines/', myVM)]"
],
"properties": {
"publisher": "Microsoft.HpcCompute",
"type": "InfiniBandDriverLinux",
"typeHandlerVersion": "1.2",
"autoUpgradeMinorVersion": true,
"settings": {
}
}
}
PowerShell
Set-AzVMExtension
-ResourceGroupName "myResourceGroup" `
-VMName "myVM" `
-Location "southcentralus" `
-Publisher "Microsoft.HpcCompute" `
-ExtensionName "InfiniBandDriverLinux" `
-ExtensionType "InfiniBandDriverLinux" `
-TypeHandlerVersion 1.2 `
-SettingString '{ `
}'
Azure-Befehlszeilenschnittstelle
az vm extension set \
--resource-group myResourceGroup \
--vm-name myVM \
--name InfiniBandDriverLinux \
--publisher Microsoft.HpcCompute \
--version 1.2
Hinzufügen einer Erweiterung zu einer VM-Skalierungsgruppe
Durch folgenden Befehl wird die neueste Version (1.2) der Erweiterung „InfiniBandDriverLinux“ auf allen RDMA-fähigen VMs in einer vorhandenen VM-Skalierungsgruppe mit dem Namen myVMSS installiert, die in der Ressourcengruppe mit dem Namen myResourceGroup bereitgestellt wurde:
$VMSS = Get-AzVmss -ResourceGroupName "myResourceGroup" -VMScaleSetName "myVMSS"
Add-AzVmssExtension -VirtualMachineScaleSet $VMSS -Name "InfiniBandDriverLinux" -Publisher "Microsoft.HpcCompute" -Type "InfiniBandDriverLinux" -TypeHandlerVersion "1.2"
Update-AzVmss -ResourceGroupName "myResourceGroup" -VMScaleSetName "MyVMSS" -VirtualMachineScaleSet $VMSS
Update-AzVmssInstance -ResourceGroupName "myResourceGroup" -VMScaleSetName "myVMSS" -InstanceId "*"
Problembehandlung und Support
Problembehandlung
Daten zum Status von Erweiterungsbereitstellungen können über das Azure-Portal und mithilfe von Azure PowerShell und der Azure-Befehlszeilenschnittstelle abgerufen werden. Führen Sie den folgenden Befehl aus, um den Bereitstellungsstatus von Erweiterungen für einen bestimmten virtuellen Computer anzuzeigen.
Get-AzVMExtension -ResourceGroupName myResourceGroup -VMName myVM -Name myExtensionName
az vm extension list --resource-group myResourceGroup --vm-name myVM -o table
Die Ausgabe der Erweiterungsausführung wird in der folgenden Datei protokolliert. In dieser Datei finden Sie Informationen zum Nachverfolgen des Status von Installationen sowie zur Problembehandlung.
/var/log/azure/ib-vmext-status
Exitcodes
Die folgende Tabelle beschreibt die Bedeutung und empfohlene Aktionen basierend auf Exitcodes des Installationsprozesses für die Erweiterung.
Exitcode | Bedeutung | Mögliche Aktion |
---|---|---|
0 | Vorgang erfolgreich | |
1 | Falsche Verwendung der Erweiterung | Protokoll zur Ausführungsausgabe überprüfen |
10 | Linux Integration Services für Hyper-V und Azure nicht verfügbar oder nicht installiert | Ispci-Ausgabe überprüfen |
11 | Mellanox InfiniBand not found on this VM size (Mellanox InfiniBand konnte auf dieser VM-Größe nicht gefunden werden) | Verwenden Sie eine VM-Größe und ein Betriebssystem, die unterstützt werden. |
12 | Imageangebot nicht unterstützt | |
13 | VM-Größe nicht unterstützt | Use an InfiniBand-enabled ('r' size) H-series and N-seriesN-series VM to deploy (Verwenden Sie für die Bereitstellung eine VM der „H-Serie“ und „N-Serie“ mit InfiniBand-Aktivierung (r-Größe)). |
14 | Vorgang nicht erfolgreich | Protokoll zur Ausführungsausgabe überprüfen |
Support
Sollten Sie beim Lesen dieses Artikels feststellen, dass Sie weitere Hilfe benötigen, können Sie sich über das MSDN Azure-Forum oder über das Stack Overflow-Forum mit Azure-Experten in Verbindung setzen. Alternativ können Sie auf der Website des Azure-Supports einen Supportfall erstellen. Informationen zur Nutzung von Azure-Support finden Sie unter Microsoft Azure-Support-FAQ.
Nächste Schritte
Weitere Informationen zu VMs mit InfiniBand-Aktivierung (r-Größen) finden Sie unter HB-Serie und N-Serie.