Neste documento, descrevemos como ativar a virtualização aninhada em uma instância de máquina virtual (VM) e como confirmar que é possível criar uma VM aninhada. Ative a virtualização aninhada em uma VM usando um dos seguintes métodos:
- Recomendado. Ative a virtualização aninhada diretamente em uma VM nova ou atual definindo o campo - enableNestedVirtualizationcomo- trueao criar a VM ou atualizando a VM. Esse é o método recomendado porque não exige que você crie uma imagem personalizada ou use a chave de licença especial.
- Ative a virtualização aninhada usando a chave de licença especial criando um disco de inicialização, criando uma imagem personalizada com a chave de licença de virtualização aninhada especial e criando uma VM que use a imagem personalizada. 
Antes de começar
- 
  
  Configure a autenticação, caso ainda não tenha feito isso.
  Com isso, você confirma sua identidade para acesso a serviços e APIs do Google Cloud . Para executar código ou exemplos em um ambiente de desenvolvimento local, faça a autenticação no Compute Engine com um destes métodos:
  
   
   
     
   
  
   
   
     
   
  
   
   
     
   
  
 
 
 
  
    
      Select the tab for how you plan to use the samples on this page: gcloud- 
 
 
  
  
   
   
  
   
   
  
   
   
     
   
  
  
   
   
  
   
   
  
   
   
  
 
 
   
   
      Instale a CLI do Google Cloud. Após a instalação, inicialize a CLI do Google Cloud executando o seguinte comando: gcloud initAo usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada. 
- Set a default region and zone.
 RESTPara usar as amostras da API REST desta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI. Instale a CLI do Google Cloud. Após a instalação, inicialize a CLI do Google Cloud executando o seguinte comando: gcloud initAo usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada. Saiba mais em Autenticar para usar REST na documentação de autenticação do Google Cloud . Ativar a virtualização aninhada diretamente em uma nova VMAtive a virtualização aninhada diretamente em uma VM usando o procedimento a seguir. gcloudCrie uma VM L1 com virtualização aninhada ativada usando o seguinte comando gcloud compute instances create:gcloud compute instances create VM_NAME \ --enable-nested-virtualization \ --zone=ZONE \ --min-cpu-platform="Intel Haswell" Substitua: - VM_NAME: o nome da nova VM L1 com a virtualização aninhada ativada.
- ZONE: a zona da nova VM L1 com a virtualização aninhada ativada
 RESTCrie uma VM L1 com virtualização aninhada ativada usando o seguinte método instances.insert:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { ... "name": "VM_NAME", ... "minCpuPlatform": "Intel Haswell", "advancedMachineFeatures": { "enableNestedVirtualization": true }, ... }Substitua: - PROJECT_ID: o ID do projeto;
- ZONE: a zona da nova VM L1 com a virtualização aninhada ativada
- VM_NAME: o nome da nova VM L1 com a virtualização aninhada ativada.
 Ativar a virtualização aninhada diretamente em uma VMAtive a virtualização aninhada em uma VM atual usando o seguinte procedimento: gcloud- Exporte as propriedades da VM usando o seguinte comando - gcloud compute instances export:- gcloud compute instances export VM_NAME \ --destination=YAML_FILE_PATH \ --zone=ZONE - Substitua: - VM_NAME: o nome da VM da qual as propriedades serão exportadas
- YAML_FILE_PATH: o caminho e o nome de um arquivo .yaml em que os dados de configuração exportados serão salvos
- ZONE: a zona que contém a VM.
 
- No arquivo de configuração da VM que foi salvo em FILE_PATH, atualize o valor de - enableNestedVirtualization. Se o valor não estiver no arquivo, adicione o seguinte:- advancedMachineFeatures: enableNestedVirtualization: true 
- Atualize a VM com o valor de - enableNestedVirtualizationusando o seguinte comando- gcloud compute instances update-from-file:- gcloud compute instances update-from-file VM_NAME \ --source=FILE_PATH \ --most-disruptive-allowed-action=RESTART \ --zone=ZONE - Substitua: - VM_NAME: o nome da VM a ser atualizada.
- FILE_PATH: o caminho para o arquivo de configuração da VM atualizado.
- ZONE: a zona que contém a VM a ser atualizada.
 
 RESTAtualize o valor de enableNestedVirtualizationusando o seguinte métodoinstances.update:PUT https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME?most_disruptive_allowed_action=RESTART { ⋮ "advanced_machine_features": { ⋮ "enableNestedVirtualization": "true" }, ⋮ }Substitua: - PROJECT_ID: o ID do projeto
