Compartilhar via


Solucionar problemas de implantação de VM na GPU do Azure Stack Edge Pro

APLICA-SE A: Sim, ao SKU do Pro GPUAzure Stack Edge Pro - GPUSim, ao SKU do Pro 2Azure Stack Edge Pro 2Sim, ao SKU do Pro RAzure Stack Edge Pro RSim, ao SKU do Mini RAzure Stack Edge Mini R

Este artigo descreve como solucionar erros comuns ao implantar máquinas virtuais em um dispositivo com GPU do Azure Stack Edge Pro. O artigo fornece diretrizes para investigar os problemas mais comuns que causam tempo limite e problemas de provisionamento de VM durante a criação do adaptador de rede e da VM.

Para diagnosticar qualquer falha de provisionamento de VM, examine os logs dos convidados da máquina virtual com falha. Para ver as etapas para coletar logs de convidado da VM e incluí-los em um pacote de suporte, consulte Coletar logs de convidado para VMs no Azure Stack Edge Pro.

Para obter diretrizes sobre os problemas que impedem o carregamento bem-sucedido da imagem da VM antes da implantação, confira Solucionar problemas de carregamento de imagem de máquina virtual na GPU do Azure Stack Edge Pro.

Tempo limite no provisionamento da VM

Esta seção fornece solução de problemas para as causas mais comuns de tempo limite no provisionamento da VM.

Quando o tempo limite é atingido no provisionamento da VM, você vai ver o seguinte erro:

Captura de tela do erro exibido no portal do Azure quando o provisionamento da VM atingir o tempo limite no Azure Stack Edge.

Os seguintes problemas são as principais causas de tempo limite no provisionamento de VM:

  • O endereço IP que você atribuiu à VM já está em uso. Saiba mais
  • A imagem da VM que você usou para na implantação não foi preparada corretamente. Saiba mais
  • O gateway padrão e o servidor DNS não foram alcançados da VM convidada. Saiba mais
  • Durante a instalação do cloud init, o cloud init não foi executado ou houve problemas durante a execução. (Somente para VMs do Linux) Saiba mais
  • Para uma VM do Linux implantada usando uma imagem de VM personalizada, os sinalizadores de provisionamento no arquivo /etc/waagent.conf não estão corretos. (Somente para VMs do Linux) Saiba mais
  • Adaptador de rede primário anexado a um comutador virtual habilitado para SRIOV. Saiba mais

O IP atribuído à VM já está em uso

Descrição do erro: foi atribuído à VM um endereço IP estático que já está em uso e o provisionamento falhou. Esse erro ocorre quando o endereço IP já está em uso na sub-rede na qual a VM é implantada. Ao implantar uma VM por meio do portal do Azure, o processo verifica se há um endereço IP existente em seu dispositivo, mas não pode verificar os endereços IP de outros serviços ou máquinas virtuais que possam estar na sua sub-rede.

Solução sugerida: use um endereço IP estático que não esteja em uso ou um endereço IP dinâmico fornecido pelo servidor DHCP.

Para verificar se há um endereço IP duplicado:

  • Execute os seguintes comandos ping e Test-NetConnection (tnc) de qualquer dispositivo na mesma rede:

    ping <IP address>
    tnc <IP address>
    tnc <IP address> -CommonTCPPort “RDP”
    

Se você receber uma resposta, o endereço IP atribuído à nova VM já está em uso.

Imagem da VM preparada incorretamente

Descrição do erro: para preparar uma imagem de VM para uso em uma GPU do Azure Stack Edge Pro, você deve seguir um fluxo de trabalho específico. Você deve criar uma máquina virtual gen1 no Azure, personalizar a VM, generalizar o VHD e baixar o VHD do sistema operacional para a máquina virtual. A imagem preparada deve ser um VHD gen1 com a extensão de nome de arquivo "vhd" e o tipo fixo.

Para uma visão geral dos requisitos, confira Criar imagens de VM personalizadas para uma GPU do Azure Stack Edge Pro. Para obter diretrizes sobre como resolver problemas de imagem de VM, confira Solucionar problemas de carregamento de imagem de máquina virtual na GPU do Azure Stack Edge Pro.

Solução sugerida: complete o fluxo de trabalho para preparar a imagem da sua VM. Para obter diretrizes, veja um dos seguintes artigos:

O gateway e o servidor DNS não foram alcançados da VM convidada

Descrição do erro: se o gateway padrão e o servidor DNS não forem alcançados durante a implantação da VM, o tempo de provisionamento da VM irá expirar e a implantação da VM falhará.

Solução sugerida: verifique se o gateway padrão e o servidor DNS foram alcançados da VM. Em seguida, repita a implantação da VM.

