Introdução
Este documento descreve como configurar e solucionar problemas do VMQ para Windows Server 2019 em servidores C Series com VIC 1400.
Pré-requisitos
Requisitos
Não existem requisitos específicos para este documento.
Componentes Utilizados
As informações neste documento são baseadas nestas versões de software e hardware:
- UCS C220M6
- VIC 1467
- CIMC 4.2(2a)
- Windows Server 2019
- Driver NENIC 5.11.14.1
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
Configurar
CIMC
No Cisco Integrated Management Controller (CIMC), comece navegando para Networking > Adapter Card MLOM (1) > vNICs (2) e selecione a placa de interface de rede virtual (vNIC) que deseja configurar (3).
Usar o CIMC para localizar vNICS
Uma vez aqui, verifique se a caixa Enable VMQ está marcada (4).
Ativar VMQ a partir do vNIC
A próxima é a definição da estrutura da fila. A estrutura da fila é composta por quatro componentes principais da perspectiva do CIMC: interrupção de Ethernet, fila de recebimento de Ethernet (fila Rx), fila de transmissão de Ethernet (fila Tx) e fila de conclusão (CQ).
Este é o white paper da série VIC 1400 que descreve o cálculo das estruturas de fila. Recomenda-se ler todo esse texto para entender melhor como esses cálculos são feitos.
White paper sobre as práticas recomendadas do Cisco UCS VIC 1400 Series em malha Ethernet
No entanto, os parâmetros são a conclusão mais importante:
● fila TX = Sub vNIC ou vPort
● fila RX = 8 * (Fila Tx)
● CQ = TX + RX
Interrupção ● = Máximo de (fila RX ou pelo menos 2xCPU+ 4)
Há um valor que não é calculado e que deve ser decidido antes de percorrer os cálculos. Isso é o Sub vNIC ou vPorts. Para este laboratório, 4 Máquinas Virtuais são usadas, o que corresponde a 4vPorts. Portanto:
● fila TX = 4
● fila RX = 8 * (4) = 32
● CQ = 4 + 32 = 36
● Interrupção = Máx de (32 ou pelo menos 2x2+ 4 = 8
(32 é usado porque é maior que 8 )
Depois de obter os parâmetros de fila dos cálculos, role para baixo na página vNIC e insira o valor de Interrupção no campo Interrupção Ethernet (1), o valor da Fila RX no campo Fila de Recebimento Ethernet (2), Fila de Transmissão Ethernet (3) e Fila de Conclusão (4).
Essa é a parte mais importante da configuração de várias filas da máquina virtual (VMQ), pois se a estrutura da fila for calculada incorretamente, a VMQ não funcionará no Windows.
Observação: se estiver usando um vSwitch com NICs agrupadas no Windows, você DEVERÁ configurar todos os vNICs de forma idêntica no CIMC.
Windows
No Windows Server, você precisa verificar se a VMQ está habilitada nas máquinas virtuais desejadas. A VMQ é habilitada por padrão na maioria dos casos, mas você deve verificar.
Para garantir que o VMQ esteja habilitado, pressione a tecla Windows e procure Hyper-V Manager.
Quando estiver no Gerenciador Hyper-V, clique em seu host local no lado esquerdo (1) e clique com o botão direito na máquina virtual (2) na qual você deseja verificar se o VMQ está habilitado e clique em Configurações (3).
Em Configurações, navegue até Adaptador de rede e expanda-o (1). Depois de expandir, clique em Aceleração de hardware (2). Por fim, verifique se a caixa Enable Virtual Machine Queue está marcada (3).
Enquanto estiver aqui, você também precisa verificar se Habilitar SR-IOV NÃO está marcado (4).
Em seguida, verifique se o Microsoft Windows Platform Filtering está desabilitado no Comutador Virtual em uso. Para fazer isso, navegue até o Gerenciador Hyper-V e clique em Gerenciador do Comutador Virtual (1).
A partir daí, expanda o switch (1) que você está usando e clique em Extensions (2). Em seguida, desmarque Microsoft Windows Platform Filtering (3).
Desabilitar Plataforma de Filtragem do Microsoft Windows
Observação: se estiver usando um vSwitch com NICs agrupadas no Windows, você DEVERÁ configurar todos os vNICs de forma idêntica no CIMC.
Além disso, certifique-se de que o Receive Side Scaling (RSS) esteja habilitado para cada interface na qual você deseja habilitar a VMQ. Para fazer isso, pressione a tecla Windows e procure Gerenciador de dispositivos.
No gerenciador de dispositivos, localize Adaptadores de rede (1) e selecione as Propriedades (2) das Interfaces nas quais você deseja habilitar a VMQ.
Navegue até Advanced (1), role para baixo para localizar Receive Side Scaling (2) e verifique se ele está Enabled (3).
Verificar
CIMC
Não há verificação que possa ser feita da perspectiva do CIMC.
Windows
O primeiro lugar para verificar se o VMQ está ativo é no Windows dentro do gerenciador Hyper-V.
Abra o Hyper-V Manage e clique na máquina virtual que deseja verificar. Em seguida, clique em Networking (Rede) (1) na parte inferior. Abaixo de Status (2), é possível observar OK (VMQ Ativo).
Verifique se o VMQ está ativo no Windows
Se você vir apenas OK em status e não OK (VMQ ativo), o VMQ não foi configurado com êxito e não está funcionando.
O próximo local para verificar se a VMQ está ativa é no Powershell. Pressione a tecla Windows e procure Powershell, depois execute estes comandos:
Get-NetAdapterVmqQueue
Get-vm | get-vmnetworkadapter | selecione vmname, vmqusage
Verifique se o VMQ está ativo através do Powershell
Há duas coisas a serem procuradas nas saídas. Primeiro, verifique se várias filas estão sendo usadas em QueueID (1). Quando você vê IDs de fila de 1 e 2, isso significa que o VMQ está funcionando.
Segundo, verifique se VmqUsage (2) é maior que 0. Contanto que o valor seja maior que 0, isso significa que a VMQ está em uso.
Troubleshooting
Windows
Primeiro, verifique se o CIMC está apresentando a VMQ ao Windows Server. Pressione a tecla Windows e procure Powershell, depois digite este comando:
Get-NetAdapterVmq
Em seguida, marque a coluna Enabled . Se a VMQ estiver aparecendo como desativada, significa que ela não está ativada no nível do hardware. Navegue até a configuração vNIC no CIMC e verifique se VMQ está habilitado.
Se a VMQ aparecer habilitada, mas na guia Rede do Gerenciador Hyper-V, você vir um Status de OK, é provável que os Parâmetros da Fila VMQ tenham sido configurados incorretamente. Execute os cálculos novamente e atualize seus parâmetros.
VMQ Inativo no Windows
Este é um exemplo de uma configuração de fila VMQ incorreta. (Ainda baseado em 4 VMs):
Aqui estão os problemas com esta configuração:
● fila TX = 4 Iniciando com um número correto
● fila RX = 8 * (4) != 4 Cálculo incorreto
● CQ = 4 + 4 = 8 Enquanto a matemática verifica, lixo entra/lixo sai. Devido ao cálculo incorreto da fila RX, o valor CQ está incorreto.
● Interrupt = Max of (RX queue ou pelo menos 2xCPU+ 4) O valor digitado de 16 não é igual à fila RX ou (2x2cpus +4).
Para corrigir isso, você corrigiria o cálculo da Fila RX, que seria 32. As contagens de CQ e de interrupção corretas podem ser calculadas.
Conclusão
Configurar corretamente a VMQ pode ser frustrante e difícil. É fundamental garantir que a estrutura da Fila VMQ esteja configurada corretamente no CIMC.