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 isolado do GDC 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 permissões e acesso
Para executar as tarefas listadas nesta página, você precisa ter os papéis de administrador de máquinas virtuais do projeto e administrador de imagens de máquinas virtuais do projeto. Siga as etapas para verificar ou peça ao administrador do IAM do projeto para atribuir a você os papéis de administrador de máquinas virtuais do projeto (project-vm-admin) e administrador de imagens de máquinas virtuais do projeto (project-vm-image-admin) no namespace do projeto em que a VM reside.
Para operações de VM usando o console do GDC ou a CLI gdcloud,
peça ao administrador do IAM do projeto para atribuir a você os papéis listados no parágrafo
anterior e o papel Leitor do projeto (project-viewer).
Importar discos virtuais
É possível importar discos virtuais usando a CLI gdcloud ou a API Virtual Machine Manager.
Para receber as permissões necessárias para importar imagens, peça ao administrador do IAM da organização para conceder a você o papel de administrador de imagens de máquinas virtuais do projeto (project-vm-image-admin).
gdcloud
Use o comando gdcloud compute images import para criar uma imagem inicializável.
O comando import garante que o disco tenha os pacotes necessários, incluindo o ambiente de convidado, que é necessário para configurar credenciais de conexão com a instância usando o Secure Shell (SSH) no Linux e o protocolo da área de trabalho remota (RDP) no Windows.
No Linux, o comando também instala pacotes para o Network Time Protocol (NTP)
e cloud-init para que a instância seja executada corretamente no
GDC.
É possível importar arquivos de disco virtual 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 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 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
Antes de iniciar o processo de importação com a API, faça upload do disco virtual para um bucket de armazenamento de objetos chamado vm-images-bucket. Para criar
um bucket de armazenamento de objetos, consulte
Criar buckets de armazenamento para projetos.
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_KUBECONFIG \ 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 EOFSubstitua as seguintes variáveis:
Variável Descrição 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/.OPERATING_SYSTEM O SO no disco a ser importado. DISK_SIZE O tamanho mínimo que um disco precisa ter para ser criado com essa imagem. Recomendamos usar um buffer de pelo menos 20% além do tamanho do sistema de arquivos da imagem original. Por exemplo, use pelo menos 12 GiB para um disco virtual com tamanho original de 10 GiB. Monitore o progresso da importação consultando o status do objeto
VirtualMachineImageImport:kubectl --kubeconfig MANAGEMENT_API_SERVER_KUBECONFIG \ get virtualmachineimageimport --namespace PROJECT_ID \ 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
for concluído, seja com sucesso 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.