Como importar imagens de discos de inicialização para o Compute Engine

O uso da ferramenta de importação de disco virtual, que automatiza todas as etapas neste guia, é a maneira recomendada para importar imagens do disco de inicialização para o Compute Engine a partir de data centers físicos, máquinas virtuais na estação de trabalho local ou máquinas virtuais executadas em outra plataforma de nuvem.

Se preferir não usar a ferramenta automatizada, siga as instruções manuais passo a passo neste guia.

O processo de importação de imagens importa apenas um disco por vez. Nesse guia, o foco é mostrar como importar imagens de discos de inicialização.

Importe seus discos de inicialização somente se não conseguir criar nem migrar os aplicativos para serem executados em imagens públicas do Compute Engine. As imagens públicas já estão configuradas para execução no ambiente do Compute Engine, por isso execute aplicativos nessas imagens sem se preocupar com as configurações do carregador de inicialização e do sistema operacional. No entanto, talvez seja necessário importar as imagens do seu disco de inicialização nos seguintes cenários:

  • Seus aplicativos exigem um sistema operacional não fornecido como imagem pública.
  • Você já tem um conjunto de imagens básicas para criar máquinas virtuais em outra plataforma de nuvem.
  • O trabalho necessário para migrar o código do aplicativo para uma das imagens públicas é maior do que aquele para concluir o processo de importação da imagem do disco de inicialização.

Para receber ajuda na migração para suas máquinas virtuais, use serviços de parceiros. Consulte Migrar VMs para o Compute Engine para mais detalhes.

Visão geral

Para importar uma imagem de disco de inicialização para o Compute Engine, recorra ao seguinte processo:

  1. Planeje seu caminho de importação. Identifique o local para preparar sua imagem de disco de inicialização antes de fazer upload dela, além de definir como se conectar a essa imagem após a inicialização no ambiente do Compute Engine.
  2. Prepare seu disco de inicialização para que ele seja executado no ambiente do Compute Engine e para que possa ser acessado após a inicialização.
  3. Crie e compacte a imagem do disco de inicialização.
  4. Faça upload do arquivo de imagem para o Google Cloud Storage e importe a imagem para o Compute Engine como uma nova imagem personalizada.
  5. Use a imagem importada para criar uma instância de máquina virtual e garantir que ela seja inicializada corretamente.
  6. Se a imagem não for inicializada corretamente, solucione o problema anexando a imagem do disco de inicialização a outra instância e reconfigure-a.
  7. Otimize a imagem e instale o ambiente convidado do Linux para que a imagem do sistema operacional importada se comunique com o servidor de metadados e use outros recursos do Compute Engine.

Requisitos

Para importar discos de inicialização para o Compute Engine, os discos atuais precisam atender aos seguintes requisitos:

  • Se você cria um kernel do sistema operacional personalizado, ele precisa atender aos requisitos de configuração de hardware e kernel. A maioria das distribuições Linux atende a eles, então esse requisito só se aplica a usuários avançados que desenvolvem os próprios sistemas operacionais personalizados para execução no Compute Engine.
  • O disco de inicialização não pode ser superior a 2.048 GB (2 TB).
  • O disco de inicialização importado precisa ter uma tabela de partição MBR funcional ou uma configuração híbrida de uma tabela de partição GPT com um carregador de inicialização MBR.
  • A partição principal do disco de inicialização pode ter qualquer formato, desde que seja inicializada corretamente a partir do carregador de inicialização MBR.
  • O carregador no disco de inicialização não pode ter os argumentos de linha de comando de kernel quiet, rhgb ou splashimage=. O Compute Engine não é compatível com telas de apresentação na inicialização. Remova esses valores da configuração do GRUB durante a etapa de configuração do carregador de inicialização.

O arquivo de imagem a ser importado precisa atender aos seguintes requisitos:

É possível importar imagens de disco de inicialização para qualquer sistema operacional, porém alguns sistemas são mais fáceis de configurar no ambiente do Compute Engine do que em outros. Os sistemas operacionais a seguir foram testados para esse guia:

  • Debian 7 e Debian 8
  • RHEL/CentOS 6
  • openSUSE 13.x
  • Ubuntu 12.04, 14.04 e 16.04

