Informationen zu Azure-VM-Utils

Gilt für: ✔️ Linux-VMs ✔️ Flexible Skalierungsgruppen

Das Azure-vm-utils-Paket stellt wichtige Dienstprogramme und udev-Regeln bereit, um die Linux-Erfahrung auf virtuellen Azure-Computern zu optimieren. Dieses Paket konsolidiert Geräteverwaltungstools für Small Computer System Interface (SCSI), Nicht-Volatile Memory Express (NVMe), Microsoft Azure Network Adapter (MANA) und Mellanox-Geräte, wodurch datenträgeridentifizierung und -verwaltung in verschiedenen VM-Konfigurationen zuverlässiger und konsistenter wird.

NVMe udev-Regeln

Neuere virtuelle Computer (VMs) SKUs in Azure verwenden die NVMe-Schnittstelle für die Datenträgerverwaltung. VMs mit NVMe-Schnittstellen interpretieren und präsentieren Datenträger anders als VMs, die SCSI-Schnittstellen verwenden. Ausführliche Informationen finden Sie unter SCSI zu NVMe-Konvertierung.

NVMe udev-Regeln in diesem Paket konsolidieren wichtige Tools und udev-Regeln, um stabile, vorhersehbare Symlinks für Azure-Datenträger zu erstellen. Dieses Paket bietet eine einfache und zuverlässige Möglichkeit zum Identifizieren von Datenträgern, wodurch Automatisierung, Problembehandlung und Verwaltung vereinfacht werden können.

WALinuxAgent enthält derzeit udev-Regeln, um mehrere Symlinks für SCSI-Datenträger bereitzustellen:

  • /dev/disk/azure/resource
  • /dev/disk/azure/root
  • /dev/disk/azure/scsi0/lun<lun>
  • /dev/disk/azure/scsi1/lun<lun>

Die in WALinuxAgent gefundenen Regeln werden mit azure-vm-utils erweitert, um die Identifikationsunterstützung für NVMe-Geräte hinzuzufügen.

Die folgenden Symlinks werden für alle Instanzen mit NVMe-Datenträgern bereitgestellt:

  • /dev/disk/azure/data/by-lun/<lun>
  • /dev/disk/azure/local/by-serial/<serial>
  • /dev/disk/azure/os

Für v6 und neuere VM-Größen mit lokalen NVMe-Datenträgern, die Namespace-IDs unterstützen, stehen auch die folgenden Links zur Verfügung:

  • /dev/disk/azure/local/by-index/<index>
  • /dev/disk/azure/local/by-name/<name>

SCSI-Kompatibilität

Um die Abwärtskompatibilität für Datenträger mit SCSI-Controllern sicherzustellen, unterstützt azure-vm-utils die folgenden Links:

  • /dev/disk/azure/os
  • /dev/disk/azure/resource

Hinweis

Einige VM-Größen verfügen über einen temporären NVMe-Datenträger zusätzlich zu einem temporären SCSI-Datenträger.

Linux-Verteilungsunterstützung

Die folgenden Distros und Versionen enthalten derzeit az-vm-utils in ihren offiziellen Azure Marketplace-Images:

Verteilung Version
Alma Linux 9.8 und höher
Azure Linux 4,0
Canonical / Ubuntu 22.04 und spätere Versionen
Debian 13
Kinvolk / Flatcar 4152.2.3
Oracle Linux 9.8 und höher
Roter Hut 9.8 und höher
Rocky Linux 9.8 und höher
SUSE Enterprise Linux 15 SP5 und spätere Versionen

Installation

Wenn das Paket nicht im Standardplattformimage vorhanden ist, installieren Sie es über Paketmanager oder über das GitHub-Repository.

Manuelle Installation

Für Verteilungen, bei denen azure-vm-utils nicht vorinstalliert ist, erstellen Sie sie manuell, und installieren Sie sie manuell:

# Clone the repository
git clone https://github.com/Azure/azure-vm-utils.git
cd azure-vm-utils

# Build the package
cmake .
make

# Install (requires root privileges)
sudo make install

Versorgungsunternehmen

azure-nvme-id

Das azure-nvme-id Hilfsprogramm hilft beim Identifizieren von Azure NVMe-Geräten und deren Eigenschaften. Dieses Hilfsprogramm ist nützlich für die Fehlerbehebung und das Erstellen von Skripten.

So führen Sie das Hilfsprogramm aus:

sudo azure-nvme-id

So führen Sie den Udev-Modus aus (in der Regel von Udev-Regeln verwendet):

DEVNAME=/dev/nvme0n1 azure-nvme-id --udev

Nachdem azure-vm-utils installiert wurde, können Sie die vorhersagbaren Symlinks für Datenträgervorgänge verwenden, anstatt sich auf Gerätenamen zu verlassen, die sich zwischen Neustarts ändern können.

Examples

Alle Symlinks für Azure-Datenträger auflisten:

find /dev/disk/azure/ -type l

Zugreifen auf den Betriebssystemdatenträger:

ls -la /dev/disk/azure/os

Auf Datenträger über LUN zugreifen:

ls -la /dev/disk/azure/data/by-lun/

Greifen Sie nach Seriennummer auf lokale NVMe-Datenträger zu:

ls -la /dev/disk/azure/local/by-serial/

Verifizierung

So überprüfen Sie, ob azure-vm-utils auf Ihrem virtuellen Computer ordnungsgemäß funktioniert:

  1. Überprüfen Sie, ob das Paket installiert ist:

    # For RPM-based systems
    rpm -qa azure-vm-utils
    
    # For DEB-based systems
    dpkg -l azure-vm-utils
    
  2. Überprüfen Sie, ob udev-Regeln vorhanden sind:

    ls -al /usr/lib/udev/rules.d/10-azure-unmanaged-sriov.rules
    ls -al /usr/lib/udev/rules.d/80-azure-disk.rules
    
  3. Prüfen Sie die Azure-Datenträger-Symlinks:

    find /dev/disk/azure -type l