Compartilhar via


VMs do Linux com o Adaptador de Rede do Microsoft Azure

Saiba como usar o MANA (Adaptador de Rede) do Microsoft Azure para melhorar o desempenho e a disponibilidade de VMs (máquinas virtuais) do Linux no Azure.

Para obter suporte do Windows, consulte VMs do Windows com o Adaptador de Rede do Microsoft Azure.

Para obter mais informações sobre o MANA, consulte Visão geral do Adaptador de Rede do Microsoft Azure.

Imagens do Azure Marketplace com suporte

Várias imagens do Linux do Azure Marketplace têm suporte interno para o driver Ethernet no MANA:

  • 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 as variantes)

  • Rocky Linux (CIQ) 9.2+ (todas as variantes)

  • Debian 12 "Book worm"

  • Oracle Linux 8.0 UEK R7

  • Oracle Linux 9.0 UEK R7

Observação

Os recursos mais recentes do MANA estão em desenvolvimento ativo e os fornecedores de distribuição do Linux fazem parceria com a Microsoft para atualizar seus kernels com alterações upstream. A cadência das atualizações varia de acordo com o fornecedor de distribuição. Quanto mais recente for a distribuição e o kernel, maior a probabilidade de ter as atualizações mais recentes.

Verificar o status do suporte do MANA

Como o conjunto de recursos do MANA requer tanto hardware de host quanto componentes de software de VM, você deve realizar as seguintes verificações para garantir que o MANA esteja funcionando corretamente em sua VM.

Verificação do portal do Azure

Verifique se a Rede Acelerada está habilitada em pelo menos uma de suas NICs:

  1. Na página do portal do Azure para a VM, selecione Rede no menu à esquerda.
  2. Na página Configurações de rede, para o Adaptador de Rede, selecione sua NIC.
  3. No painel Visão Geral da NIC, em Básicos, observe se a Rede Acelerada está definida como Habilitada ou Desabilitada.

Verificação do hardware

Ao habilitar a Rede Acelerada, você pode identificar a NIC do MANA subjacente como um dispositivo PCI na máquina virtual:

$ lspci
7870:00:00.0 Ethernet controller: Microsoft Corporation Device 00ba

Verificação de versão do kernel

Verifique se a VM tem um driver MANA Ethernet instalado:

$ grep /mana*.ko /lib/modules/$(uname -r)/modules.builtin || find /lib/modules/$(uname -r)/kernel -name mana*.ko*

kernel/drivers/net/ethernet/microsoft/mana/mana.ko

Atualize o kernel

Os drivers Ethernet para MANA são incluídos no kernel versão 5.15 e posterior. O Kernel versão 6.2 inclui suporte do Linux para recursos como InfiniBand/RDMA e DPDK. Versões anteriores ou bifurcadas do kernel (5.15 e 6.1) exigem suporte com backported.

Para atualizar o kernel linux da VM, verifique a documentação da distribuição específica.

Verifique se o tráfego está fluindo pelo MANA

Cada NIC virtual (vNIC) configurada para a VM, com Rede Acelerada habilitada, resulta em duas interfaces de rede na VM. O exemplo a seguir mostra eth0 e enP30832p0s0 em uma configuração de NIC única:

$ ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:22:48:71:c2:8c brd ff:ff:ff:ff:ff:ff
    alias Network Device
3: enP30832p0s0: <BROADCAST,MULTICAST,CHILD,UP,LOWER_UP> mtu 1500 qdisc mq master eth0 state UP mode DEFAULT group default qlen 1000
    link/ether 00:22:48:71:c2:8c brd ff:ff:ff:ff:ff:ff
    altname enP30832s1296119428

A interface eth0 é a porta primária atendida pelo driver do NetVSC (Cliente de Serviço Virtual de Rede) e a interface roteável para o vNIC. A interface enP* associada representa a VF (Função Virtual MANA) e está associada à interface eth0 nesse caso. Você pode obter o pacote e a contagem de bytes do VF MANA na interface roteável ethN:

$ ethtool -S eth0 | grep -E "^[ \t]+vf"
     vf_rx_packets: 226418
     vf_rx_bytes: 99557501
     vf_tx_packets: 300422
     vf_tx_bytes: 76231291
     vf_tx_dropped: 0

Próximas etapas