Os seguintes sistemas operacionais exigem outras etapas não indicadas nesse guia:

  • Debian 6 e anteriores
  • RHEL/CentOS 7
  • RHEL/CentOS 5 e anteriores
  • Ubuntu 10.04 e anteriores

Custos de importação de imagens

Antes de começar, entenda os custos envolvidos no processo de importação. Não há custo de entrada na rede para o upload do arquivo de imagem de disco de inicialização no Google Cloud Storage nem custo de importação dessa imagem como imagem personalizada do Compute Engine. No entanto, há custos para determinadas etapas do processo de importação:

  • O custo de armazenamento temporário dos seus arquivos de imagem compactados em um intervalo padrão do Google Cloud Storage. Use um intervalo temporário do Google Cloud Storage para controlar seus arquivos antes de importá-los como imagens personalizadas do Compute Engine. Remova o intervalo após a conclusão do processo de importação.
  • O custo de armazenamento de imagens personalizadas após a importação delas para o Compute Engine.
  • O custo potencial para saída de dados do seu datacenter, do provedor de rede ou do serviço de nuvem atual. É possível que os arquivos de imagem continuem muito grandes mesmo após a compactação. Portanto, copiá-los para o Compute Engine pode gerar taxas de saída significativas em algumas plataformas.
  • O custo de discos permanentes e instâncias de máquina virtual em que é possível configurar a imagem depois de importá-la para o Compute Engine.

Configurar e preparar seu caminho de importação

O método para importação do seu disco depende da configuração atual do sistema que quer passar para o Compute Engine. Adote um sistema que possibilita a criação e compactação do arquivo de imagem do disco de inicialização, e que faça upload do arquivo de imagem para o Google Cloud Storage. Considere os seguintes itens ao planejar seu caminho de importação:

  • No caminho de importação de imagem, é necessário configurar seu disco de inicialização em um ambiente de sistema operacional em execução. Esse processo impede a inicialização do disco em ambientes externos ao do Compute Engine. Você é o responsável por garantir que não haja perda de dados nos seus discos nem interrupções nos seus aplicativos comerciais funcionais enquanto está importando seu sistema para o Compute Engine.
  • Identifique a configuração de acesso ao sistema atual e planeje como quer acessá-lo após a importação para o Compute Engine.
    • Se o sistema tem configurações do SSH ou de login do usuário atual, configure somente o carregador de inicialização e a imagem para uma execução otimizada no Compute Engine. Acesse a instância por meio da sua configuração do SSH ou do login de usuário diretamente no console serial interativo.
    • Se o sistema não tem configurações de login de usuário atual ou SSH, é necessário configurar o disco de inicialização para acessá-lo após a inicialização no Compute Engine.
  • O processo de importação pode durar muitas horas ou muitos dias, dependendo do tamanho do seu disco de inicialização e da velocidade da sua conexão de rede.
  • O sistema em que você cria e compacta sua imagem de disco de inicialização precisa ter espaço de armazenamento suficiente para gerar os arquivos de imagem em outro dispositivo de armazenamento que não seja o próprio disco de inicialização. Normalmente, suas imagens e seus arquivos tar.gz usam um espaço duas a três vezes maior do que o do próprio disco de inicialização.
  • Entenda a estrutura do sistema de arquivos para o sistema que quer fazer a importação.
    • Se o sistema operacional e os arquivos de aplicativo estão espalhados entre vários discos, importe cada um deles individualmente e use cada imagem para criar discos permanentes únicos para sua instância de máquina virtual do Compute Engine.
    • Caso os sistemas tenham volumes de inicialização em uma configuração RAID em que vários discos funcionam como volumes lógicos únicos, crie imagens exclusivas para toda a matriz em vez de criar uma imagem para cada disco. Os discos permanentes do Compute Engine eliminam a necessidade de configurações RAID.
  • Se o sistema criptografa o conteúdo dos discos de inicialização com um Módulo de plataforma confiável ou com uma criptografia de software, descriptografe o disco antes de criar o arquivo de imagem dele. O Google não lê imagens que estejam criptografadas. A criptografia das imagens é feita logo após o upload. Com isso, é possível fornecer chaves de criptografia próprias para discos permanentes e intervalos do Cloud Storage.

