Compartir vía


Optimización del rendimiento de red en las máquinas virtuales de Azure

Las máquinas virtuales (VM) de Azure tienen una configuración de red predeterminada que se puede optimizar para mejorar aún más el rendimiento de la red. En este artículo se describe cómo optimizar el rendimiento de red para máquinas virtuales Windows y Linux, incluidas las principales distribuciones, como Ubuntu y Red Hat.

Máquinas virtuales Windows

Si la máquina virtual Windows admite red acelerada, habilite esa característica para lograr un rendimiento óptimo. Para más información, consulte Creación de una máquina virtual Windows con redes aceleradas.

En el caso de otras máquinas virtuales Windows, el uso de escalado en el lado de la recepción (RSS) pueden logar un rendimiento máximo mayor que las que no lo usan. En las máquinas virtuales Windows, RSS se puede deshabilitar de forma predeterminada. Para determinar si RSS está habilitado y habilitarlo si está deshabilitado actualmente, siga estos pasos:

  1. Compruebe si RSS está habilitado para un adaptador de red con el comando Get-NetAdapterRss de PowerShell. En el ejemplo siguiente, la salida devuelta desde el Get-NetAdapterRss RSS no está habilitada.

    Name                    : Ethernet
    InterfaceDescription    : Microsoft Hyper-V Network Adapter
    Enabled                 : False
    
  2. Para habilitar RSS escriba el siguiente comando:

    Get-NetAdapter | % {Enable-NetAdapterRss -Name $_.Name}
    

    Este comando no tiene ninguna salida. El comando cambia la configuración de la tarjeta de interfaz de red (NIC). Provoca una pérdida temporal de conectividad durante aproximadamente un minuto. Durante la pérdida de conectividad, aparece un cuadro de diálogo Reconectando. La conectividad se suele restaurar al tercer intento.

  3. Confirme que RSS está habilitado en la máquina virtual, para lo que debe volver a escribir el comando Get-NetAdapterRss. Si se realiza correctamente, se devuelve la siguiente salida de ejemplo:

    Name                    : Ethernet
    InterfaceDescription    : Microsoft Hyper-V Network Adapter
    Enabled                 : True
    

Máquinas virtuales Linux

De manera predeterminada, en las máquinas virtuales Linux de Azure RSS está siempre habilitado. Los kernels de Linux lanzados desde octubre de 2017 incluyen nuevas opciones de optimización de red que permiten que las máquinas virtuales Linux logren un mayor rendimiento de la red.

Ubuntu para las nuevas implementaciones

El kernel de Ubuntu en Azure es el más optimizado para el rendimiento de red en Azure. Actualmente, todas las imágenes de Ubuntu de Canonical vienen de forma predeterminada con el kernel de Azure optimizado instalado.

Use el comando siguiente para asegurarse de que usa el kernel de Azure, que se identifica mediante -azure al final de la versión.

uname -r

#sample output on Azure kernel:
6.8.0-1017-azure

Actualización del kernel de Ubuntu en Azure para máquinas virtuales existentes

Al actualizar al kernel de Linux de Azure, se puede lograr un rendimiento significativo. Para comprobar si tienen este kernel, compruebe la versión del kernel. Debe ser el mismo o posterior al del ejemplo.

#Azure kernel name ends with "-azure"
uname -r

#sample output on Azure kernel:
#4.13.0-1007-azure

Si la máquina virtual no tiene el kernel de Azure, el número de versión normalmente comienza con la versión 4.4. Si la máquina virtual no tiene el kernel de Azure, ejecute los siguientes comandos como raíz:

#run as root or preface with sudo
sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get dist-upgrade -y
sudo apt-get install "linux-azure"
sudo reboot

Otras distribuciones

La mayoría de las distribuciones modernas deben tener mejoras significativas con kernels más recientes que 4.19+. Compruebe la versión actual del kernel para asegurarse de que está ejecutando un kernel más reciente.