Como desconectar e reconectar discos de inicialização

É possível remover os discos de inicialização da sua instância de VM e anexar novos discos de inicialização. Esse recurso simplifica o processo de reparo de discos de inicialização, permitindo que você os monte em outra instância de VM sem excluir a instância original. Além disso, é possível substituir os discos de inicialização de uma instância em vez de precisar recriá-la.

Se uma instância de VM não tiver um disco de inicialização, ocorrerá um erro caso você tente iniciá-la. No entanto, ainda é possível editar outras propriedades da instância.

Antes de começar

Permissões exigidas para a tarefa

Para executar esta tarefa, é preciso ter a permissão a seguir:

  • compute.instances.detachDisk na instância
  • compute.instances.attachDisk na instância

Restrições

  • É possível anexar ou remover um disco de inicialização somente de uma instância de VM interrompida.
  • É possível anexar apenas um disco de inicialização por instância de VM.
  • Ao usar a ferramenta gcloud ou a API Compute Engine, anexe somente discos de inicialização existentes a uma instância de VM.

Remover um disco de inicialização

Antes de desanexar o disco de inicialização da instância, interrompa a instância. Não é preciso desconectar o disco.

Console

  1. Acesse a página "Instâncias de VM".

    Acessar instâncias de VM

  2. Se solicitado, selecione o projeto e clique em Continuar.
  3. Clique na instância de que você quer remover o disco de inicialização.
  4. Na parte superior da página, clique em Interromper.
  5. Na parte superior da página, clique em Editar.
  6. Role a tela para baixo até a seção Disco de inicialização e clique em X ao lado do disco de inicialização que você quer remover.
  7. Clique em Save.

gcloud

Use o gcloud compute instances detach-disk comando para remover o disco de inicialização da instância:

gcloud compute instances detach-disk INSTANCE_NAME \
    --disk=DISK_NAME

Substitua:

  • INSTANCE_NAME: o nome da instância.
  • DISK_NAME: o nome do disco que você quer remover. Geralmente, o nome do disco é igual ao da instância.

API

Na API, construa uma solicitação POST para remover o disco:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/detachDisk?deviceName=DISK_NAME

Substitua:

  • PROJECT_ID: ID do projeto.
  • INSTANCE_NAME: o nome da instância.
  • ZONE: a zona em que as instâncias estão localizadas.
  • DISK_NAME: o nome do disco que você quer remover. Geralmente, o nome do disco é igual ao da instância.

Reanexar um disco de inicialização

Qualquer disco pode ser reanexado como um disco de inicialização a uma instância, desde que ela ainda não tenha um disco como esse anexado e ele esteja na mesma zona da instância da VM. Caso personalize um disco de inicialização, você precisará verificar se ele é inicializado corretamente depois de anexado.

O disco existente e o novo disco precisam ser compatíveis com UEFI ou não. Para criar um disco compatível com UEFI, use o comando gcloud compute disk create com a sinalização --guest-os-features definida como UEFI_COMPATIBLE.

Console

  1. Acesse a página "Instâncias de VM".

    Acessar instâncias de VM

  2. Se solicitado, selecione o projeto e clique em Continuar.
  3. Clique na instância de que você quer anexar o disco de inicialização.
  4. Se a instância da VM ainda não tiver sido interrompida, clique em Interromper na parte superior da página.
  5. Clique em Editar no topo da página.
  6. Role para baixo até a seção Disco de inicialização.
  7. Clique em Adicionar item.
  8. Selecione um disco de inicialização no menu suspenso.
  9. Clique em Save.

gcloud

Use o comando gcloud compute instances attach-disk para anexar ou reanexar um disco de inicialização a uma instância de VM. Inclua a sinalização --boot para indicar que o disco está sendo usado como o disco de inicialização da instância. Se essa sinalização estiver ausente, o disco será anexado como um disco de dados que não seja de inicialização.

gcloud compute instances attach-disk INSTANCE_NAME \
    --disk=DISK_NAME \
    --boot

Substitua:

  • INSTANCE_NAME: o nome da instância.
  • DISK_NAME: o nome do disco que você quer anexar. Ele pode ser igual ao nome da instância;

API

Na API, crie uma solicitação POST para anexar o disco. Inclua o parâmetro opcional "boot": true para indicar que esse disco é o de inicialização. Se esse parâmetro estiver ausente, o disco será anexado como um disco de dados que não seja de inicialização.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/attachDisk
{
 "boot": true,
 "source": "zones/ZONE/disks/DISK_NAME"
}

Substitua:

  • PROJECT_ID: ID do projeto.
  • INSTANCE_NAME: o nome da instância a que você está anexando o novo disco permanente.
  • ZONE: a zona em que a instância e o novo disco estão localizados.
  • DISK_NAME: o nome do novo disco.

Depois de anexar o disco à instância de VM, reinicie a instância.

Atualizar um disco de inicialização de uma instância

Só é possível usar o Console do Cloud para atualizar o disco de inicialização para uma VM em uma etapa. Especificamente, é possível desanexar um disco de inicialização atual e anexar um novo com apenas uma ação.

Esse recurso não está disponível na ferramenta gcloud ou na API Compute Engine.

  1. Acesse a página "Instâncias de VM".

    Acessar instâncias de VM

  2. Se solicitado, selecione o projeto e clique em Continuar.
  3. Clique na instância de que você quer anexar o disco de inicialização.
  4. Se a instância da VM ainda não tiver sido interrompida, clique em Interromper na parte superior da página.
  5. Clique em Editar no topo da página.
  6. Role para baixo até a seção Disco de inicialização.
  7. Clique em X ao lado do disco de inicialização atual.
  8. Clique em Adicionar item.
  9. Selecione um disco de inicialização no menu suspenso.
  10. Clique em Save.

O Console do Cloud continua a remover o disco de inicialização atual e anexar o novo disco que você especificou. Quando esse processo estiver concluído, reinicie a instância da VM.

A seguir