Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Central de ajuda/ Elastic Cloud Server/ Guia de usuário/ As NIC/ Ativação de NIC Multi-Filas
Atualizado em 2022-11-18 GMT+08:00

Ativação de NIC Multi-Filas

Cenários

O desempenho da CPU de núcleo único não pode atender aos requisitos de processamento de interrupções de NIC incorridas com o aumento da largura de banda de E/S da rede. A multifila NIC permite que as várias CPU processem interrupções de NIC de ECS, melhorando assim o desempenho de PPS e E/S.

O ECS descrito nesta seção é assumido em conformidade com os requisitos sobre especificações e tipo de virtualização.

Depois que a fila múltipla da NIC estiver ativada em um ECS, você precisará ativar essa função no ECS novamente depois de adicionar ou excluir uma NIC ou alterar a VPC do ECS. Para mais detalhes, consulte Executando o script para configurar várias filas de NIC.

Suporte de NIC Multi-Fila

A multifila NIC pode ser ativada em um ECS somente quando as especificações do ECS, o tipo de virtualização e o sistema operacional de imagem atendem aos requisitos descritos nesta seção.

  • Para obter detalhes sobre as especificações do ECS que suportam múltiplas filas NIC, consulte Tipos de ECS.

    Se o número de filas NIC for maior que 1, há suporte para várias filas NIC.

  • O tipo de virtualização deve ser KVM.
  • As imagens públicas do Linux listadas na Tabela 2 multi-fila NIC de suporte.
    • O driver PV de um ECS de Windows ajusta dinamicamente o número de filas NIC com base no número das vCPU do ECS, e você não precisa definir o número de multifilas NIC do Windows.
    • Imagens públicas que contêm o Windows Server 2008 não estão mais disponíveis. No entanto, você ainda pode usar imagens privadas que contenham o Windows Server 2008.
    • É uma boa prática atualizar a versão do kernel de ECS de Linux para a versão 2.6.35 ou posterior. Caso contrário, a multifila NIC não é suportada.

      Execute o comando uname -r para obter a versão do kernel. Se a versão do kernel for anterior à 2.6.35, entre em contato com o atendimento ao cliente para atualizar o kernel.

Tabela 1 Suporte de multi-fila NIC para os ECS de Windows

imagem

Suporte de NIC Multi-Fila

NIC Multi-fila ativada por padrão

Windows Server 2008 R2 Standard/Enterprise/DataCenter 64bit

Sim

Sim

Windows Server 2008 empresa SP2 64bit

Sim

Sim

Windows Server 2008 Web R2 64-bit

Sim

Sim

Windows Server 2008 R2 Enterprise 64bit_WithGPUdriver

Sim

Sim

Padrão R2 64bit_WithGPUdriver do servidor 2012 de Windows

Sim

Sim

Padrão de Windows Server 2012 R2/DataCenter 64 bocados

Sim

Sim

Padrão de Windows Server 2016/DataCenter 64 bocados

Sim

Sim

DataCenter do servidor 2019 do Windows 64 bocados

Sim

Sim

Tabela 2 Suporte de NIC multi-fila para os ECS de Linux

imagem

Suporte de NIC Multi-Fila

NIC Multi-fila ativada por padrão

Ubuntu 14.04/16.04/18.04/20.04 servidor 64bit

Sim

Sim

OpenSUSE 42.2/15.* 64bit

Sim

Sim

SUSE Enterprise 12 SP1/SP2 64 bits

Sim

Sim

CentOS 6.8/6.9/7.*/8.* 64bit

Sim

Sim

Debian 8.0.0/8.8.0/8.9.0/9.0.0/10.0.0/10.2.0 64bit

Sim

Sim

Fedora 24/25/30 64bit

Sim

Sim

EulerOS 2.2/2.3/2.5 64bit

Sim

Sim

Importando o arquivo de imagem externo para o console do IMS

Para obter detalhes, consulte "Registrar um arquivo de imagem como uma imagem privada" no Guia do Usuário do Image Management Service. Depois que o arquivo de imagem for importado, visualize o valor de NIC Multi-Queue na página que fornece detalhes sobre a imagem.

Configurando a multifila NIC para a imagem

Os sistemas operacionais Windows não ofereceram suporte comercial à multifila NIC. Se você ativar a multifila NIC em uma imagem do Windows, o início de um ECS criado usando essa imagem poderá ser lento.

