Visão geral da rede acelerada
Cuidado
Este artigo faz referência ao CentOS, uma distribuição Linux que está em status de fim do serviço (EOL). Considere seu uso e planeje adequadamente. Para obter mais informações, veja as Diretrizes sobre fim da vida útil do CentOS.
Este artigo descreve os benefícios, as restrições e as configurações com suporte da Rede Acelerada. A Rede Acelerada permite a virtualização de E/S de raiz única (SR-IOV) em tipos de VMs (máquina virtual) com suporte, melhorando consideravelmente o desempenho da rede. Esse caminho de dados de alto desempenho ignora o host, o que reduz a latência, a tremulação e a utilização da CPU para as cargas de trabalho de rede mais exigentes.
Observação
Para obter mais informações sobre a versão preliminar do Adaptador de Rede do Microsoft Azure (MANA), consulte a Documentação do Azure MANA
O diagrama a seguir ilustra como duas VMs se comunicam com e sem a Rede Acelerada.
Sem Rede Acelerada , todo o tráfego de rede que entra e sai da VM atravessa o host e o comutador virtual. O comutador virtual fornece toda a aplicação de políticas ao tráfego de rede. As políticas incluem grupos de segurança de rede, listas de controle de acesso, isolamento e outros serviços virtualizados de rede.
Com a Rede Acelerada, o tráfego de rede que chega à interface de rede (NIC) da VM é encaminhado diretamente para a VM. A Rede Acelerada descarrega todas as políticas de rede que o comutador virtual aplicou e as aplica no hardware. Como o hardware aplica políticas, a NIC pode encaminhar o tráfego de rede diretamente para a VM. A NIC ignora o host e o comutador virtual, enquanto mantém todas as políticas aplicadas no host.
Benefícios
A Rede Acelerada tem os benefícios a seguir:
Menor latência e maior número de pacotes por segundo. A remoção do comutador virtual do caminho de dados elimina o tempo que os pacotes passam no host para o processamento da política. Ele também aumenta o número de pacotes que a VM pode processar.
Tremulação reduzida. O tempo de processamento do comutador virtual depende da quantidade de política a ser aplicada e da carga de trabalho da CPU que faz o processamento. O descarregamento da imposição de políticas para o hardware remove essa variabilidade entregando pacotes diretamente à VM. O descarregamento também remove a comunicação de host para VM, todas as interrupções de software e todas as alternâncias de contexto.
Utilização de CPU reduzida. ignorar o comutador virtual no host resulta em menor utilização da CPU para processar o tráfego de rede.
Limitações e restrições
Os benefícios da Rede Acelerada se aplicam somente à VM que a habilita.
Para obter melhores resultados, habilite a Rede Acelerada em pelo menos duas VMs na mesma rede virtual do Azure. Esse recurso exerce um impacto mínimo sobre a latência quando você se comunica nas diversas redes virtuais ou se conecta no local.
Não é possível habilitar a Rede Acelerada em uma VM em execução. A Rede Acelerada em uma VM suportada só pode ser habilitada quando a VM for interrompida e desalocada.
Não é possível implantar máquinas virtuais (clássicas) com a Rede Acelerada através do Azure Resource Manager.
A plataforma do Azure não atualiza os drivers de NIC Mellanox na VM. Para VMs que executam Linux e FreeBSD, os clientes são incentivados a permanecer atualizados com as atualizações de kernel mais recentes oferecidas pela distribuição. Para VMs que executam o Windows, os clientes devem aplicar drivers atualizados da página de suporte da Nvidia se algum problema for encontrado posteriormente com o driver entregue com a imagem do Marketplace ou aplicado a uma imagem personalizada.
Regiões com suporte
A Rede Acelerada está disponível em todas as regiões globais do Azure e na Nuvem do Azure Governamental.
Sistemas operacionais com suporte
As versões do Windows a seguir dão suporte à Rede Acelerada:
- Windows Server 2022
- Windows Server 2019 Standard/Datacenter
- Windows Server 2016 Standard/Datacenter
- Windows Server 2012 R2 Standard/Datacenter
- Windows 10, versão 21H2 ou posterior, incluindo o Windows 10 Enterprise multisessão
- Windows 11, incluindo o Windows 11 Enterprise multisession
As seguintes distribuições Linux e FreeBSD do Azure Marketplace dão suporte à Rede Acelerada pronta para uso:
- Ubuntu 14.04 com o kernel linux-azure
- Ubuntu 16.04 ou posterior
- SLES12 SP3 ou posterior
- RHEL 7.4 ou posterior
- CentOS 7.4 ou posterior
- CoreOS Linux
- Debian "Stretch" com kernel de portas traseiras
- Debian "Buster" ou posterior
- Oracle Linux 7.4 e posterior com Kernel Compatível com Red Hat (RHCK)
- Oracle Linux 7.5 e posterior com UEK versão 5
- FreeBSD 10.4, 11.1, 12.0 & 12.0 ou posterior
Instâncias de VM compatíveis
A maioria dos tamanhos de instâncias de VMs de uso geral e otimizadas para computação com duas ou mais vCPUs dá suporte à Rede Acelerada. Em instâncias que suportam hyperthreading, instâncias de VM com quatro ou mais vCPUs dão suporte à Rede Acelerada.
Para verificar se um tamanho de VM dá suporte à Rede Acelerada, confira Tamanhos para máquinas virtuais no Azure.
Você pode consultar diretamente a lista de SKUs de VMs que dão suporte à Rede Acelerada usando o comando az vm list-skus da CLI do 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
Observação
Embora os tamanhos NC e NV apareçam na saída do comando, esses tamanhos não dão suporte à Rede Acelerada. Habilitar a Rede Acelerada em VMs NC ou NV não tem efeito.
Imagens de VM personalizadas
Se você usar uma imagem personalizada que dá suporte à Rede Acelerada, certifique-se de atender aos seguintes requisitos.
Suporte ao dispositivo e driver
Qualquer imagem personalizada que dê suporte à Rede Acelerada deve incluir drivers que habilitem a Virtualização de E/S de Raiz Única para os cartões de interface de rede (NIC) usados nas plataformas Azure. Essa lista de hardware inclui o NVIDIA ConnectX-3, ConnectX-4 Lx, ConnectX-5 e o Adaptador de Rede do Microsoft Azure (MANA).
Associação dinâmica e revogação da função virtual
A Rede Acelerada requer que as imagens do SO convidado lidem corretamente com a função virtual sendo removida ou adicionada dinamicamente. Cenários como manutenção do host ou migração dinâmica resultarão na revogação dinâmica da função virtual e restauração após o evento de manutenção. Além disso, os aplicativos devem garantir que se associem ao dispositivo sintético e não à função virtual para manter a conectividade de rede durante esses eventos.
Para obter mais detalhes sobre os requisitos de associação de aplicativos, confira Como a Rede Acelerada funciona em VMs Linux e FreeBSD.
Configurar drivers para serem não gerenciados
A Rede Acelerada requer configurações de rede que marquem os drivers NVIDIA como dispositivos não gerenciados. As imagens com a versão 19.4 ou posterior de cloud-init têm a rede configurada corretamente para dar suporte à Rede Acelerada durante o provisionamento. É altamente recomendável que você não execute softwares de interface de rede concorrentes (como ifupdown e networkd) em imagens personalizadas e que não execute o dhcpclient diretamente em várias interfaces.
O exemplo a seguir mostra um exemplo de configuração suspensa para NetworkManager
no RHEL ou no CentOS:
sudo cat <<EOF > /etc/udev/rules.d/68-azure-sriov-nm-unmanaged.rules
# Accelerated Networking on Azure exposes a new SRIOV interface to the VM.
# This interface is transparentlybonded to the synthetic interface,
# so NetworkManager should just ignore any SRIOV interfaces.
SUBSYSTEM=="net", DRIVERS=="hv_pci", ACTION!="remove", ENV{NM_UNMANAGED}="1"
EOF
O tráfego de rede usa o caminho de dados da Rede Acelerada
Para drivers NVIDIA: Verifique se os pacotes estão fluindo pela interface VF
Para driver MANA: Verifique se o tráfego está fluindo através do MANA