Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Azure virtuellen Computer (VMs) unterstützen zwei Speichercontrollerschnittstellen: Small Computer System Interface (SCSI) und NVM Express (NVMe). SCSI ist ein Legacystandard, der physische Konnektivität und Datenübertragung zwischen Computern und Peripheriegeräten bietet. NVMe bietet eine ähnliche Konnektivität, ist aber eine schnellere und effizientere Schnittstelle für die Datenübertragung zwischen Servern und Speichersystemen.
In diesem Artikel erfahren Sie, wie Sie einen Azure virtuellen Computer mithilfe von Azure Boost und dem AZURE NVMe-Konvertierungsskript von einem SCSI-Datenträgercontroller in NVMe konvertieren. Dasselbe Skript und die gleiche Prozedur gelten für:
- Linux- und Windows-VMs.
- Virtuelle Computer mit oder ohne Datenträger und einem temporären Datenträger.
Azure unterstützt weiterhin die SCSI-Schnittstelle auf den VM-Angeboten, die SCSI-Speicher bereitstellen. Nicht alle neuen VM-Reihen enthalten SCSI als Option in Zukunft.
Was ändert sich für Ihren virtuellen Computer?
Durch das Ändern der Hostschnittstelle von SCSI zu NVMe wird der Remotespeicher (Betriebssystemdatenträger oder -datenträger) nicht geändert. Sie ändert die Art und Weise, wie das Betriebssystem die Datenträger verwendet.
| Datenträger | SCSI-VM | NVMe-VM (v5 mit temporärem Datenträger) | NVMe-VM (v6) |
|---|---|---|---|
| Betriebssystem-Datenträger | /dev/sda | /dev/nvme0n1 | /dev/nvme0n1 |
| Temporärer Datenträger | /dev/sdb | /dev/sda | /dev/nvme1n1 |
| Erster Datenträger | /dev/sdc | /dev/nvme0n2 | /dev/nvme0n2 |
Das Konvertieren Ihrer Azure VM von SCSI in NVMe mithilfe von Azure Boost kann Ihnen helfen, diese Leistungsverbesserungen vollständig zu nutzen und einen Wettbewerbsvorteil in der Cloud Computing-Landschaft zu erhalten.
Migrieren eines virtuellen Computers von SCSI zu NVMe
Führen Sie die folgenden allgemeinen Schritte aus, um von SCSI zu NVMe zu migrieren:
- Überprüfen Sie, ob Ihre VM-Serie NVMe unterstützt.
- Überprüfen Sie die Voraussetzungen für Ihr Betriebssystem.
- Konvertieren Sie Ihren virtuellen Computer in NVMe.
- Überprüfen Sie die Konvertierung.
1. Überprüfen Sie, ob Ihre virtuelle Computer-Serie NVMe unterstützt
In der Tabelle Azure Heraufwendbarkeit werden die VM-Größen aufgelistet, die NVMe-angefügte Datenträger unterstützen.
2. Überprüfen Der Voraussetzungen
Bevor Sie beginnen, stellen Sie sicher, dass Sie über die folgenden Voraussetzungen verfügen:
- Ein Azure-Abonnement und ein virtueller Computer, den Sie von SCSI in NVMe oder von NVMe in SCSI konvertieren müssen
- PowerShell und das Az-Modul installiert und konfiguriert
- Geeignete Berechtigungen zum Ausführen von Skripts für Azure Ressourcen
3. Nutzung
Um das Skript auszuführen, öffnen Sie PowerShell als Administrator, und führen Sie die folgenden Schritte aus:
- Installieren Sie PowerShell, oder führen Sie das Skript auf Azure Cloud Shell aus.
Tipp
Installieren Sie PowerShell mithilfe der PowerShell-Dokumentation.
- Nicht signierte PowerShell-Skriptdateien zulassen.
Set-ExecutionPolicy -ExecutionPolicy Unrestricted
- Stellen Sie eine Verbindung mit Ihrem Azure Konto mithilfe von
Connect-AzAccount.
Connect-AzAccount
- Stellen Sie sicher, dass Sie mit Ihrem Abonnement verbunden sind. Um das Abonnement zu ändern, verwenden Sie
Set-AzContext.
Select-AzSubscription -Subscription xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
- Laden Sie das Skript herunter.
Invoke-WebRequest -Uri "https://raw.githubusercontent.com/Azure/SAP-on-Azure-Scripts-and-Utilities/refs/heads/main/Azure-NVMe-Utils/Azure-NVMe-Conversion.ps1" -OutFile ".\Azure-NVMe-Conversion.ps1"
- Führen Sie das Konvertierungsskript aus.
.\Azure-NVMe-Conversion.ps1
Note
Wenn Sie zwischen VM-Größen mit unterschiedlicher Ressourcenunterstützung (temporärer) Datenträger konvertieren, muss Ihr Azure-Abonnement für das VMTempDiskResizePreview Feature registriert werden. Wenn das Feature nicht registriert ist, wird das Skript mit einem Fehler beendet. Registrieren Sie das Feature mithilfe des folgenden Befehls, warten Sie 10 Minuten, bis die automatische Genehmigung wirksam wird, und führen Sie dann das Skript erneut aus.
Register-AzProviderFeature -FeatureName VMTempDiskResizePreview -ProviderNamespace Microsoft.Compute
Example
.\Azure-NVMe-Conversion.ps1 -ResourceGroupName <your-RG> -VMName <your-VMname> -NewControllerType <NVMe/SCSI> -VMSize <new-VM-SKU> -StartVM
Das Skript weist die folgenden Parameter auf.
| Parameter | BESCHREIBUNG | Erforderlich |
|---|---|---|
-ResourceGroupName |
Der Ressourcengruppenname für Ihren virtuellen Computer. | Ja |
-VMName |
Der Name Ihrer VM auf Azure. | Ja |
-NewControllerType |
Der Speichercontrollertyp, in den der virtuelle Computer konvertiert werden soll (NVMe oder SCSI). | Ja |
-VMSize |
Die Azure VM-SKU zum Konvertieren der VM in. | Ja |
-StartVM |
Starten Sie den virtuellen Computer nach der Konvertierung. | Nein |
-FixOperatingSystemSettings |
Korrigieren Sie die Betriebssystemeinstellungen automatisch mithilfe von Azure Ausführen von Befehlen. | Nein |
-WriteLogfile |
Erstellen Sie eine Protokolldatei. | Nein |
-IgnoreSKUCheck |
Ignorieren Sie die Überprüfung der VM-SKU. | Nein |
-IgnoreWindowsVersionCheck |
Ignorieren Sie die Windows Versionsüberprüfung. | Nein |
-IgnoreAzureModuleCheck |
Führen Sie die Überprüfung nicht auf installierte Azure Module aus. | Nein |
-IgnoreOSCheck |
Überprüfen Sie nicht auf die Betriebssystembereitschaft. Es wird erwartet, dass das Betriebssystem bereit ist. | Nein |
-SleepSeconds |
Die Zeit, die Azure benötigt, um Änderungen zu übernehmen, bevor der virtuelle Computer gestartet wird. | Nein |
Das Skript führt die folgenden Schritte aus:
- Überprüft Az-Modulversionen, VM-Existenz, Betriebssystemtyp, Generation, aktueller Controllertyp und NVMe-Funktion der Ziel-VM-SKU.
- Überprüft
-FixOperatingSystemSettingsund konfiguriert das Gastbetriebssystem für NVMe mithilfe von Azure Befehl ausführen:- Überprüft unter Linux, ob der NVMe-Treiber in
initrd/initramfsist, legt festnvme_core.io_timeout=240und sucht nach/etc/fstabveralteten Gerätenamen. - Konfiguriert auf Windows den Treiber für den
stornvmeStart (sc.exe config stornvme start=boot).
- Überprüft unter Linux, ob der NVMe-Treiber in
- Stoppt den virtuellen Computer und gibt ihn frei.
- Updates
supportedCapabilities.diskControllerTypesaufSCSI, NVMedem Betriebssystemdatenträger. - Ändert die Größe des virtuellen Computers an die Ziel-SKU und legt den Datenträgercontrollertyp auf NVMe fest.
- Startet den virtuellen Computer (mit
-StartVM).
4. Überprüfen der Konvertierung
Bestätigen mithilfe von PowerShell
Vergewissern Sie sich nach dem Neustart des virtuellen Computers, dass der Datenträgercontrollertyp erfolgreich geändert wurde.
$vm = Get-AzVM -ResourceGroupName "<resource-group-name>" -VMName "<vm-name>"
$vm.StorageProfile.DiskControllerType
Überprüfen des Ergebnisses innerhalb des Gasts
Überprüfen Sie die Geräte mithilfe des nvme Befehls. Wenn der nvme Befehl fehlt, installieren Sie das nvme-cli Paket.
nvme list
Die Ausgabe zeigt den Betriebssystemdatenträger und die Datenträger an.
Tipp
Sie können jederzeit auf SCSI zurücksetzen. Das Skript stellt einen Befehl am Ende einer erfolgreichen Ausführung bereit, um zur ursprünglichen Konfiguration zurück zu wechseln. Speichern Sie diesen Befehl, bevor Sie die Sitzung schließen.
Wenn Sie ein Rollback ausführen müssen, führen Sie das Skript erneut mit -NewControllerType SCSI und der ursprünglichen VM-SKU aus:
.\Azure-NVMe-Conversion.ps1 -ResourceGroupName <your-RG> -VMName <your-VMname> -NewControllerType SCSI -VMSize <original-SKU> -StartVM