Depois de identificar ou criar um sistema em que é possível completar o processo de importação, conecte-se a ele e configure o carregador de inicialização.

Preparar a imagem do disco de inicialização

Em um sistema em execução, prepare a imagem do disco de inicialização para que ela funcione no ambiente do Compute Engine.

  • Configure o carregador no disco de inicialização para que a imagem seja executada no Compute Engine.
  • Configure o SSH ou o acesso de login de usuários no disco de inicialização para acessá-lo após a importação para o Compute Engine e iniciá-lo como instância de máquina virtual.

Esse processo pode impossibilitar a inicialização do sistema fora do Compute Engine, portanto uma prática recomendada é concluir essa etapa em um sistema isolado usando uma cópia do disco de inicialização que você quer importar.

Configurar o carregador de inicialização

Configure o carregador de inicialização no sistema para que ele seja executado no Compute Engine.

  1. Conecte-se ao terminal do sistema usando o disco de inicialização que planeja importar.

  2. Edite o arquivo de configuração do GRUB. Esse arquivo normalmente está em /etc/default/grub, porém em algumas distribuições mais antigas, ele pode estar em um diretório não padrão.

  3. Faça as alterações a seguir no arquivo de configuração do GRUB:

    • Remova linhas que contenham splashimage=. O Compute Engine não é compatível com telas de apresentação na inicialização.
    • Remova os argumentos de linha de comando do kernel rhgb e quiet.
    • Adicione console=ttyS0,38400n8d aos argumentos de linha de comando do kernel para que a instância funcione com o console serial interativo.
  4. Gere o arquivo grub.cfg novamente. De acordo com sua distribuição, use um dos seguintes comandos:

    • Debian e Ubuntu: sudo update-grub
    • RHEL, CentOS, SUSE e openSUSE: sudo grub-mkconfig -o /boot/grub/grub.cfg
  5. Edite o arquivo /etc/fstab e remova referências a todos os discos e partições diferentes do disco de inicialização e de partições nesse disco. Entradas inválidas em /etc/fstab podem interromper o processo de inicialização do sistema.

Depois de configurar o carregador de inicialização, crie e compacte o arquivo de imagem de disco.

Configurar o SSH ou o acesso de login de usuário na imagem

Quando sua imagem está em execução no Compute Engine como instância de máquina virtual, é necessário um meio para acessá-la. Conecte-se à instância usando uma configuração do SSH ou faça login usando um nome de usuário e uma senha na conexão com o Console serial interativo.

Conclua a configuração do SSH ou de login de usuário antes de criar e compactar o arquivo de imagem de disco.

Criar e compactar o arquivo de imagem de disco

Crie e compacte o arquivo de imagem de disco de inicialização do sistema que quer importar para o Compute Engine. O processo de criação e compactação do arquivo de imagem pode variar dependendo da plataforma em que seu sistema opera.

Genérico

Em quase todos os sistemas, use esse processo para criar arquivos de imagem RAW que possam ser importados para o Compute Engine. Conclua esse processo no sistema em execução que estiver importando ou anexe seu disco de inicialização como secundário em outro sistema. Além disso, gere a imagem de disco de inicialização a partir do disco interrompido. Verifique se você tem espaço de armazenamento suficiente para manter temporariamente os arquivos de imagem de disco. Esse exemplo utiliza uma imagem de um sistema em execução.

  1. Conecte-se ao terminal do sistema que contém o disco de inicialização que você planeja importar.

  2. Use o comando lsblk para identificar o disco de inicialização de origem a partir do qual você quer criar uma imagem e o local em que há espaço suficiente para gravar os arquivos de imagem. Para esse exemplo, /dev/sda é o disco de inicialização de origem e /dev/sdb é um disco secundário maior ativado no diretório /tmp. Mesmo /dev/sda estando em execução, crie uma imagem a partir dele. Convém fazer isso em um sistema em repouso que não esteja processando ativamente dados nem executando seus aplicativos.

    $ lsblk
    
    NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sda      8:0    0  100G  0 disk
    ├─sda1   8:1    0   96G  0 part /
    ├─sda2   8:2    0    1K  0 part
    └─sda3   8:5    0    4G  0 part [SWAP]
    sdb      8:16   0  500G  0 disk /tmp
    sr0     11:0    1 1024M  0 rom
    
  3. Crie o arquivo de imagem do seu disco de inicialização.

    $ sudo dd if=/dev/sda of=/tmp/disk.raw bs=4M conv=sparse
    
  4. Alterne para o diretório no qual você gravou o arquivo disk.raw.

    $ cd /tmp
    
  5. Compacte o disco RAW no formato tar.gz. Nesta etapa, o arquivo de imagem é compactado para acelerar o respectivo upload para o Google Cloud Storage. No OSX, instale o gtar e use-o para esta etapa em vez do tar.

    $ sudo tar -Sczf /tmp/compressed-image.tar.gz disk.raw
    

