Importe discos virtuais

Se tiver discos virtuais no seu ambiente no local com software e configurações de que precisa, ocasionalmente referidos como discos dourados ou imagens douradas, pode poupar tempo importando esses discos virtuais para o Distributed Cloud e usando a imagem resultante para criar máquinas virtuais. A ferramenta de importação suporta os formatos de imagem RAW e QCOW.

Antes de começar

Antes de continuar, certifique-se de que tem o seguinte:

  • A CLI gcloud foi transferida, instalada e configurada. Todos os comandos da CLI para o GDC usam a CLI gdcloud ou kubectl e requerem um ambiente de sistema operativo (SO).
  • Acesso de início de sessão ao cluster do Kubernetes. Siga os passos da CLI em Iniciar sessão para iniciar sessão no cluster do Kubernetes.

Peça autorizações e acesso

Para realizar as tarefas indicadas nesta página, tem de ter a função de administrador da máquina virtual do projeto. Siga os passos para validar que tem a função de administrador de máquinas virtuais do projeto (project-vm-admin) no espaço de nomes do projeto onde a VM reside.

Para operações de VMs através da consola do GDC ou da CLI gdcloud, peça ao administrador de IAM do projeto para lhe atribuir as funções indicadas no parágrafo anterior e a função de leitor do projeto (project-viewer).

Importe discos virtuais

Pode importar os seus discos virtuais através da CLI gdcloud ou da API Virtual Machine Manager.

Para receber as autorizações necessárias para importar imagens, peça ao administrador de IAM da sua organização que lhe conceda a função de administrador de imagens de máquinas virtuais do projeto (project-vm-image-admin) para o seu projeto.

gdcloud

Use o comando gdcloud compute images import para criar uma imagem de arranque.

O comando import garante que o disco tem os pacotes necessários, incluindo o ambiente convidado, que é necessário para configurar as credenciais para estabelecer ligação à instância através do Secure Shell (SSH) no Linux e do Remote Desktop Protocol (RDP) no Windows.

No Linux, o comando também instala pacotes para o protocolo de tempo de rede (NTP) e cloud-init para que a instância seja executada corretamente no GDC.

Pode importar ficheiros de disco virtual diretamente da sua estação de trabalho. A ferramenta de importação carrega automaticamente o ficheiro para um contentor de armazenamento de objetos no seu projeto.

gdcloud compute images import IMAGE_NAME \
  --source-file=SOURCE_FILE \
  --os=IMAGE_OS \
  --timeout=TIMEOUT

Substitua as seguintes variáveis:

  • IMAGE_NAME: o nome da imagem de destino. O nome não pode ter mais de 35 carateres.
  • SOURCE_FILE: o ficheiro de disco virtual. Este ficheiro é um ficheiro local na sua estação de trabalho. Pode fornecer um caminho absoluto ou relativo.
  • IMAGE_OS: o SO no disco a importar.
  • TIMEOUT: o tempo que uma importação pode durar antes de falhar com "TIMEOUT". Por exemplo, se especificar 2h, o processo falha após 2 horas. O tempo limite predefinido é 1h.

A operação de carregamento pode demorar um período prolongado, consoante o tamanho do disco virtual e a velocidade da ligação de rede. A operação de importação pode demorar dezenas de minutos a ser executada, consoante o tamanho do disco.

API

Antes de iniciar o processo de importação com a API, tem de carregar o disco virtual para um contentor de armazenamento de objetos denominado vm-images-bucket. Para criar um contentor de armazenamento de objetos, consulte o artigo Crie contentores de armazenamento para projetos.

Para importar um disco virtual através da API, faça o seguinte:

  1. Crie um objeto VirtualMachineImageImport no servidor da API Google Ads Management para iniciar o processo de importação de imagens:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      apply -n PROJECT_ID -f - <<EOF
    apiVersion: virtualmachine.gdc.goog/v1
    kind: VirtualMachineImageImport
    metadata:
      name: IMAGE_NAME
      namespace: PROJECT_ID
    spec:
      source:
        objectStorage:
          bucketRef:
            name: vm-images-bucket
          objectName: SOURCE_FILE
      imageMetadata:
        name: IMAGE_NAME
        operatingSystem: OPERATING_SYSTEM
        minimumDiskSize: DISK_SIZE
    EOF
    

    Substitua as seguintes variáveis:

    Variável Descrição
    IMAGE_NAME O nome da imagem a importar. O nome não pode ter mais de 35 carateres.
    PROJECT_ID O ID do projeto onde quer importar a imagem.
    SOURCE_FILE O nome do ficheiro de origem que contém o carregamento do disco virtual para o armazenamento de objetos. Este valor é a secção do caminho de armazenamento de objetos após vm-images-bucket/.
    OPERATING_SYSTEM O SO no disco a importar.
    DISK_SIZE O tamanho mínimo que um disco tem de ter para ser criado com esta imagem. Recomendamos que use, pelo menos, um buffer de 20% além do tamanho do sistema de ficheiros da imagem original. Por exemplo: use, pelo menos, 12Gi para um disco virtual com um tamanho do sistema de ficheiros original de 10 Gi.
  2. Monitorize o progresso da importação consultando o estado do objeto VirtualMachineImageImport:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      get virtualmachineimageimport --namespace PROJECT_ID \
      IMAGE_NAME -o jsonpath='{.status}'
    

Limpe os recursos

O processo de importação envolve o carregamento do ficheiro de disco virtual para o armazenamento de objetos. Se usar a CLI gcloud, o objeto é limpo quando o comando termina, quer tenha sido bem-sucedido ou não. Se o comando for interrompido ou a importação de imagens for feita com a API, o ficheiro de disco virtual pode permanecer no contentor de armazenamento de objetos denominado vm-images-bucket até eliminar manualmente o ficheiro.

O que se segue?

Crie uma nova instância de VM que use a sua imagem na página, Crie e inicie uma VM.