Use uma imagem da máquina para armazenar todos os metadados, dados, configurações e autorizações de um ou mais discos para uma instância de VM em execução no Compute Engine. Para obter informações sobre quando e como usar imagens de máquinas, consulte o artigo Imagens de máquinas.
Este documento descreve os passos para importar uma imagem da máquina a partir de um dispositivo virtual.
Antes de começar
- Se o projeto no qual quer importar a imagem da máquina tiver uma
política de imagens fidedignas
definida, adicione
projects/compute-image-import
eprojects/compute-image-tools
à lista de autorizações de publicadores. - Se estiver a importar um dispositivo virtual de um projeto diferente, consulte o artigo Importar entre projetos.
- Reveja os requisitos de ficheiros OVF e VMs de origem no guia de importação de dispositivos virtuais do Compute Engine.
- Para saber como cumprir os requisitos antes de importar imagens de máquinas, consulte os Pré-requisitos para importar e exportar imagens de VMs.
-
Se ainda não o tiver feito, configure a autenticação.
A autenticação valida a sua identidade para aceder a Google Cloud serviços e APIs. Para executar código ou exemplos a partir de um ambiente de desenvolvimento local, pode autenticar-se no Compute Engine selecionando uma das seguintes opções:
Select the tab for how you plan to use the samples on this page:
gcloud
-
Instale a CLI Google Cloud. Após a instalação, inicialize a CLI gcloud executando o seguinte comando:
gcloud init
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
- Set a default region and zone.
REST
Para usar os exemplos da API REST nesta página num ambiente de desenvolvimento local, usa as credenciais que fornece à CLI gcloud.
Instale a CLI Google Cloud. Após a instalação, inicialize a CLI gcloud executando o seguinte comando:
gcloud init
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
Para mais informações, consulte o artigo Autenticar para usar REST na Google Cloud documentação de autenticação.
Limitações e restrições
- Pode partilhar uma imagem de máquina entre projetos. No entanto, as redes de VPC partilhadas não são suportadas.
- Esta funcionalidade não é suportada para projetos protegidos com os VPC Service Controls.
- Não é possível criar imagens de máquinas a partir de VMs de origem com mais de 200 TB de discos anexados.
Sistemas operativos compatíveis
Para ver o apoio técnico a sistemas operativos, consulte os detalhes do sistema operativo.
Importe imagens de máquinas
Pode importar imagens de máquinas de dispositivos virtuais através da CLI do Google Cloud ou da API Cloud Build.
gcloud
Use o comando
gcloud compute machine-images import
para importar uma imagem da máquina de dispositivos virtuais.gcloud compute machine-images import MACHINE_IMAGE_NAME \ --source-uri=gs:SOURCE_URI \ --os=OS
Substitua o seguinte:
MACHINE_IMAGE_NAME
: nome da imagem da máquina que quer importar.SOURCE_URI
: caminho para o ficheiro OVA ou OVF no Cloud Storage.OS
: sistema operativo do ficheiro OVA. Esta flag é opcional por predefinição, mas pode ser necessária em alguns casos. Recomendamos que forneça esta flag.
Exemplo
Por exemplo, pode usar o seguinte comando
gcloud
para importar uma imagem de máquina denominadamy-machine-image
a partir de um ficheiro OVA de origem denominadomy-ova
que está armazenado no diretóriogs://my-bucket
e executa ocentos-7
:gcloud compute machine-images import my-machine-image \ --source-uri=gs://my-bucket/my-ova/ \ --os=centos-7
REST
Carregue o dispositivo virtual para o Cloud Storage.
Envie um pedido
POST
para o métodoprojects.builds.create
.POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds { "timeout": "7200s", "steps":[ { "args":[ "-machine-image-name=MACHINE_IMAGE_NAME", "-ovf-gcs-path=SOURCE_URI", "-os=OS", "-client-id=api", "-timeout=7000s" ], "name":"gcr.io/compute-image-tools/gce_ovf_import:release", "env":[ "BUILD_ID=$BUILD_ID" ] } ], "tags":"gce-ovf-machine-image-import" }
Substitua o seguinte:
PROJECT_ID
: ID do projeto no qual quer importar o ficheiro OVA.MACHINE_IMAGE_NAME
: nome da imagem da máquina a importar. Por exemplo,my-machine-image
.SOURCE_URI
: URI do ficheiro OVA ou de um diretório que contenha pacotes OVF armazenados no Cloud Storage. Por exemplo,gs://my-bucket/my-instance.ova
.OS
: sistema operativo do ficheiro OVA. Por exemplo,ubuntu-1604
. Esta flag é opcional por predefinição, mas pode ser necessária em alguns casos. Recomendamos que forneça esta flag.
Para ver valores
args
adicionais que podem ser fornecidos, consulte a secção de flags opcionais da página do GitHub sobre a importação de OVF do Compute Engine.
Importe imagens de máquinas com substituições de OVF
Quando importa uma imagem de máquina de um dispositivo virtual, pode substituir as definições no ficheiro OVF. Por exemplo, pode alterar a configuração da CPU ou da memória, ou usar uma rede personalizada.
CPU e memória personalizadas
Para substituir a configuração de CPU ou memória especificada no ficheiro OVF, conclua os seguintes passos:
gcloud
Para substituir a configuração de CPU ou memória especificada no ficheiro OVF, siga os passos da CLI Google Cloud para importar uma imagem da máquina e especifique os flags
--custom-cpu
e--custom-memory
.Exemplo
Uma imagem de máquina denominada
my-machine-image
tem as seguintes substituições aplicadas às definições no ficheiro OVF:- Sistema operativo:
Ubuntu 1404
- CPU:
2 CPUs
- Memória:
2048 MB
Para importar
my-machine-image
com estas substituições, execute o seguinte comando:gcloud compute machine-images import my-machine-image \ --os=ubuntu-1404 --source-uri=gs://my-bucket/Ubuntu.ova \ --custom-cpu=2 --custom-memory=2048MB
REST
Para substituir a configuração de CPU ou memória especificada no ficheiro OVF, siga os passos da API Compute Engine para importar uma imagem da máquina e especifique o argumento
-machine-type
. Este-machine-type
representa um tipo de máquina predefinido ou personalizado da série N1 a usar.Exemplo
Uma imagem de máquina denominada
my-machine-image
no projetomy-project
tem as seguintes substituições aplicadas às definições no ficheiro OVF:- Sistema operativo:
Ubuntu 1404
- CPU:
2 CPUs
- Memória:
2048 MB
Para importar
my-machine-image
com estas substituições, faça o seguinte pedido à API Cloud Build.POST https://cloudbuild.googleapis.com/v1/projects/my-project/builds { "timeout":"7200s", "steps":[ { "args":[ "-machine-image-name=my-machine-image", "-ovf-gcs-path=gs://my-bucket/Ubuntu.ova", "-os=ubuntu-1404", "-machine-type=custom-2-2048", "-client-id=api", "-timeout=7000s" ], "name":"gcr.io/compute-image-tools/gce_ovf_import:release", "env":[ "BUILD_ID=$BUILD_ID" ] } ], "tags":"gce-ovf-machine-image-import" }
Redes personalizadas
Para substituir a configuração de rede especificada no ficheiro OVF, conclua os seguintes passos:
gcloud
Para configurar uma rede personalizada, siga os passos da CLI Google Cloud para importar uma imagem da máquina e especifique uma sinalização
--network
. Se a rede estiver configurada com um modo de sub-rede personalizado, também tem de especificar as flags--subnet
e--zone
.Exemplo
Uma imagem de máquina denominada
my-machine-image
tem as seguintes substituições aplicadas às definições no ficheiro OVF:- Sistema operativo:
Ubuntu 1404
- Rede:
custom-vpc-network
- Sub-rede:
company-vpc-us-east1-c
- Zona:
us-east1-c
Para importar
my-machine-image
com estas substituições, execute o seguinte comando de exemplo:gcloud compute machine-images import my-machine-image \ --os=ubuntu-1404 \ --source-uri=gs://my-bucket/Ubuntu.ova \ --network=custom-vpc-network \ --subnet=company-vpc-us-east1-c \ --zone=us-east1-c
REST
Para usar uma rede personalizada, siga os passos REST para importar uma imagem de máquina e especifique um argumento
-network
. Se a rede estiver configurada com um modo de sub-rede personalizado, também tem de especificar os argumentos-subnet
e-zone
.Exemplo
Uma imagem de máquina denominada
my-machine-image
tem as seguintes substituições aplicadas às definições no ficheiro OVF:- Sistema operativo:
Ubuntu 1404
- Rede:
custom-vpc-network
- Sub-rede:
company-vpc-us-east1-c
- Zona:
us-central1-c
Para importar
my-machine-image
com estas substituições, faça o seguinte pedido à API Compute Engine.POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds { "timeout":"7200s", "steps":[ { "args":[ "-machine-image-name=my-machine-image", "-ovf-gcs-path=gs://my-bucket/Ubuntu.ova", "-os=ubuntu-1404", "-zone=us-central1-c", "-network=custom-vpc-network", "-subnet=company-vpc-us-east1-c", "-client-id=api", "-timeout=7000s" ], "name":"gcr.io/compute-image-tools/gce_ovf_import:release", "env":[ "BUILD_ID=$BUsILD_ID" ] } ], "tags":"gce-ovf-machine-image-import" }
Substitua
PROJECT_ID
pelo ID do seu projeto.Importe uma imagem de máquina numa rede que não permita o IP externo
Para importar uma imagem da máquina através de uma rede que não permite endereços IP externos, conclua os seguintes passos:
Adicione o dispositivo virtual ao Cloud Storage.
O processo de importação requer que os gestores de pacotes sejam instalados no sistema operativo da imagem da máquina. Estes gestores de pacotes podem ter de fazer pedidos a repositórios de pacotes que estão fora Google Cloud. Para permitir o acesso a estas atualizações, tem de configurar o NAT da nuvem. Para mais informações, consulte o artigo Crie uma configuração de NAT com o Cloud Router.
Configure o acesso privado do Google. Para mais informações, consulte o artigo Configurar o acesso privado à Google.
Importe a imagem da máquina através da CLI Google Cloud ou da API Cloud Build.
Quando importa uma imagem de máquina de um dispositivo virtual, são criadas VMs temporárias no seu projeto. Para garantir que a estas VMs temporárias não são atribuídos endereços IP externos, tem de especificar uma flag ou um argumento adicional.
Para mais informações sobre o argumento ou a flag obrigatória, clique nos separadores seguintes:
gcloud
Use o comando
gcloud compute machine-images import
com a flag--no-address
.gcloud compute machine-images import MACHINE_IMAGE_NAME \ --source-uri=SOURCE_URI \ --os=OS \ --zone=ZONE \ --no-address
Substitua o seguinte:
MACHINE_IMAGE_NAME
: nome da imagem da máquina que quer importar.SOURCE_URI
: URI do ficheiro OVA ou OVF no Cloud Storage. Por exemplo,gs://my-bucket/Ubuntu.ova
.OS
: sistema operativo do ficheiro OVA. Esta flag é opcional por predefinição, mas pode ser necessária em alguns casos. Recomendamos que forneça esta flag. Para ver uma lista dos valores suportados, consulte as opções da flag--os
para o comandogcloud compute machine-images import
.ZONE
: a zona na qual importar a imagem da máquina. Se deixar em branco, é usada a zona predefinida para o projeto.
REST
Envie um pedido
POST
para o métodoprojects.builds.create
usando a API Cloud Build. Especifique o argumento-no-external-ip
.POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds { "timeout":"7200s", "steps":[ { "args":[ "-machine-image-name=MACHINE_IMAGE_NAME", "-ovf-gcs-path=SOURCE_URI", "-os=OS", "-zone=ZONE", "-no-external-ip", "-client-id=api", "-timeout=7000s" ], "name":"gcr.io/compute-image-tools/gce_ovf_import:release", "env":[ "BUILD_ID=$BUILD_ID" ] } ], "tags":"gce-ovf-machine-image-import" }
Substitua o seguinte:
PROJECT_ID
: o ID do projeto no qual quer importar a imagem da máquina.MACHINE_IMAGE_NAME
: o nome da imagem da máquina a importar. Por exemplo,my-machine-image
.SOURCE_URI
: o URI do ficheiro OVA que está armazenado no Cloud Storage. Por exemplo,gs://my-bucket/my-machine.ova
.OS
: o sistema operativo do ficheiro OVA. Por exemplo,ubuntu-1604
. Esta flag é opcional por predefinição, mas pode ser necessária em alguns casos. Recomendamos que forneça esta flag. Para ver uma lista dos valores suportados, consulte as opções da flag--os
para o comandogcloud compute instances import
.ZONE
: a zona na qual importar a imagem da máquina.
Importe uma imagem de máquina com contas de serviço personalizadas
Durante uma importação de imagens da máquina, são criadas instâncias de máquinas virtuais (VMs) temporárias no seu projeto. A ferramenta de importação nestas VMs temporárias tem de ser autenticada.
Uma conta de serviço é uma identidade que está associada a uma VM. Pode aceder às chaves de acesso da conta de serviço através do servidor de metadados da VM e usá-las para autenticar a ferramenta de importação na VM.
Por predefinição, o processo de importação usa a conta de serviço do Compute Engine predefinida. No entanto, se a conta de serviço predefinida do Compute Engine estiver desativada no seu projeto ou se quiser usar uma conta de serviço personalizada do Compute Engine, tem de criar uma conta de serviço e especificá-la para o processo de importação.
gcloud
Adicione o dispositivo virtual ao Cloud Storage.
Crie uma conta de serviço e atribua as funções mínimas. Para mais informações sobre como criar contas de serviço, consulte Criar e gerir contas de serviço.
No mínimo, a conta de serviço do Compute Engine especificada tem de ter as seguintes funções atribuídas:
roles/compute.storageAdmin
roles/storage.objectViewer
Estas funções mínimas são necessárias para a conta de serviço especificada na flag
--compute-service-account
. Para mais informações, consulte o artigo Conceda as funções necessárias à conta de serviço do Compute Engine.Use o comando
gcloud compute machine-images import
para importar uma imagem da máquina de dispositivos virtuais.gcloud compute machine-images import MACHINE_IMAGE_NAME \ --source-uri=gs:SOURCE_URI \ --os=OS \ --compute-service-account=TEMP_SERVICE_ACCOUNT_EMAIL \ --service-account=SERVICE_ACCOUNT_EMAIL \ --scopes=SCOPES
Substitua o seguinte:
MACHINE_IMAGE_NAME
: nome da imagem da máquina que quer importar.SOURCE_URI
: caminho para o ficheiro OVA ou OVF no Cloud Storage.OS
: sistema operativo do ficheiro OVA. Esta flag é opcional por predefinição, mas pode ser necessária em alguns casos. Recomendamos que forneça esta flag.TEMP_SERVICE_ACCOUNT_EMAIL
: o endereço de email associado à conta de serviço personalizada criada no passo anterior. Esta conta de serviço é usada pelas VMs temporárias. Se não for especificado, a VM usa a conta de serviço predefinida do Compute Engine.SERVICE_ACCOUNT_EMAIL
: o endereço de email associado à conta de serviço personalizada que vai ser anexada a qualquer VM criada a partir desta imagem da máquina. Não existem restrições de autorizações para esta conta de serviço. Pode personalizá-la conforme necessário. Se não for especificado, a conta de serviço predefinida do Compute Engine é anexada à VM.SCOPES
: especifique o nível de acesso para a opção--service-account
. Se não for especificado, são usados os âmbitos predefinidos. Para mais informações, reveja a flag de--scopes
.
REST
Adicione o dispositivo virtual ao Cloud Storage.
Crie uma conta de serviço e atribua as funções mínimas. Para mais informações sobre como criar contas de serviço, consulte o artigo Crie contas de serviço.
No mínimo, a conta de serviço do Compute Engine especificada tem de ter as seguintes funções atribuídas:
roles/compute.storageAdmin
roles/storage.objectViewer
Estas funções mínimas são necessárias para a conta de serviço especificada para o argumento
-compute-service-account
. Para mais informações, consulte o artigo Conceda as funções necessárias à conta de serviço do Compute Engine.Envie um pedido
POST
para o métodoprojects.builds.create
através da API Cloud Build.POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds { "timeout":"7200s", "steps":[ { "args":[ "-machine-image-name=MACHINE_IMAGE_NAME", "-ovf-gcs-path=SOURCE_URI", "-os=OS", "-zone=ZONE", "-compute-service-account=TEMP_SERVICE_ACCOUNT_EMAIL", "-service-account=SERVICE_ACCOUNT_EMAIL", "-client-id=api", "-timeout=7000s" ], "name":"gcr.io/compute-image-tools/gce_ovf_import:release", "env":[ "BUILD_ID=$BUILD_ID" ] } ], "tags":"gce-ovf-machine-image-import" }
Substitua o seguinte:
PROJECT_ID
: o ID do projeto no qual quer importar a imagem da máquina.MACHINE_IMAGE_NAME
: o nome da imagem da máquina a importar. Por exemplo,my-machine-image
.SOURCE_URI
: o URI do ficheiro OVA que está armazenado no Cloud Storage. Por exemplo,gs://my-bucket/my-machine.ova
.OS
: o sistema operativo do ficheiro OVA. Por exemplo,ubuntu-1604
. Esta flag é opcional por predefinição, mas pode ser necessária em alguns casos. Recomendamos que forneça esta flag. Para ver uma lista dos valores suportados, consulte as opções da flag--os
para o comandogcloud compute instances import
.ZONE
: a zona na qual importar a imagem da máquina.TEMP_SERVICE_ACCOUNT_EMAIL
: o endereço de email associado à conta de serviço personalizada criada no passo anterior. Esta conta de serviço é usada pelas VMs temporárias. Se não for especificado, a VM usa a conta de serviço predefinida do Compute Engine.SERVICE_ACCOUNT_EMAIL
: o endereço de email associado à conta de serviço personalizada que vai ser anexada a qualquer VM criada a partir desta imagem da máquina. Não existem restrições de autorizações para esta conta de serviço. Pode personalizá-la conforme necessário. Se não for especificado, a conta de serviço predefinida do Compute Engine é anexada à VM.SCOPES
: especifique o nível de acesso para a opção--service-account
. Se não for especificado, são usados os âmbitos predefinidos. Para mais informações, reveja a flag de--scopes
.
O que se segue?
- Saiba mais sobre as imagens de máquinas
- Crie instâncias de VM a partir de imagens da máquina
Exceto 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.
-