AWS EC2

Se estiver importando uma instância Amazon EC2, agrupe o volume Amazon EBS usando as ferramentas AMI:

  1. Localize e anote o código da conta da Amazon no console de configurações da conta.

  2. Em sua instância Amazon EC2, faça o download e instale as ferramentas EC2 AMI.

  3. Execute ec2-bundle-vol como raiz com os argumentos a seguir, substituindo cert-<hash>.pem pelo arquivo de certificado, pk-<hash>.pem pela chave privada e AWS_ACCOUNT_ID pelo código da conta da Amazon. Esse comando cria o arquivo image.

    ec2-bundle-vol -c /tmp/build/cert-<hash>.pem \
        -k /tmp/build/pk-<hash>.pem -u AWS_ACCOUNT_ID \
        -r x86_64 --no-filter --exclude /tmp/build \
        --grub-config /tmp/build/menu.lst \
        --fstab /tmp/build/fstab
    
  4. Compacte o disco RAW no formato tar.gz. Nesta etapa, o arquivo de imagem é compactado para acelerar o respectivo upload para o Google Cloud Storage. No OSX, instale o gtar e use-o para esta etapa em vez do tar.

    $ sudo tar -Sczf /tmp/compressed-image.tar.gz disk.raw
    

Virtual Box

Se você preparou seu sistema em um ambiente VirtualBox, é possível usar a ferramenta VBoxManage para converter uma imagem de disco .vdi ou .qcow2 para o formato disk.raw.

  1. Encerre a máquina do sistema convidado do VirtualBox que quer importar. Desative-a com a interface do VirtualBox ou com o utilitário VBoxManage.

    VBoxManage controlvm [GUEST_NAME] acpipowerbutton
    

    em que [GUEST_NAME] é o nome da máquina virtual.

  2. Converta a imagem da máquina virtual no formato RAW com o utilitário VBoxManage:

    VBoxManage clonemedium [GUEST_IMAGE] \
        ~/disk.raw --format RAW
    

    em que [GUEST_IMAGE] é o caminho para a imagem da máquina virtual .vdi ou do arquivo .qcow2.

  3. Compacte o disco RAW no formato tar.gz. Nesta etapa, o arquivo de imagem é compactado para acelerar o respectivo upload para o Google Cloud Storage. No OSX, instale o gtar e use-o para esta etapa em vez do tar.

    $ sudo tar --format=oldgnu -Sczf /tmp/compressed-image.tar.gz disk.raw
    

O arquivo de imagem será compactado e ficará pronto para upload no Google Cloud Storage.

Importar a imagem para a sua lista de imagens personalizadas

Faça upload do arquivo para o Google Cloud Storage e importe a imagem para a sua lista de imagens personalizadas. Se desejar, criptografe a imagem durante a etapa de importação.

Importe a imagem usando o console ou as ferramentas do Cloud SDK:

Console