Para verificar se o gateway padrão e o servidor DNS podem ser alcançados da VM, siga as seguintes etapas:

  1. Conectar-se à VM.

  2. Execute os comandos a seguir:

    ping <default gateway IP address>
    ping <DNS server IP address>
    

    Para descobrir os endereços IP para o gateway padrão e os servidores DNS, acesse a IU local do seu dispositivo. Selecione a porta desejada e exiba as configurações de rede.

    Captura de tela da página Rede para um dispositivo Azure Stack Edge exibindo as Configurações de rede para a Porta 2.

Problemas de cloud init (VMs do Linux)

Descrição do erro: cloud init não foi executado ou houve problemas durante a execução de cloud init. cloud-init é usado para personalizar a VM do Linux quando ela é inicializada pela primeira vez. Para obter mais informações, confira suporte ao cloud-init em máquinas virtuais no Azure.

Soluções sugeridas: para encontrar problemas que ocorreram quando cloud init foi executado:

  1. Conectar-se à VM.

  2. Verificar se há erros de cloud init nos seguintes arquivos de log:

    • /var/log/cloud-init-output.log
    • /var/log/cloud-init.log
    • /var/log/waagent/log

Para verificar alguns dos problemas mais comuns que impedem a execução bem-sucedida do cloud init, siga estas etapas:

  1. Certifique-se de que a imagem da VM seja baseada em cloud init. Execute o comando a seguir:

    cloud-init --version

    O comando deve retornar o número de versão do cloud init. Se a imagem não for baseada em cloud init, o comando não vai retornar as informações de versão.

    Para obter ajuda com opções de cloud init, execute o seguinte comando:

    cloud-init --help

  2. Certifique-se de que a instância cloud init possa ser executada com sucesso com a fonte de dados definida como Azure.

    Quando a fonte de dados é definida como Azure, a entrada nos logs cloud init é semelhante à exibida a seguir.

    Ilustração de uma entrada de log cloud-init para uma imagem de VM com a fonte de dados definida como Azure. O texto de identificação está realçado.

    Se a fonte de dados não estiver definida como Azure, talvez seja necessário revisar o script cloud init. Para obter mais informações, confira Aprofundando-se em cloud-init.

Sinalizadores de provisionamento definidos incorretamente (VMs do Linux)

Descrição do erro: para implantar com sucesso uma VM do Linux no Azure, o provisionamento deve ser desabilitado na imagem e o provisionamento usando cloud init deve ser habilitado. Os sinalizadores de provisionamento que configuram esses valores estão configurados corretamente para imagens de VM padrão. Se você usar uma imagem de VM personalizada, verifique se elas estão corretas.

Solução sugerida: verifique se os sinalizadores de Provisionamento no arquivo /etc/waagent.conf têm os seguintes valores:

Funcionalidade Valor obrigatório
Habilitar o provisionamento Provisioning.Enabled=n
Depender do cloud-init para provisionar Provisioning.UseCloudInit=y

Adaptador de rede primário anexado a um comutador virtual habilitado para SRIOV

Descrição do erro: o adaptador de rede primário conectado a um único comutador virtual com suporte a virtualização de E/S raiz (SRIOV) fez com que o tráfego de rede ignorasse o Hyper-V, impedindo que o host recebesse solicitações DHCP da VM, resultando em um tempo limite de provisionamento.

Soluções sugeridas:

  • Conecte o adaptador de rede primário da VM a um comutador virtual sem habilitar a rede acelerada.

  • Em um dispositivo Azure Stack Edge Pro 1, os comutadores virtuais criados na Porta 1 até a Porta 4 não habilitam a rede acelerada. Na Porta 5 ou na Porta 6, os comutadores virtuais habilitam a rede acelerada por padrão.

  • Em um dispositivo Azure Stack Edge Pro 2, os comutadores virtuais criados na Porta 1 ou na Porta 2 não habilitam a rede acelerada. Na Porta 3 ou na Porta 4, os comutadores virtuais habilitam a rede acelerada por padrão.

Problemas de criação de adaptador de rede

Esta seção fornece diretrizes para problemas que causam falha na criação do adaptador de rede durante uma implantação de VM.

Tempo limite de criação de NIC

Descrição do erro: a criação do adaptador de rede na VM não foi concluída dentro do tempo limite permitido. Essa falha pode ser causada por problemas de servidor DHCP no ambiente.

Para verificar se o adaptador de rede foi criado com sucesso, siga estas etapas:

  1. No portal do Azure, acesse o recurso do Azure Stack Edge para o seu dispositivo (vá para Serviços de Borda>Máquinas virtuais). Em seguida, selecione Implantações e navegue até a implantação da VM.

  2. Se um adaptador de rede não foi criado com sucesso, você verá o erro a seguir.

    Captura de tela do erro exibido no portal do Azure quando a criação do adaptador de rede falha durante a implantação da VM em um dispositivo Azure Stack Edge.

Solução sugerida: crie a VM novamente e atribua a ela um endereço IP estático.

Problemas de criação de VM

