Compartilhar via


Repare uma VM do Windows usando os comandos de reparo da Máquina Virtual do Azure

Aplica-se a: ✔️ VMs do Windows

Se sua máquina virtual (VM) do Windows no Azure encontrar um erro de inicialização ou disco, talvez seja necessário reparar o disco offline. Um exemplo comum seria uma atualização de aplicativo com falha que impede que a VM seja inicializada com êxito. Este artigo detalha como usar os comandos de reparo da VM do Azure para anexar automaticamente um disco do sistema operacional quebrado a outra VM do Windows para reparo offline. Por meio desse procedimento, o disco do SO com falha será desbloqueado automaticamente na segunda VM, chamada de VM de reparo, se o disco estiver criptografado com a Criptografia de Disco do Azure. Quando o disco com falha é anexado à VM de reparo, você pode corrigir quaisquer erros e recriar sua VM original com o disco reparado.

Importante

  • Os scripts neste artigo se aplicam apenas às VMs que usam Azure Resource Manager.
  • A conectividade de saída da VM (porta 443) é necessária para a execução do script.
  • Apenas um script pode ser executado por vez.
  • Um script em execução não pode ser cancelado.
  • O tempo máximo que um script pode ser executado é de 90 minutos, após o qual ele expirará.
  • Não modifique as tags criadas na VM de reparo. As tags são necessárias para que o comando de restauração funcione corretamente.
  • Para VMs usando Azure Disk Encryption, há suporte apenas para discos gerenciados criptografados com criptografia de passagem única (com ou sem KEK).

Visão geral do processo de reparo

Agora você pode usar os comandos de reparo da VM do Azure para alterar o disco do sistema operacional para uma VM e não precisa mais excluir e recriar a VM.

A seção Exemplo de processo de reparo o guiará pelo seguinte processo:

  1. Inicialize o Azure Cloud Shell.
  2. Execute az extension add ou az extension update.
  3. Execute az vm repair create.
  4. Execute az vm repair run ou execute etapas de mitigação.
  5. Execute az vm repair restore.

Observação

Para visualizar todos os comandos e parâmetros de reparação de VM disponíveis, consulte az vm repair.

Importante

Para executar os comandos, você precisa de uma função que possa criar os seguintes tipos de recursos na assinatura:

  • Grupos de recursos
  • Máquinas Virtuais
  • Marcas de recursos
  • Redes Virtuais
  • Grupos de segurança de rede
  • Interfaces de Rede
  • Discos
  • Endereços IP públicos (opcional)

Exemplo de processo de reparo

  1. Iniciar o Azure Cloud Shell

    O Azure Cloud Shell é um shell gratuito e interativo que poderá ser usado para executar as etapas deste artigo. Ele inclui ferramentas comuns do Azure pré-instaladas e configuradas para uso com sua conta. Se você executar um script que levará mais de 20 minutos (por exemplo: script win-sfc-sf-corruption), talvez prefira executar os comandos localmente. Para executar os comandos localmente, é necessária a versão 2.0.67 ou posterior da CLI do Azure. Execute az --version para encontrar a versão. Se você precisar instalar ou atualizar sua CLI do Azure, consulte Instalar a CLI do Azure.

    Para abrir o Cloud Shell, selecione Experimentar no canto superior direito de um bloco de código. Você também pode abrir o Cloud Shell em uma guia separada do navegador visitando https://shell.azure.com.

    Selecione Copiar para copiar os blocos de código, cole o código no Cloud Shell e selecione Enter para executá-lo.

    Se você preferir instalar e usar a CLI localmente, este início rápido requer a CLI do Azure versão 2.0.67 ou posterior. Execute az --version para encontrar a versão. Se você precisar instalar ou atualizar sua CLI do Azure, consulte Instalar a CLI do Azure.

    Se você precisar fazer logon no Cloud Shell com uma conta diferente da que está conectada no portal do Azure, poderá usar az login az login reference. Para alternar entre as assinaturas associadas à sua conta, você pode usar az account set --subscription az account set reference.

  2. Se esta for a primeira vez que você usa os comandos az vm repair, adicione a extensão CLI vm-repair.

    az extension add -n vm-repair
    

    Se você já usou os comandos az vm repair, aplique todas as atualizações à extensão vm-repair.

    az extension update -n vm-repair
    
  3. Execute az vm repair create. Este comando criará uma cópia do disco do sistema operacional para a VM não funcional, criará uma VM de reparo em um novo grupo de recursos e anexará a cópia do disco do sistema operacional. A VM de reparo terá o mesmo tamanho e região que a VM não funcional especificada. O grupo de recursos e o nome da VM usados em todas as etapas serão para a VM não funcional. Se sua VM estiver usando Azure Disk Encryption, use --unlock-encrypted-vm para desbloquear o disco criptografado para que fique acessível quando anexado à VM de reparo. Para obter mais informações, consulte confirme se o ADE está ativado no disco. Se você precisar solucionar problemas de sua VM em um ambiente Hyper-V aninhado, use--enable-nested e a VM de reparo será criada com a função Hyper-V habilitada junto com uma VM aninhada usando a cópia de disco do sistema operacional.

Importante

Os comandos executar e restaurar exigirão que todas as entradas sejam inseridas usando o mesmo caso usado no comando criar, anote ou consulte as tags na VM de reparo para ver o que foi usado.

Exemplo de reparação de VM

az vm repair create -g MyResourceGroup -n myVM --repair-username username --repair-password 'password!234' --verbose

Exemplo de reparação de VM com Nested Hyper-V

az vm repair create -g MyResourceGroup -n myVM --repair-username username --repair-password 'password!234' --enable-nested --verbose
  1. Execute az vm repair run. Este comando executará o script de reparo especificado no disco anexado por meio da VM de reparo. Se o guia de solução de problemas que você está usando especificou um run-id, use-o aqui. Caso contrário, use az vm repair list-scripts para ver os scripts de reparo disponíveis. O grupo de recursos e o nome da VM usados aqui são para a VM não funcional usada na etapa 3. Informações adicionais sobre os scripts de reparo podem ser encontradas na biblioteca de scripts de reparo.

    az vm repair run -g MyResourceGroup -n MyVM --run-on-repair --run-id win-hello-world --verbose
    

    Opcionalmente, você pode executar qualquer etapa de mitigação manual necessária usando a VM de reparo e, em seguida, prosseguir para a etapa 5.

  2. Execute az vm repair restore. Este comando trocará o disco reparado do sistema operacional pelo disco original do sistema operacional da VM. O grupo de recursos e o nome da VM usados aqui são para a VM não funcional usada na etapa 3.

    az vm repair restore -g MyResourceGroup -n MyVM --verbose
    

Verifique e habilite o diagnóstico de inicialização

O exemplo a seguir habilita a extensão de diagnóstico na VM chamada myVMDeployed no grupo de recursos chamado myResourceGroup:

CLI do Azure

az vm boot-diagnostics enable --name myVMDeployed --resource-group myResourceGroup --storage https://mystor.blob.core.windows.net/

Próximas etapas

Entre em contato conosco para obter ajuda

Se você tiver dúvidas ou precisar de ajuda, crie uma solicitação de suporte ou peça ajuda à comunidade de suporte do Azure. Você também pode enviar comentários sobre o produto para a comunidade de comentários do Azure.