Use um dos seguintes métodos para definir o atributo multi-fila NIC:

Method 1:
  1. Acesse o console de gerenciamento.
  2. Clicar em . Em Compute, clique em Serviço de gerenciamento de imagens.
  3. Clique na guia Private Images, localize a linha que contém a imagem de destino e clique em Modify na coluna Operation.
  4. Defina o atributo NIC multi-fila da imagem.
Method 2:
  1. Acesse o console de gerenciamento.
  2. Clicar em . Em Compute, clique em Serviço de gerenciamento de imagens.
  3. Clique na guia Private Images. Na lista de imagens, clique no nome da imagem de destino para alternar para a página que fornece detalhes sobre a imagem.
  4. Clique em Modify no canto superior direito. Na caixa de diálogo Modify Image exibida, defina o atributo de várias filas da NIC.

Method 3: Adicione hw_vif_multiqueue_enabled a uma imagem por meio da API.

  1. Para obter instruções sobre como obter o token, consulte Autenticação.
  2. Para obter instruções sobre como chamar uma API para atualizar informações de imagem, consulte Atualizando informações de imagem (API OpenStack nativa).
  3. Adicione X-Auth-Token ao cabeçalho da solicitação.

    O valor de X-Auth-Token é o token obtido na etapa 1.

  4. Adicione Content-Type ao cabeçalho da solicitação.

    O valor de Content-Type é application/openstack-images-v2.1-json-patch.

    O URI da solicitação está no seguinte formato:

    PATCH /v2/images/{image_id}

    O corpo da solicitação é o seguinte:
    [       
             { 
              "op":"add",
              "path":"/hw_vif_multiqueue_enabled", 
              "value": "true" 
             } 
     ]

    Figura 1 mostra um exemplo de corpo de solicitação para modificar o atributo multi-fila NIC.

    Figura 1 Exemplo de corpo de solicitação

Criando uma ECS Usando uma Imagem Privada

Crie um ECS usando uma imagem privada registrada. Observe o seguinte ao configurar os parâmetros:
  • Region: Selecione a região onde a imagem privada está localizada.
  • Image: Selecione Private image e, em seguida, a imagem desejada na lista suspensa.

Executando o script para configurar várias filas de NIC

O driver PV de um ECS de Windows ajusta dinamicamente o número de filas NIC com base no número das vCPU do ECS, e você não precisa definir o número de multifilas NIC do Windows.

Um script para ativar automaticamente NIC multi-fila em um Linux ECS está disponível. Depois que o script é configurado, a ECS suporta NIC multi-fila.

  1. Baixe o script de configuração multi-queue-hw.

    URL em https://ecs-instance-driver.obs.cn-north-1.myhuaweicloud.com/multi-queue-hw

  2. Execute o seguinte comando para atribuir permissões de execução ao script:

    chmod +x multi-queue-hw

  3. Execute o seguinte comando para mover o script multi-queue-hw para o diretório /etc/init.d:

    mv multi-queue-hw /etc/init.d

  4. Run the following command to run the script:

    /etc/init.d/multi-queue-hw start

    O script entra em vigor imediatamente após ser executado. No entanto, depois que o ECS é interrompido, a multifila NIC é desativada automaticamente.

  5. Adicione a configuração de inicialização para cada SO para que a multifila NIC seja ativada automaticamente na inicialização do ECS.
    • Para CentOS, Red Hat, Fedora, EulerOS, SUSE e OpenSUSE, execute o seguinte comando:

      chkconfig multi-queue-hw on

    • Para o Ubuntu, execute o seguinte comando:

      update-rc.d multi-queue-hw defaults 90 10

    • Para o Debian, execute o seguinte comando:

      systemctl enable multi-queue-hw

Exibindo o número de filas da NIC

A multifila NIC foi habilitada.
  1. Efetue login no ECS.
  2. Execute o comando a seguir para obter o número de filas suportadas pela NIC e o número de filas com várias filas da NIC habilitadas:

    ethtool -l NIC

Exemplo:

[root@localhost ~]# ethtool -l eth0  #View the number of queues used by NIC eth0.
Channel parameters for eth0:
Pre-set maximums:
RX:               0
TX:               0
Other:                  0
Combined: 4  #Indicates that a maximum of four queues can be enabled for the NIC.
Current hardware settings:
RX:               0
TX:               0
Other:                  0
Combined: 1 #Indicates that four queues have been enabled.