Copie o arquivo compressed-image.tar.gz na estação de trabalho local e use o Console do GCP para criar um intervalo e fazer upload do arquivo.

  1. No Console do GCP, acesse a página "Navegador" do Cloud Storage.

    Acessar a página "Navegador"

  2. No topo da página, clique em Criar intervalo.
  3. Especifique um nome de intervalo único, a classe de armazenamento Padrão e um local para armazenar seus arquivos de imagem.
  4. Clique em Criar para criar um intervalo. Na página "Navegador", acesse o novo intervalo.
  5. No topo da página, clique em Fazer upload de arquivos.
  6. Na caixa de diálogo do arquivo, selecione o arquivo compressed-image.tar.gz do qual você fez download para o sistema. O upload do arquivo é feito a partir da sua estação de trabalho local. Essa etapa pode levar muitas horas dependendo do tamanho do seu arquivo de imagem compactado e da velocidade da sua conexão de rede.

Depois de fazer upload da imagem para o Google Cloud Storage, importe o arquivo de imagem para sua lista de imagens personalizadas.

  1. No Console do GCP, acesse a página "Imagens".

    Acessar a página "Imagens"

  2. Na parte superior da página, clique em Criar imagem.
  3. No campo Nome, especifique um nome exclusivo para a imagem.
  4. Opcionalmente, especifique uma família para a nova imagem ou defina configurações específicas de criptografia para ela.
  5. Clique no meu Origem e selecione Arquivo do Cloud Storage.
  6. Informe o caminho para o arquivo compressed-image.tar.gz que você fez upload para o Cloud Storage.

    [BUCKET_NAME]/compressed-image.tar.gz
    
  7. Clique no botão Criar para importar a imagem. O processo pode levar muitos minutos dependendo do tamanho da imagem do disco de inicialização.

Agora, a imagem faz parte da página "Imagens", mas você precisa configurar o carregador de inicialização antes de usá-la para criar uma instância de máquina virtual funcional.

gcloud e gsutil

Use as ferramentas gsutil e gcloud para fazer upload do arquivo compactado de imagem de disco de inicialização. Conclua esse processo no sistema em que criou a imagem de disco de inicialização ou copie esse arquivo para outro sistema e conclua o processo de upload.

  1. Instale e inicialize o SDK do Cloud no sistema de que você planeja fazer upload de compressed-image.tar.gz.

  2. Use a ferramenta gsutil para criar um novo intervalo do Cloud Storage.

     $ gsutil mb gs://[BUCKET_NAME]
     

  3. Faça upload do arquivo compressed-image.tar.gz para o novo intervalo.

     $ gsutil cp compressed-image.tar.gz gs://[BUCKET_NAME]
     

  4. Importe o arquivo de imagem como uma nova imagem personalizada.

     $ gcloud compute images create [IMAGE_NAME] --source-uri gs://[BUCKET_NAME]/compressed-image.tar.gz
     

A imagem passa a fazer parte da lista de imagens personalizadas, porém configure o carregador de inicialização para usar a imagem na criação de uma instância de máquina virtual funcional.

  $ gcloud compute images list --no-standard-images
  
  NAME                                            PROJECT                  FAMILY                    DEPRECATED  STATUS
  [IMAGE_NAME]                                    [PROJECT_ID]                                                   READY
  

Testar a imagem importada para garantir o funcionamento dela

Confirme se a imagem importada funciona conforme esperado. Crie uma instância usando um disco de inicialização que utiliza a imagem importada.

Console

  1. No Console do GCP, acesse a página "Instâncias de VMs".

    Acessar a página "Instâncias"

  2. Clique no botão "Criar instância".
  3. Na seção "Disco de inicialização", clique em Alterar para configurar o disco de inicialização.
  4. Na guia Imagens personalizadas, clique na imagem que você importou.
  5. Clique em Selecionar para confirmar a configuração do disco de inicialização.
  6. Clique no botão Criar para gerar a instância.

gcloud

gcloud compute instances create [INSTANCE_NAME] --zone [ZONE] --image [IMAGE_NAME]

onde:

  • [INSTANCE_NAME] é o nome exclusivo da sua instância;
  • [ZONE] é a zona onde você criou o disco independente;
  • [IMAGE_NAME] é o nome da imagem que você importou.

Depois de criar a instância, confirme se ela está sendo inicializada corretamente. Confira a saída da porta serial:

Console

  1. No Console do GCP, acesse a página "Instâncias de VMs".

    Acessar a página "Instâncias"

  2. Na lista de instâncias, clique no nome da instância que você criou a partir da imagem importada. A página de detalhes da instância é aberta.
  3. Na parte inferior da página de detalhes da instância, clique em Visualizar porta serial para verificar a saída da porta serial para essa instância.