Esta seção aborda os problemas comuns que ocorrem durante a criação da VM.

Falha na criação da VM

Descrição do erro: se você tiver uma imagem do Marketplace criada com o Azure Stack Edge anterior à versão 2403 e, em seguida, criar uma VM a partir da imagem do Marketplace existente, a criação da VM falhará porque o Azure Stack Edge 2407 alterou o caminho de download da imagem do Marketplace.

Solução sugerida: use as seguintes etapas para excluir a imagem do Marketplace existente e, em seguida, criar uma nova imagem do Marketplace do portal do Azure.

  1. No portal do Azure, exclua a imagem existente do Marketplace.

    1. Liste a ingestão e o trabalho de ingestão de BlobDownload para a imagem do Marketplace. Use estas etapas para Conectar-se ao Azure Resource Manager.

      Execute o script a seguir para listar trabalhos de ingestão:

      Especifique a ID da assinatura no seguinte Uri:

      $uri1 = "https://management.appliance nome.domínioDNS/subscriptions/sid/providers/Microsoft.AzureBridge/locations/DBELocal/ingestionJobs/?api-version=2022-03-01"

      Function Get-AzCachedAccessToken() 
      {
      $ErrorActionPreference = 'Stop' 
      $azureRmProfile = [Microsoft.Azure.Commands.Common.Authentication.Abstractions.AzureRmProfileProvider]::Instance.Profile 
      $currentAzureContext = Get-AzContext 
      $profileClient = New-Object Microsoft.Azure.Commands.ResourceManager.Common.RMProfileClient($azureRmProfile) 
      Write-Debug ("Getting access token for tenant" + $currentAzureContext.Subscription.TenantId) 
      $token = $profileClient.AcquireAccessToken($currentAzureContext.Subscription.TenantId) 
      $token.AccessToken 
      } 
      
      $token = Get-AzCachedAccessToken 
      $headers = @{Authorization = "Bearer $token"; "Content-Type" = "application/json" } 
      $v = Invoke-RestMethod -Method Get -Uri $uri1 -Headers $headers 
      v.value
      
    2. Localize o nome do trabalho de ingestão = Marketplace image sku name e tipo = BlobDownload.

      Exemplo: nome do trabalho de ingestão = Ubuntu-18-04 e tipo = BlobDownload.

      Captura de tela da sintaxe de exemplo para localizar o nome do trabalho de ingestão.

  2. Se o trabalho de ingestão for encontrado na Etapa 1, use as etapas a seguir para excluí-lo e excluir a imagem. Por exemplo, o nome do trabalho de ingestão no exemplo acima é ubuntu-18-04. Além disso, os nomes Subscription ID e Resource group podem ser encontrados no exemplo.

    $uri2 = "https://management.<appliance name>.<DNS domain>/subscriptions/sid/resourceGroups/rgname/providers/Microsoft.AzureBridge/locations/dbelocal/ingestionJobs/<ingestion job name>?api-version=2018-06-01" 
    
    Invoke-RestMethod -Method DELETE -Uri $uri2 -Headers $headers
    
  3. Siga as etapas para Criar uma nova imagem de VM do Azure Marketplace.

Não há memória suficiente para criar a VM

Descrição do erro: quando a criação da VM falhar devido à memória insuficiente, você vai ver o erro a seguir.

Captura de tela do erro exibido no portal do Azure quando a criação da VM falha em um dispositivo Azure Stack Edge.

Solução sugerida: verifique a memória disponível no dispositivo e escolha o tamanho da VM apropriado. Para obter mais informações, confira Tamanhos de máquinas virtuais com suporte no Azure Stack Edge.

A memória disponível para a implantação de uma VM é restrita por vários fatores:

Soluções sugeridas:

  • Use um tamanho de VM que exija menos memória.
  • Pare todas as VMs que não estiverem em uso no portal antes de implantar a nova VM.
  • Exclua as VMs que não estiverem em uso.

Número insuficiente de GPUs para criar a VM de GPU

Se você tentar implantar uma VM em um dispositivo de GPU que já tenha o Kubernetes habilitado, nenhuma GPU estará disponível e o provisionamento da VM vai falhar com o seguinte erro:

Captura de tela do erro exibido no portal do Azure quando a criação de uma VM com GPU falha porque não há GPUs disponíveis em um dispositivo Azure Stack Edge.

Possíveis causas: se o Kubernetes estiver habilitado antes da criação da VM, ele usará todas as GPUs disponíveis e você não poderá criar VMs com tamanho de GPU. Você pode criar a quantidade de VMs de tamanho de GPU de acordo com o número de GPUs disponíveis. Seu dispositivo do Azure Stack Edge pode ser equipado com 1 ou 2 GPUs.

Solução sugerida: para opções de implantação de VM em um dispositivo com uma ou duas GPUs com o Kubernetes configurado, confira VMs e Kubernetes de GPU.

Próximas etapas