Partilhar via


VMs Linux com o Adaptador de Rede do Microsoft Azure

Saiba como usar o Microsoft Azure Network Adapter (MANA) para melhorar o desempenho e a disponibilidade de máquinas virtuais (VMs) 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.

Importante

MANA está atualmente em pré-visualização. Para obter os termos legais que se aplicam aos recursos do Azure que estão em versão beta, em visualização ou ainda não lançados em disponibilidade geral, consulte os Termos de Uso Suplementares para Visualizações do Microsoft Azure.

Imagens suportadas do Azure Marketplace

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

  • Ubuntu 20.04 LTS
  • Ubuntu 22.04 LTS
  • Red Hat Enterprise Linux 8.8
  • Red Hat Enterprise Linux 9.2
  • SUSE Linux Enterprise Server 15 SP4
  • Debian 12 "Bookworm"
  • Oracle Linux 9.0

Nota

Nenhuma das distribuições Linux atuais no Azure Marketplace está em um kernel 6.2 ou posterior, o que é necessário para RDMA/InfiniBand e DPDK (Data Plane Development Kit). Se você usar uma imagem existente do Linux do Azure Marketplace, precisará atualizar o kernel.

Verifique o status do suporte MANA

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

Verificação do portal do Azure

Certifique-se de que a Rede Acelerada esteja 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 Interface de rede, selecione sua NIC.
  3. No painel Visão Geral da NIC, em Essenciais, observe se a Rede Acelerada está definida como Habilitada ou Desabilitada.

Verificação de hardware

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

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

Verificação da versão do kernel

Verifique se sua 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 estão incluídos na versão 5.15 e posterior do kernel. A versão 6.2 do kernel inclui suporte Linux para recursos como InfiniBand/RDMA e DPDK. Versões anteriores ou bifurcadas do kernel (5.15 e 6.1) requerem suporte backported.

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

Verifique se o tráfego está fluindo através do MANA

Cada NIC virtual (vNIC) configurada para a VM, com a 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 eth0 interface é a porta primária atendida pelo driver NetVSC (Network Virtual Service Client) e a interface roteável para a vNIC. A interface associada enP* representa a função virtual MANA (VF) e está ligada à eth0 interface neste caso. Você pode obter a contagem de pacotes e bytes do MANA VF a partir da 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óximos passos