Crie imagens de máquinas

Use uma imagem da máquina para armazenar todas as configurações, metadados, autorizações e dados de vários discos para uma instância da VM em execução no Compute Engine. A instância de VM que usa para criar uma imagem da máquina é denominada instância de VM de origem.

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 criar uma imagem da máquina a partir de uma instância de VM de origem.

Antes de começar

  • Se ainda não o tiver feito, configure a autenticação. A autenticação valida a sua identidade para aceder a Trusted Cloud by S3NS 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:

    Console

    When you use the Trusted Cloud console to access Trusted Cloud by S3NS services and APIs, you don't need to set up authentication.

    gcloud

    1. Instale a CLI Google Cloud e, em seguida, inicie sessão na CLI gcloud com a sua identidade federada. Depois de iniciar sessão, inicialize a CLI gcloud executando o seguinte comando:

      gcloud init
    2. 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 e, em seguida, inicie sessão na CLI gcloud com a sua identidade federada. Depois de iniciar sessão, inicialize a CLI gcloud executando o seguinte comando:

      gcloud init

    Para mais informações, consulte o artigo Autenticar para usar REST na Trusted Cloud documentação de autenticação.

Limitações e restrições

  • Pode criar uma imagem de máquina de uma instância específica, no máximo, 6 vezes a cada 60 minutos.
  • Pode proteger uma imagem de máquina através do Cloud Key Management Service (Cloud KMS) ou de uma chave de encriptação fornecida pelo cliente (CSEK). A chave de encriptação protege o conteúdo dos discos. No entanto, os metadados não estão protegidos.
  • Se usar uma CSEK para proteger a imagem da máquina, é armazenada uma cópia completa de todos os dados do disco durante a geração da imagem da máquina. Em todos os outros cenários, os dados do disco são armazenados em cópias diferenciais.
  • Não pode criar imagens da máquina a partir de VMs de origem que:

    • Ter mais de 200 TB de discos anexados.
    • Não tem discos anexados.
    • Ter volumes do Hyperdisk anexados.
    • Use o tipo de máquina Z3, exceto para z3-highmem-192-highlssd-metal.
    • Use um tipo de máquina C3D, H3 ou A3.

    Para instâncias que não suportam a criação de imagens de máquinas, pode, em alternativa, criar uma imagem do SO a partir do disco de arranque da instância, conforme descrito no artigo Crie imagens personalizadas.

Propriedades de instâncias e discos não suportadas pela imagem da máquina

Quando cria imagens da máquina a partir de instâncias de VM ou cria instâncias de VM a partir de imagens da máquina, as seguintes propriedades de instâncias e discos não são preservadas nem restauradas:

  • disks.architecture
  • disks.description
  • disks.labels
  • disks.locked
  • disks.multiWriter
  • disks.onUpdateAction
  • disks.provisionedIops
  • disks.shieldedInstanceInitialState
  • disks.sourceImage
  • disks.sourceImageEncryptionKey
  • disks.sourceInstantSnapshot
  • disks.sourceSnapshot
  • disks.sourceSnapshotEncryptionKey
  • privateIpv6GoogleAccess
  • resourceManagerTags
  • resourcePolicies
  • secure_tag
  • shieldedInstanceConfig

Criar uma imagem da máquina a partir de uma VM

Pode criar imagens de máquinas através da Trusted Cloud consola, da CLI Google Cloud ou da REST.

Para criar uma imagem de máquina, precisa das seguintes informações:

  • Um nome para a imagem de máquina que quer criar.
  • O nome da instância de VM de origem.
  • A zona em que a instância de VM de origem está localizada.
  • Uma descrição opcional.
  • Um storageLocation opcional. Se não especificar uma localização, a localização de armazenamento predefinida é a localização de armazenamento na nuvem multirregional da instância de VM de origem.
  • Uma chave de encriptação opcional. Pode escolher entre uma chave do Google Cloud-powered encryption key, do Cloud Key Management Service (Cloud KMS) ou uma chave de encriptação fornecida pelo cliente (CSEK). Se não for especificada nenhuma chave de encriptação, as imagens de máquinas são encriptadas através de a Google Cloud-powered encryption key.
  • Se quiser usar uma imagem de máquina para clonagem de instâncias e criação de instantâneos, remova as informações do SO e da app que são exclusivas da instância antes de gerar a imagem de máquina a partir de uma instância. Por exemplo, para instâncias de VMs do Windows, use GCESysprep para preparar o sistema para a replicação.

Consola

  1. Na Trusted Cloud consola, aceda à página Imagens de máquinas.

    Aceda a Imagens de máquinas

  2. Clique em Criar imagem de máquina.

  3. Especifique um nome para a imagem de máquina.

  4. Opcional: introduza uma descrição.

  5. Selecione a instância de VM de origem.

  6. Opcional: especifique onde armazenar a imagem da máquina. Escolha entre o armazenamento Multirregional ou Regional. Para mais informações sobre a localização, consulte o artigo Localização de armazenamento de imagens de máquinas.

  7. Opcional: selecione um método de encriptação.

  8. Clique em Criar.

gcloud

Use o comando gcloud compute machine-images create para criar uma imagem da máquina a partir de uma instância.

gcloud compute machine-images create MACHINE_IMAGE_NAME \
    --source-instance=SOURCE_VM_NAME

Substitua o seguinte:

  • MACHINE_IMAGE_NAME: nome da imagem da máquina que quer criar.
  • SOURCE_VM_NAME: nome da instância de VM a partir da qual quer criar a imagem.

Exemplo

Por exemplo, pode usar o seguinte comando gcloud para criar uma imagem de máquina denominada my-machine-image a partir de uma instância de origem denominada my-instance:

gcloud compute machine-images create my-machine-image  \
    --source-instance=my-instance

O processo demora alguns minutos. Quando a imagem da máquina é criada, recebe um resultado semelhante ao seguinte:

Created [https://www.googleapis.com/compute/v1/projects/project-12345/global/machineImages/my-machine-image].
NAME               STATUS
my-machine-image   READY

REST

Na API, crie um pedido POST para o método machineimages.insert. No corpo do pedido, inclua o seguinte pedido POST:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/machineImages

{
  "name": "MACHINE_IMAGE_NAME",
  "sourceInstance": "SOURCE_INSTANCE_URL"
}

Substitua o seguinte:

  • PROJECT_ID: ID do projeto.
  • MACHINE_IMAGE_NAME: nome da imagem da máquina que quer criar.
  • SOURCE_INSTANCE_URL: URL completo ou parcial da instância de VM de origem que quer usar para criar a imagem da máquina. Por exemplo, se tiver uma instância de origem denominada my-instance num projeto denominado myProject. Os seguintes URLs são válidos:

    • https://www.googleapis.com/compute/v1/projects/myProject/global/instances/my-instance
    • projects/myProject/global/instances/my-instance
    • global/instances/my-instance

O que se segue?