Se a instância parar em Booting from Hard Disk 0..., solucione os problemas no ambiente do Compute Engine. Também é possível reconfigurar o disco de inicialização no sistema original e repetir o processo de importação.

gcloud

gcloud compute instances get-serial-port-output [INSTANCE_NAME]

Se a instância parar em Booting from Hard Disk 0..., solucione os problemas no ambiente do Compute Engine. Também é possível reconfigurar o disco de inicialização no sistema original e repetir o processo de importação.

Teste também a instância quando se conectar a ela. Faça isso por meio de uma destas opções:

  • SSH: se a instância tem uma configuração do SSH funcional, conecte-se à instância usando o SSH e a chave privada. Encontre o endereço IP da instância na página Instâncias.
  • Console serial interativo: para fazer o login na instância sem o SSH, ative o console serial interativo e faça login com um nome de usuário e uma senha.

Como resolver problemas em discos de inicialização

Caso a instância não seja inicializada e você não consiga se conectar nem fazer login nela por meio do console serial interativo, identifique o motivo pelo qual o disco de inicialização não está concluindo o processo.

Depois de identificar em que parte está ocorrendo a falha na inicialização, corrija o erro usando uma das seguintes opções:

Como resolver problemas em discos de inicialização no Compute Engine

Ative sua imagem importada em um disco secundário anexado a uma instância de máquina virtual temporária. Use o Console do GCP ou a ferramenta gcloud para criar um disco independente da imagem de que fez upload e crie também uma máquina virtual temporária com o disco independente anexado. Você pode usar essa instância para modificar arquivos no disco independente e corrigir erros que provocam falha no processo de inicialização da imagem.

Console

Crie um disco independente a partir da imagem do disco de inicialização que você importou. Desanexe um disco de inicialização de uma instância e crie a instância usando esse disco.

  1. No Console do GCP, acesse a página "Discos".

    Acessar a página "Discos"

  2. Clique em Criar disco.
  3. Na página Criar novo disco, especifique os seguintes atributos:
    • Zona: Selecione uma zona próxima de você. Use essa mesma zona ao criar sua instância temporária.
    • Tipo de origem: Imagem
    • Imagem de origem: Especifique o nome da imagem do disco de inicialização que você importou.
  4. Clique no botão Criar para criar o disco.

Crie uma instância temporária em que seja possível anexar o disco independente e configure o carregador de inicialização para funcionar em um ambiente do Console do GCP.

  1. No Console do Cloud Platform, acesse a página "Instâncias de VMs".

    Acessar a página "Instâncias"

  2. Clique no botão Criar instância.
  3. Na página Criar nova instância, especifique um nome e uma zona em que ficará a instância. A zona precisa ser a mesma em que você criou o disco independente.
  4. Expanda a seção Gerenciamento, segurança, discos, rede, locatário único.
  5. Na guia Discos, da seção Discos adicionais, clique em Anexar disco atual. Uma nova seção será exibida.
  6. Na seção Disco, selecione o disco independente que foi criado no menu suspenso. Isso anexa o disco independente à instância para que seja possível ativá-lo e, posteriormente, modificar o respectivo conteúdo.
  7. Clique em Concluído para terminar de anexar o disco.
  8. Clique no botão "Criar" para gerar a instância.

gcloud

Crie um disco independente a partir da imagem do disco de inicialização que você importou. Desanexe um disco de inicialização de uma instância e crie a instância usando esse disco.

gcloud compute disks create [DISK_NAME] --zone [ZONE] --image [IMAGE_NAME]

onde:

  • [DISK_NAME] é o nome do novo disco independente;
  • [ZONE] é a zona próxima a você. Use a mesma zona quando criar a instância temporária;
  • [IMAGE_NAME] é o nome da imagem do disco de inicialização que você importou.

Crie uma instância temporária em que seja possível anexar o disco independente e configure o carregador de inicialização para funcionar em um ambiente do Console do GCP.

gcloud compute instances create [INSTANCE_NAME] --zone [ZONE] --disk name=[DISK_NAME]

