Oharra
Orrialde honetara sartzeak baimena behar du. Saioa hasteko edo direktorioak aldatzen saia zaitezke.
Orrialde honetara sartzeak baimena behar du. Direktorioak aldatzen saia zaitezke.
Las redes aceleradas de Azure mejoran significativamente el rendimiento de las redes de máquinas virtuales al reducir la latencia y el uso de la CPU. En este artículo se describen las ventajas, las restricciones y las configuraciones admitidas de Redes aceleradas. Las redes aceleradas permiten la virtualización de E/S de raíz única (SR-IOV) en los tipos de máquina virtual (VM) compatibles, lo que mejora considerablemente el rendimiento de las redes. Esta ruta de acceso de datos de alto rendimiento omite el host, lo que reduce la latencia, la inestabilidad y el uso de CPU de las cargas de trabajo de red más exigentes.
En el diagrama siguiente, se muestra la comunicación entre dos máquinas virtuales con y sin redes aceleradas.
Sin redes aceleradas, todo el tráfico de entrada y salida de la máquina virtual tiene que atravesar el host y el conmutador virtual. El conmutador virtual proporciona toda la aplicación de directivas al tráfico. Las directivas incluyen grupos de seguridad de red, listas de control de acceso, aislamiento y otros servicios virtualizados de red.
Con Redes aceleradas, el tráfico que llega a la interfaz de red (NIC) de la máquina virtual se reenvía directamente a la máquina virtual. Las redes aceleradas descargan todas las directivas de red que aplicó el conmutador virtual y las aplica en el hardware. Dado que el hardware aplica las directivas, la NIC puede reenviar el tráfico directamente a la máquina virtual. La NIC omite el host y el conmutador virtual, y mantiene toda las directivas que aplicó en el host.
Benefits
Las redes aceleradas tienen las siguientes ventajas:
Menor latencia y más paquetes por segundo. Al eliminar el conmutador virtual de la ruta de acceso de datos, se quita el tiempo que los paquetes pasan en el host para el procesamiento de directivas. También aumenta el número de paquetes que la máquina virtual puede procesar.
Vibración reducida. El tiempo de procesamiento de los conmutadores virtuales depende de la cantidad de directivas a aplicar y de la carga de trabajo de la CPU que realiza el procesamiento. La descarga de la aplicación de directivas en el hardware elimina esa variabilidad mediante la entrega de paquetes directamente a la VM. La descarga también quita la comunicación entre el host y la VM, todas las interrupciones de software y todos los cambios de contexto.
Disminución de la utilización de la CPU. el pasar por alto el conmutador virtual en el host conlleva una disminución de la utilización de la CPU para procesar el tráfico de red.
Limitaciones y restricciones
Las ventajas de las redes aceleradas solo se aplican a la máquina virtual que las habilita.
Para obtener los mejores resultados, habilite las redes aceleradas en al menos dos máquinas virtuales de la misma red virtual de Azure. Esta característica tiene un impacto mínimo en la latencia al comunicarse entre redes virtuales o al conectarse localmente.
No se pueden habilitar redes aceleradas en una máquina virtual en ejecución. Puede habilitar las redes aceleradas en una máquina virtual admitida solo cuando la máquina virtual está detenida y desasignada.
No se pueden implementar máquinas virtuales (clásicas) con redes aceleradas a través de Azure Resource Manager.
La plataforma Azure no actualiza los controladores NIC o MANA de Mellanox en la máquina virtual. En el caso de las máquinas virtuales que ejecutan Linux y FreeBSD, debe mantenerse al día con las actualizaciones de kernel más recientes que ofrece la distribución. En el caso de las máquinas virtuales que ejecutan Windows, aplique controladores actualizados desde la página de soporte técnico de NVIDIA si encuentra algún problema con el controlador entregado con la imagen de Marketplace o aplicado a una imagen personalizada. Los controladores de MANA más recientes se pueden encontrar en la página de documentación de MANA en Windows.
Regiones soportadas
Las redes aceleradas están disponibles en todas las regiones globales de Azure y la nube de Azure Government.
Sistemas operativos admitidos
Las siguientes versiones de Windows admiten Redes aceleradas para todas las interfaces:
- Windows Server 2022
- Windows Server 2019
- Windows Server 2016
- Windows 11
Las siguientes distribuciones de Linux y FreeBSD de Azure Marketplace admiten redes aceleradas de forma predeterminada:
- Ubuntu 22.04 LTS
- Ubuntu 24.04 LTS
- Red Hat Enterprise Linux 8.8
- Red Hat Enterprise Linux 8.10
- Red Hat Enterprise Linux 9.2
- Red Hat Enterprise Linux 9.4
- Red Hat Enterprise Linux 9.6
- SUSE Linux Enterprise Server 15 SP4
- Rocky Linux (CIQ) 8.10 (todas las variantes)
- Rocky Linux (CIQ) 9.2+ (todas las variantes)
- Debian 12 "Bookworm"
- Oracle Linux 8.0 UEK R7
- Oracle Linux 9.0 UEK R7
Para los usuarios de distribuciones de Linux no aprobadas o mediante kernels personalizados, se recomienda el kernel de Linux 6.12 o posterior que se encuentra en kernel.org
Note
Las características más recientes de MANA están en desarrollo activo y los proveedores de distribución de Linux se asocian con Microsoft para actualizar sus kernels con cambios ascendentes. La cadencia de las actualizaciones varía según el proveedor de distribución. Cuanto más reciente sea la distribución y el kernel, más probable es que tenga las actualizaciones más recientes.
Instancias de máquina virtual admitidas
La mayoría de los tamaños de instancia de máquina virtual de uso general y optimizados para procesos de dos o más vCPU admiten redes aceleradas. En las instancias que admiten hyperthreading, las instancias de máquina virtual con cuatro o más vCPU admiten redes aceleradas.
Para comprobar si un tamaño de máquina virtual admite redes aceleradas, consulte Tamaños de máquinas virtuales en Azure.
Puede consultar directamente la lista de SKU de máquina virtual que admiten redes aceleradas mediante el comando az vm list-skus de la CLI de Azure:
az vm list-skus \
--location westus \
--all true \
--resource-type virtualMachines \
--query '[].{size:size, name:name, acceleratedNetworkingEnabled: capabilities[?name==`AcceleratedNetworkingEnabled`].value | [0]}' \
--output table
Note
Aunque los tamaños NC y NV aparecen en la salida del comando, esos tamaños no admiten redes aceleradas. La habilitación de redes aceleradas en máquinas virtuales NC o NV no tiene ningún efecto.
Imágenes de máquina virtual personalizadas
Si usa una imagen personalizada que admite redes aceleradas, asegúrese de cumplir los siguientes requisitos.
Compatibilidad con dispositivos y controladores
Cualquier imagen personalizada compatible con redes aceleradas debe incluir controladores que permitan la virtualización de E/S de raíz única para las tarjetas de interfaz de red (NIC) que se usan en las plataformas de Azure. Esta lista de hardware incluye NVIDIA ConnectX-3, ConnectX-4 Lx, ConnectX-5 y el adaptador de red de Microsoft Azure (MANA).
Enlace dinámico y revocación de la función virtual
Las redes aceleradas requieren que las imágenes del sistema operativo invitado controlen correctamente la función virtual que se elimina o agrega dinámicamente. Los escenarios como el mantenimiento del host o la migración en vivo provocarán la revocación dinámica de la función virtual y la restauración después del evento de mantenimiento. Además, las aplicaciones deben asegurarse de que se enlazan al dispositivo sintético y no a la función virtual para mantener la conectividad de red durante estos eventos.
Para más información sobre los requisitos de enlace de aplicaciones, consulte Funcionamiento de las redes aceleradas en máquinas virtuales Linux y FreeBSD.
Configuración de controladores para que no estén administrados
Las redes aceleradas requieren la configuración de los controladores NVIDIA como dispositivos no administrados en la configuración de red. Las imágenes que usan cloud-init versión 23.2 o posterior aplican automáticamente la configuración de red correcta para admitir redes aceleradas durante el aprovisionamiento. Se recomienda encarecidamente evitar las herramientas simultáneas de administración de interfaz de red (como ifupdown y networkd) en imágenes personalizadas y no ejecutar dhcpclient directamente en varias interfaces.
Asegúrese de que azure-vm-utils versión 0.6.0 o posterior está instalado.
Compruebe /usr/lib/udev/rules.d/10-azure-unmanaged-sriov.rules que existe.
Si no está disponible para la distribución, use una regla udev personalizada en /etc/udev/rules.d/10-azure-unmanaged-sriov.rules con el contenido:
# Azure VMs with accelerated networking may have MANA, mlx4, or mlx5 SR-IOV devices which are transparently bonded to a synthetic
# hv_netvsc device. Mark devices with the 0x800 bit set as unmanaged devices:
# AZURE_UNMANAGED_SRIOV=1 for 01-azure-unmanaged-sriov.network
# ID_NET_MANAGED_BY=unmanaged for systemd-networkd >= 255
# NM_UNMANAGED=1 for NetworkManager
#
# ATTR{flags}=="0x?[89ABCDEF]??" checks the 0x800 bit.
SUBSYSTEM=="net", ACTION!="remove", DRIVERS=="mana|mlx4_core|mlx5_core", ATTR{flags}=="0x?[89ABCDEF]??", ENV{AZURE_UNMANAGED_SRIOV}="1", ENV{ID_NET_MANAGED_BY}="unmanaged", ENV{NM_UNMANAGED}="1"
El tráfico de red usa la ruta de datos de redes aceleradas
Para controladores NVIDIA: compruebe que los paquetes fluyen a través de la interfaz VF
- de documentación de
Linux - documentación de Windows
Para el controlador MANA: compruebe que el tráfico fluye a través de MANA
- de documentación de
Linux - documentación de Windows