- ZONE: a zona que contém a VM.
- VM_NAME: o nome da VM da qual exportar as propriedades
 Ativar a virtualização aninhada usando a chave de licença especialPara ativar a virtualização aninhada na VM, crie uma imagem personalizada com uma chave de licença especial que ativa VMX na VM L1. A chave de licença não gera cobrança adicional. - Crie um disco de inicialização a partir de uma imagem pública ou de uma imagem personalizada. O exemplo a seguir usa - debian-cloudpara o projeto de imagem e- debian-10para a família de imagens. Se você já tiver uma instância de VM com um disco atual, pule esta etapa.- gcloud- gcloud compute disks create DISK_NAME \ --zone=ZONE \ --image-project=debian-cloud \ --image-family=debian-10 - Substitua: - DISK_NAME: o nome do novo disco.
- ZONE: a zona em que o disco será criado
 - REST- POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks { ... "name": "DISK_NAME", "sourceImage": "projects/debian-cloud/global/images/family/debian-10", ... }- Substitua: - PROJECT_ID: o ID do projeto;
- ZONE: a zona em que o disco será criado
- DISK_NAME: o nome do novo disco.
 
- Crie uma imagem personalizada com a chave de licença especial necessária para a virtualização aninhada. - gcloud- gcloud compute images create IMAGE_NAME \ --source-disk DISK_NAME \ --source-disk-zone ZONE \ --licenses "https://www.googleapis.com/compute/v1/projects/vm-options/global/licenses/enable-vmx" - Substitua: - IMAGE_NAME: o nome da nova imagem
- DISK_NAME: o nome do disco criado anteriormente.
- ZONE: a zona em que a imagem será criada
 - REST- POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images { ... "licenses": ["projects/vm-options/global/licenses/enable-vmx"], "name": "IMAGE_NAME", "sourceDisk": "zones/ZONE/disks/DISK_NAME", ... }- Substitua: - PROJECT_ID: o ID do projeto;
- IMAGE_NAME: o nome da nova imagem
- ZONE: a zona em que a imagem será criada
- DISK_NAME: o nome do disco criado anteriormente.
 
- Se quiser, exclua o disco de origem depois de criar a imagem com a licença especial. - gcloud- gcloud compute disks delete DISK_NAME --zone=ZONE - Substitua: - DISK_NAME: o nome do disco que será excluído.
- ZONE: a zona que contém o disco a ser excluído.
 - REST- DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME - Substitua: - PROJECT_ID: o ID do projeto;
- ZONE: a zona que contém o disco a ser excluído.
- DISK_NAME: o nome do disco que será excluído.
 
- Crie uma VM que use a nova imagem com a licença especial. A plataforma mínima de CPU precisa ser - "Intel Haswell".- gcloud- gcloud compute instances create VM_NAME \ --zone=ZONE \ --min-cpu-platform "Intel Haswell" \ --image IMAGE_NAME- Substitua: - VM_NAME: O nome da VM.
- ZONE: a zona em que a VM será criada
- IMAGE_NAME: o nome da imagem criada anteriormente.
 - REST- POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { ... "name": "VM_NAME", "minCpuPlatform": "Intel Haswell", "disks": [ { "initializeParams": { "sourceImage": "IMAGE_NAME" } } ] ... }- Substitua: - PROJECT_ID: o ID do projeto;
- VM_NAME: O nome da VM.
- ZONE: a zona em que a VM será criada
- IMAGE_NAME: o nome da imagem criada anteriormente.
 
 Confirmar que a virtualização aninhada está ativada na VM- Conecte-se à instância de VM. - gcloud compute ssh VM_NAME - Substitua - VM_NAMEpelo nome da VM a ser conectada.
- Confirme se a virtualização aninhada está ativada. Qualquer resposta além de - 0confirma que a virtualização aninhada está ativada.- grep -cw vmx /proc/cpuinfo 
 A seguirExceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas. Última atualização 2025-10-19 UTC. -