em que:

  • [INSTANCE_NAME] é o nome exclusivo da sua instância;
  • [ZONE] é a zona em que você criou o disco independente;
  • [DISK_NAME] é o nome do disco independente criado a partir da imagem de disco de inicialização importado.

Depois de criar a instância com o disco independente anexado, você terá um ambiente virtual em que é possível modificar o carregador de inicialização a partir da imagem do disco de inicialização original.

Conecte-se à instância, ative o disco independente e configure o carregador de inicialização para que ele seja executado no Compute Engine.

  1. Conecte-se à instância temporária usando o SSH do navegador ou o comando gcloud compute ssh.
  2. Use o comando blkid para identificar o disco que quer modificar e as partições que precisa ativar. Nesse exemplo, /dev/sdb é o disco que você importou.

    $ lsblk
    
    NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sda      8:0    0   10G  0 disk
    └─sda1   8:1    0   10G  0 part /
    sdb      8:16   0  100G  0 disk
    ├─sdb1   8:17   0   96G  0 part
    ├─sdb2   8:18   0    1K  0 part
    └─sdb5   8:21   0    4G  0 part
    
  3. Ative a partição raiz a partir do disco independente no diretório /tmp. Nesse exemplo, /dev/sdb1 é a partição raiz e as outras partições não exigem modificações. O esquema de partição pode exigir a ativação de várias partições para acessar todos os arquivos que você precisa mudar.

    $ sudo mount /dev/sdb1 /tmp
    
  4. Edite os arquivos que possam provocar falha do disco no processo de inicialização. Para mais detalhes, consulte as instruções de configuração do carregador de inicialização.

  5. Desconecte o disco de inicialização da instância temporária.

    $ sudo umount /tmp
    

Quando terminar a configuração do disco, desanexe-o e use-o como disco de inicialização para a nova instância.

Console

Desanexe o disco independente da instância temporária.

  1. No Console do Cloud Platform, acesse a página "Instâncias de VMs".

    Acessar a página "Instâncias"

  2. Na lista de instâncias, clique no nome da instância temporária em que você modificou o disco de inicialização independente. A página de detalhes da instância é aberta.
  3. No topo da página de detalhes da instância, clique em Editar.
  4. Na seção Discos adicionais, clique no X ao lado do disco independente para indicar que você quer desanexá-lo da instância temporária.
  5. Na parte inferior da página de detalhes da instância, clique em Salvar para que as alterações entrem em vigor.

Use o disco independente desanexado para criar uma nova instância.

  1. No Console do Cloud Platform, acesse a página "Instâncias de VMs".

    Acessar a página "Instâncias"

  2. Clique no botão Criar instância.
  3. Na página Criar nova instância, especifique um nome e uma zona em que ficará a instância. A zona precisa ser a mesma em que você criou o disco independente.
  4. Na seção Disco de inicialização, clique em Alterar para configurar o disco de inicialização.
  5. Na guia Discos atuais, selecione o disco de inicialização independente para usá-lo na inicialização dessa nova instância.
  6. Clique no botão "Criar" para criar a instância.

gcloud

Desanexe o disco independente da instância temporária.

gcloud compute instances detach-disk [INSTANCE_NAME] --disk [DISK_NAME]

onde:

  • [INSTANCE_NAME] é o nome exclusivo da sua instância;
  • [DISK_NAME] é o nome do novo disco independente.

Use o disco independente desanexado para criar uma nova instância.

gcloud compute instances create [INSTANCE_NAME] --zone [ZONE] --disk name=[DISK_NAME],boot=yes

onde:

  • [INSTANCE_NAME] é o nome exclusivo da sua instância;
  • [ZONE] é a zona em que está o disco independente;
  • [DISK_NAME] é o nome do disco independente criado a partir da imagem de disco de inicialização importado.

Teste a instância criada usando o disco de inicialização modificado. Se ainda não conseguir se conectar à instância, leia sobre Saída do console serial novamente para identificar onde o processo de inicialização está falhando. Repita o processo de solução de problemas até corrigir as irregularidades na imagem de disco de inicialização.

A seguir

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Documentação do Compute Engine