Abilitazione dell'interfaccia NVMe e SCSI nella macchina virtuale

Attenzione

Questo articolo fa riferimento a CentOS, una distribuzione Linux prossima allo stato EOL (End of Life, fine del ciclo di vita). Prendere in considerazione l'uso e il piano di conseguenza. Per altre informazioni, vedere le linee guida per la fine della vita di CentOS.

NVMe è l'acronimo di nonvolatile memory express, ovvero un protocollo di comunicazione che facilita il trasferimento dei dati più veloce e più efficiente tra server e sistemi di archiviazione. Con NVMe, i dati possono essere trasferiti alla velocità effettiva più elevata e con il tempo di risposta più veloce. Azure supporta ora l'interfaccia NVMe nella famiglia Ebsv5 e Ebdsv5, offrendo le prestazioni di I/O al secondo e velocità effettiva più elevate per l'archiviazione su disco remoto tra tutte le serie di macchine virtuali GP v5.

SCSI (Small Computer System Interface) è uno standard legacy per la connessione fisica e il trasferimento di dati tra computer e dispositivi periferici. Anche se le dimensioni delle macchine virtuali Ebsv5 supportano ancora SCSI, è consigliabile passare a NVMe per ottenere migliori vantaggi in termini di prestazioni.

Prerequisiti

È stata aggiunta una nuova funzionalità alla configurazione della macchina virtuale, denominata DiskControllerType, che consente ai clienti di selezionare il tipo di controller preferito come NVMe o SCSI. Se il cliente non specifica un valore DiskControllerType, la piattaforma sceglierà automaticamente il controller predefinito in base alla configurazione delle dimensioni della macchina virtuale. Se la dimensione della macchina virtuale è configurata per SCSI come predefinita e supporta NVMe, verrà usato SCSI a meno che non venga aggiornato a NVMe DiskControllerType.

Per abilitare l'interfaccia NVMe, è necessario soddisfare i prerequisiti seguenti:

  • Scegliere una famiglia di macchine virtuali che supporti NVMe. È importante notare che solo le dimensioni delle macchine virtuali Ebsv5 e Ebdsv5 sono dotate di NVMe nelle macchine virtuali di generazione Intel v5. Assicurarsi di selezionare una delle serie, Ebsv5 o Ebdsv5 VM.
  • Selezionare l'immagine del sistema operativo contrassegnata con il supporto NVMe
  • Acconsentire esplicitamente a NVMe selezionando il tipo di controller del disco NVMe nel modello portale di Azure o ARM/CLI/Power Shell. Per istruzioni dettagliate, vedere qui
  • Sono supportate solo le immagini gen2
  • Scegliere una delle aree di Azure in cui è abilitato NVMe

Soddisfando le cinque condizioni precedenti, sarà possibile abilitare NVMe nella famiglia di macchine virtuali supportata senza tempo. Seguire le condizioni precedenti per creare o ridimensionare correttamente una macchina virtuale con NVMe senza complicazioni. Per informazioni sull'abilitazione nvMe, vedere le domande frequenti .

Immagini del sistema operativo supportate

Linux

Distribuzione Immagine
Almalinux 8.x (attualmente 8.7) almalinux: almalinux:8-gen2: latest
Almalinux 9.x (attualmente 9.1) almalinux: almalinux:9-gen2: latest
Debian 11 Debian: debian-11:11-gen2: latest
CentOS 7.9 openlogic: centos:7_9-gen2: latest
RHEL 7.9 RedHat: RHEL:79-gen2: latest
RHEL 8.6 RedHat: RHEL:86-gen2: latest
RHEL 8.7 RedHat: RHEL:87-gen2: latest
RHEL 9.0 RedHat: RHEL:90-gen2: latest
RHEL 9.1 RedHat: RHEL:91-gen2: latest
Ubuntu 18.04 Canonical:UbuntuServer:18_04-lts-gen2:latest
Ubuntu 20.04 Canonical:0001-com-ubuntu-server-focal:20_04-lts-gen2:latest
Ubuntu 22.04 Canonical:0001-com-ubuntu-server-jammy:22_04-lts-gen2:latest
Oracle 7.9 Oracle: Oracle-Linux:79-gen2:latest
Oracle 8.5 Oracle: Oracle-Linuz:ol85-lvm-gen2:latest
Oracle 8.6 Oracle: Oracle-Linux:ol86-lvm-gen2:latest
Oracle 8.7 Oracle: Oracle-Linux:ol87-lvm-gen2:latest
Oracle 9.0 Oracle: Oracle-Linux:ol9-lvm-gen2:latest
Oracle 9.1 Oracle: Oracle-Linux:ol91-lvm-gen2:latest
SLES-for-SAP 15.3 SU edizione Standard:sles-sap-15-sp3:gen2:latest
SLES-for-SAP 15.4 SU edizione Standard:sles-sap-15-sp4:gen2:latest
SLES 15.4 SU edizione Standard:sles-15-sp4:gen2:latest
SLES 15.5 SU edizione Standard:sles-15-sp5:gen2:latest

