É 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
- Para usar os exemplos de linha de comando deste guia, faça o seguinte:
- Instale ou atualize para a versão mais recente da Google Cloud CLI.
- Defina uma região e uma zona padrão.
- Para usar os exemplos de API deste guia, configure o acesso à API.
Permissões exigidas para a tarefa
Para executar esta tarefa, é preciso ter a permissão a seguir:
compute.instances.detachDisk
na instânciacompute.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 CLI 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
- Acesse a página "Instâncias de VM".
- Se solicitado, selecione o projeto e clique em Continuar.
- Clique na instância de que você quer remover o disco de inicialização.
- Na parte superior da página, clique em Interromper.
- Na parte superior da página, clique em Editar.
- 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.
- 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
- Acesse a página "Instâncias de VM".
- Se solicitado, selecione o projeto e clique em Continuar.
- Clique na instância de que você quer anexar o disco de inicialização.
- Se a instância da VM ainda não tiver sido interrompida, clique em Interromper na parte superior da página.
- Clique em Editar no topo da página.
- Role para baixo até a seção Disco de inicialização.
- Clique em Adicionar item.
- Selecione um disco de inicialização no menu suspenso.
- 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
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 Google 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 CLI gcloud ou na API Compute Engine.
- Acesse a página "Instâncias de VM".
- Se solicitado, selecione o projeto e clique em Continuar.
- Clique na instância de que você quer anexar o disco de inicialização.
- Se a instância da VM ainda não tiver sido interrompida, clique em Interromper na parte superior da página.
- Clique em Editar no topo da página.
- Role para baixo até a seção Disco de inicialização.
- Clique em X ao lado do disco de inicialização atual.
- Clique em Adicionar item.
- Selecione um disco de inicialização no menu suspenso.
- Clique em Save.
O console do Google Cloud continua para 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.