Habilitación de la interfaz NVMe e SCSI en una máquina virtual

Precaución

En este artículo se hace referencia a CentOS, una distribución de Linux que está cerca de su estado Final de ciclo vida (EOL). Tenga en cuenta su uso y planifique en consecuencia. Para obtener más información, consulte la Guía de fin de vida de CentOS.

NVMe significa memoria exprés no volátil, que es un protocolo de comunicación que facilita la transferencia de datos de manera más rápida y eficaz entre servidores y sistemas de almacenamiento. Con NVMe, los datos se pueden transferir con el máximo rendimiento y con el tiempo de respuesta más rápido. Azure ahora admite la interfaz NVMe en la familia Ebsv5 y Ebdsv5, lo que ofrece el mayor IOPS y rendimiento para el almacenamiento en disco remoto entre todas las series de máquinas virtuales GP v5.

SCSI (interfaz estándar de equipos pequeños) es un estándar heredado para conectarse físicamente y transferir datos entre equipos y dispositivos periféricos. Aunque los tamaños de máquina virtual Ebsv5 todavía admiten SCSI, se recomienda cambiar a NVMe para obtener mejores ventajas de rendimiento.

Requisitos previos

Se ha agregado una nueva característica a la configuración de la máquina virtual, denominada DiskControllerType, que permite a los clientes seleccionar su tipo de controlador preferido como NVMe o SCSI. Si el cliente no especifica un valor para DiskControllerType, la plataforma elegirá automáticamente el controlador predeterminado en función de la configuración de tamaño de la máquina virtual. Si el tamaño de la máquina virtual está configurado para SCSI como predeterminado y admite NVMe, se usará SCSI a menos que se actualice el valor de DiskControllerType a NVMe.

Para habilitar la interfaz NVMe, se deben cumplir los siguientes requisitos previos:

  • Elija una familia de máquinas virtuales que admita NVMe. Es importante tener en cuenta que solo los tamaños de máquina virtual Ebsv5 y Ebdsv5 están equipados con NVMe en las máquinas virtuales de generación Intel v5. Asegúrese de seleccionar una de las máquinas virtuales de las series Ebsv5 o Ebdsv5.
  • Seleccione la imagen del sistema operativo etiquetada con compatibilidad con NVMe
  • Para participar en NVMe, seleccione el tipo de controlador de disco NVMe en Azure Portal o ARM/CLI/Plantilla de Power Shell. Para obtener instrucciones detalladas, consulte aquí
  • Solo se admiten imágenes de Gen2
  • Elija una de las regiones de Azure en las que NVMe está habilitada

Al cumplir las cinco condiciones anteriores, podrá habilitar NVMe en la familia de máquinas virtuales admitidas en poco tiempo. Siga las condiciones anteriores para crear o cambiar el tamaño de una máquina virtual correctamente con NVMe sin complicaciones. Consulte lasPreguntas más frecuentes para obtener información sobre la habilitación de NVMe.

Imágenes de los sistemas operativos compatibles

Linux

Distribución Imagen
Almalinux 8.x (actualmente 8.7) almalinux: almalinux:8-gen2: más reciente
Almalinux 9.x (actualmente 9.1) almalinux: almalinux:9-gen2: más reciente
Debian 11 Debian: debian-11:11-gen2: más reciente
CentOS 7.9 openlogic: centos:7_9-gen2: más reciente
RHEL 7.9 RedHat: RHEL:79-gen2: más reciente
RHEL 8.6 RedHat: RHEL:86-gen2: más reciente
RHEL 8.7 RedHat: RHEL:87-gen2: más reciente
RHEL 9.0 RedHat: RHEL:90-gen2: latest
RHEL 9.1 RedHat: RHEL:91-gen2: más reciente
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 SUSE:sles-sap-15-sp3:gen2:latest
SLES-for-SAP 15.4 SUSE:sles-sap-15-sp4:gen2:latest
SLES 15.4 SUSE:sles-15-sp4:gen2:latest
SLES 15.5 SUSE:sles-15-sp5:gen2:latest

Windows

Inicio de una máquina virtual con la interfaz NVMe

NVMe se puede habilitar durante la creación de máquinas virtuales mediante varios métodos como: Azure Portal, CLI, PowerShell y plantillas de ARM. Para crear una máquina virtual NVMe, primero debe habilitar la opción NVMe en una máquina virtual y seleccionar el tipo de disco del controlador NVMe para la máquina virtual. Tenga en cuenta que el diskcontrollertype NVMe se puede habilitar durante la creación o actualizar a NVMe cuando la máquina virtual se detiene y desasigna, siempre que el tamaño de la máquina virtual admita NVMe.

Visualización de Azure Portal

  1. Agregue un filtro de controlador de disco. Para buscar los tamaños aptos para NVMe, seleccione Ver todos los tamaños, seleccione el filtro Controlador de disco y, a continuación, seleccione NVMe:

    Captura de pantalla de las instrucciones para agregar un filtro de controlador de disco para la interfaz NVMe.

  2. Visite la pestaña Avanzado para habilitar la característica NVMe.

    Captura de pantalla de las instrucciones para habilitar la característica de interfaz NVMe.

  3. Para comprobar que la característica está habilitada, vaya a Revisar y crear.

    Captura de pantalla de las instrucciones para revisar y comprobar la habilitación de características.

Ejemplo de plantilla de ARM



{
    "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')]"

            }

        }

Sugerencia

Use el mismo parámetro DiskControllerType si usa las herramientas de PowerShell o la CLI para iniciar la máquina virtual compatible con NVMe.

Pasos siguientes