Se você tiver discos virtuais no ambiente local com o software e as configurações necessárias, às vezes chamados de discos dourados ou imagens douradas, poderá economizar tempo importando esses discos virtuais para o appliance GDC com isolamento físico e usando a imagem resultante para criar máquinas virtuais. A ferramenta de importação é compatível com os formatos de imagem RAW e QCOW.
Antes de começar
Antes de continuar, verifique se você tem o seguinte:
- A CLI gdcloud
baixada, instalada e configurada. Todos os comandos da CLI para
GDC usam a CLI
gdcloudoukubectle exigem um ambiente de sistema operacional (SO).
Acesso ao servidor da API Management. Siga as etapas da CLI em Fazer login para fazer login no servidor da API Management.
Solicitar papéis do IAM
Entre em contato com o administrador do IAM do projeto para solicitar os seguintes papéis no projeto:
Administrador do projeto de máquina virtual (
project-vm-admin): cria, modifica, lista e exclui VMs no namespace do projeto.Leitor do projeto(
project-viewer): confira todos os recursos no namespace do projeto.Administrador do projeto de imagens de máquina virtual (
project-vm-image-admin): crie, liste e exclua imagens de VM no namespace do projeto.
Todas as funções de VM precisam ser vinculadas ao namespace do projeto em que a VM reside. Siga as etapas para verificar seu acesso.
Importar discos virtuais
É possível importar arquivos de disco de imagem de VM diretamente da sua estação de trabalho. A ferramenta de importação faz upload automático do arquivo para um bucket de armazenamento de objetos no seu projeto.
Para importar seus discos virtuais, use a CLI gdcloud ou a API Administrador de Máquina Virtual.
gdcloud
O comando import verifica se a imagem fornecida pelo GDC tem os pacotes necessários para configurar credenciais de conexão à instância usando Secure Shell (SSH) e protocolo da área de trabalho remota (RDP). Isso inclui pacotes para o ambiente de convidado.
O comando também instala pacotes para o Network Time Protocol (NTP)
e o cloud-init para que a instância seja executada corretamente no GDC.
Para criar uma imagem inicializável, use o comando gdcloud compute images import:
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 caracteres.
- SOURCE_FILE: o arquivo de disco virtual. Esse arquivo é um arquivo local na sua estação de trabalho. Você pode fornecer um caminho absoluto ou relativo.
- IMAGE_OS: o SO no disco a ser importado.
- TIMEOUT: o tempo que uma importação pode durar antes de falhar
com "TIMEOUT". Por exemplo, se você especificar
2h, o processo vai falhar após 2 horas. O tempo limite padrão é1h.
A operação de upload pode levar muito tempo, dependendo do tamanho do disco virtual e da velocidade da conexão de rede. A operação de importação pode levar dezenas de minutos para ser executada, dependendo do tamanho do disco.
API
Para importar um disco virtual pela API, faça o seguinte:
Crie um objeto
VirtualMachineImageImportno servidor da API Management para iniciar o processo de importação de imagens:kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT_ID \ apply -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: IMAGE_OS minimumDiskSize: DISK_SIZE EOFSubstitua as seguintes variáveis:
- IMAGE_NAME: o nome da imagem a ser importada. O nome não pode ter mais de 35 caracteres.
- PROJECT_ID: o ID do projeto em que você quer importar a imagem.
- SOURCE_FILE: o nome do arquivo de origem que contém o upload do disco virtual para o armazenamento de objetos. Esse valor é a seção do caminho de armazenamento de objetos após
vm-images-bucket/. - IMAGE_OS: o SO no disco a ser importado.
- DISK_SIZE: o tamanho mínimo que um disco precisa ter para ser criado com essa imagem. Use um buffer de pelo menos 20% além do tamanho do sistema de arquivos da imagem original. Por exemplo, use pelo menos
12Gpara um disco virtual com um tamanho original de sistema de arquivos de 10G.
Monitore o progresso da importação consultando o status do objeto
VirtualMachineImageImport:kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT_ID \ get virtualmachineimageimport.virtualmachine.gdc.goog IMAGE_NAME \ -o jsonpath='{.status}'
Limpar recursos
O processo de importação envolve o upload do arquivo de disco virtual para o armazenamento de objetos.
Se você usar a CLI gdcloud, o objeto será limpo quando o comando
terminar, seja ele bem-sucedido ou não. Se o comando for interrompido ou
a importação de imagens for feita com a API, o arquivo de disco virtual poderá permanecer no
bucket de armazenamento de objetos chamado vm-images-bucket até que você exclua o
arquivo manualmente.
A seguir
Crie uma instância de VM que use sua imagem na página Criar e iniciar uma VM.