Windows

Avvio di una macchina virtuale con interfaccia NVMe

NvMe può essere abilitato durante la creazione di macchine virtuali usando diversi metodi, ad esempio: portale di Azure, interfaccia della riga di comando, PowerShell e modelli di Resource Manager. Per creare una macchina virtuale NVMe, è prima necessario abilitare l'opzione NVMe in una macchina virtuale e selezionare il tipo di disco del controller NVMe per la macchina virtuale. Si noti che il diskcontrollertype NVMe può essere abilitato durante la creazione o l'aggiornamento a NVMe quando la macchina virtuale viene arrestata e deallocata, purché le dimensioni della macchina virtuale supportino NVMe.

visualizzazione portale di Azure

  1. Aggiungere il filtro del controller del disco. Per trovare le dimensioni idonee di NVMe, selezionare Visualizza tutte le dimensioni, selezionare il filtro Controller del disco e quindi selezionare NVMe:

    Screenshot delle istruzioni per aggiungere il filtro del controller del disco per l'interfaccia NVMe.

  2. Abilitare la funzionalità NVMe visitando la scheda Avanzate .

    Screenshot delle istruzioni per abilitare la funzionalità di interfaccia NVMe.

  3. Verificare che la funzionalità sia abilitata passando a Rivedi e crea.

    Screenshot delle istruzioni per esaminare e verificare l'abilitazione delle funzionalità.

Modello di Resource Manager di esempio



{
    "apiVersion": "2022-08-01",
    "type": "Microsoft.Compute/virtualMachines",
    "name": "[variables('vmName')]",
    "location": "[parameters('location')]",
    "identity": {
        "type": "userAssigned",
        "userAssignedIdentities": {
            "/subscriptions/ <EnterSubscriptionIdHere> /resourcegroups/ManagedIdentities/providers/Microsoft.ManagedIdentity/userAssignedIdentities/KeyVaultReader": {}
        }
    },
    "dependsOn": [
        "[resourceId('Microsoft.Network/networkInterfaces/', variables('nicName'))]"
    ],
    "properties": {
        "hardwareProfile": {
            "vmSize": "[parameters('vmSize')]"
        },
        "osProfile": "[variables('vOsProfile')]",
        "storageProfile": {
            "imageReference": "[parameters('osDiskImageReference')]",
            "osDisk": {
                "name": "[variables('diskName')]",
                "caching": "ReadWrite",
                "createOption": "FromImage"
            },
            "copy": [
                {
                    "name": "dataDisks",
                    "count": "[parameters('numDataDisks')]",
                    "input": {
                        "caching": "[parameters('dataDiskCachePolicy')]",
                        "writeAcceleratorEnabled": "[parameters('writeAcceleratorEnabled')]",
                        "diskSizeGB": "[parameters('dataDiskSize')]",
                        "lun": "[add(copyIndex('dataDisks'), parameters('lunStartsAt'))]",
                        "name": "[concat(variables('vmName'), '-datadisk-', copyIndex('dataDisks'))]",
                        "createOption": "Attach",
                        "managedDisk": {
                            "storageAccountType": "[parameters('storageType')]",
                            "id": "[resourceId('Microsoft.Compute/disks/', concat(variables('vmName'), '-datadisk-', copyIndex('dataDisks')))]"
                        }
                    }
                }
            ],
            "diskControllerTypes": "NVME"
        },
        "securityProfile": {
            "encryptionAtHost": "[parameters('encryptionAtHost')]"
        },
                          
        "networkProfile": {
            "networkInterfaces": [
                {
                    "id": "[resourceId('Microsoft.Network/networkInterfaces', variables('nicName'))]"
                }
            ]
        },
        "availabilitySet": {
            "id": "[resourceId('Microsoft.Compute/availabilitySets', parameters('availabilitySetName'))]"
        }
    },
    "tags": {
        "vmName": "[variables('vmName')]",

      "location": "[parameters('location')]",

                "dataDiskSize": "[parameters('dataDiskSize')]",

                "numDataDisks": "[parameters('numDataDisks')]",

                "dataDiskCachePolicy": "[parameters('dataDiskCachePolicy')]",

                "availabilitySetName": "[parameters('availabilitySetName')]",

                "customScriptURL": "[parameters('customScriptURL')]",

                "SkipLinuxAzSecPack": "True",

                "SkipASMAzSecPack": "True",

                "EnableCrashConsistentRestorePoint": "[parameters('enableCrashConsistentRestorePoint')]"

            }

        }

Suggerimento

Usare lo stesso parametro DiskControllerType se si usano gli strumenti di PowerShell o dell'interfaccia della riga di comando per avviare la macchina virtuale supportata da NVMe.

Passaggi successivi