Este documento explica como anexar e reanexar discos de inicialização e não de inicialização a instâncias bare metal e de máquina virtual (VM) do Compute Engine.
A remoção do disco de inicialização de uma instância ajuda a concluir as seguintes tarefas sem precisar recriar a instância:
- Substituir o disco de inicialização de uma instância por outro
- Reparar o disco de inicialização de uma instância anexando-o temporariamente a outra instância
A remoção de um disco que não é de inicialização de uma instância e a anexação a outra permite usar os dados do disco da segunda instância sem precisar copiar os dados para um novo disco.
Antes de começar
-
Configure a autenticação, caso ainda não tenha feito isso.
Com isso, você confirma sua identidade para acesso a Cloud de Confiance by S3NS serviços e APIs do. Para executar
código ou amostras de um ambiente de desenvolvimento local, faça a autenticação no
Compute Engine selecionando uma das seguintes opções:
Selecione a guia para como planeja usar as amostras nesta página:
Console
Quando você usa o Cloud de Confiance console para acessar Cloud de Confiance by S3NS serviços e APIs, não é necessário configurar a autenticação.
gcloud
-
Instale a Google Cloud CLI e faça login na CLI gcloud com sua identidade federada. Depois de fazer login, inicialize a Google Cloud CLI executando o seguinte comando:
gcloud init
-
- Defina uma região e uma zona padrão.
REST
Para usar as amostras da API REST desta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para a CLI gcloud.
Instale a Google Cloud CLI e faça login na CLI gcloud com sua identidade federada.
Saiba mais em Autenticar para usar REST na documentação de autenticação do Cloud de Confiance .
Permissões exigidas para a tarefa
Para executar esta tarefa, é preciso ter a permissão a seguir:
compute.instances.detachDiskna instânciacompute.instances.attachDiskna instância
Mover um disco de inicialização entre instâncias
Antes de mover um disco de inicialização entre instâncias que usam séries de máquinas diferentes, confirme se a arquitetura do disco de inicialização de ambas as instâncias corresponde. Por exemplo, não é possível anexar um disco de inicialização de uma instância C4A a uma instância C4 porque C4A e C4 usam arquiteturas Arm e x86, respectivamente. Para determinar a arquitetura de uma série de máquinas, consulte a linha Arquitetura na tabela de comparação de séries de máquinas.
Para outros fatores a serem considerados ao mover um disco de inicialização entre séries de máquinas, consulte Mover a carga de trabalho para uma nova instância de computação.
Restrições
- A arquitetura do disco de inicialização precisa corresponder à arquitetura da instância. Por exemplo, não é possível anexar um disco de inicialização que usa x86 a uma instância Arm.
- É 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.
- Se estiver usando a CLI gcloud ou a REST, será possível anexar apenas os discos de inicialização atuais a uma instância de VM.
- Não é possível remover um disco SSD local de uma instância. Só é possível anexar discos SSD locais a uma instância quando você a cria.
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.
- Clique em Parar para parar a VM. Se não houver a opção Parar, clique em Mais ações > Parar.
- Clique em Editar.
- Na seção Disco de inicialização, clique em Remover disco de inicialização.
- Clique em Salvar.
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.
REST
Crie 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 VM estiver em execução, clique em Parar para parar a VM. Se não houver a opção Parar, clique em Mais ações > Parar.
- Clique em Editar.
- Acesse a seção Disco de inicialização.
- Clique em Adicionar item.
- Selecione um disco de inicialização no menu suspenso.
- Clique em Salvar.
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;
REST
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 Cloud de Confiance console 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.
Este recurso não está disponível pela CLI gcloud ou REST.
- 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 VM estiver em execução, clique em Parar para parar a VM. Se não houver a opção Parar, clique em Mais ações > Parar.
- Clique em Editar no topo da página.
- Na seção Disco de inicialização, clique em Remover disco de inicialização.
- Clique em Adicionar item.
- Selecione um disco de inicialização no menu suspenso.
- Clique em Salvar.
O Cloud de Confiance console 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.
Anexar um disco que não é de inicialização a uma instância
Para instruções detalhadas sobre como anexar um disco novo ou atual que não seja de inicialização a uma instância em execução, consulte Anexar um disco a uma instância.
Remover um disco que não é de inicialização de uma instância
Não é necessário interromper uma instância para remover um disco que não seja de inicialização. É possível realizar essas operações enquanto a instância está em execução.
Console
- Acesse a página "Instâncias de VM".
- Clique na instância de que você quer remover o disco.
- Clique em Editar.
- Na seção Discos extras, encontre o disco que você quer remover e clique em close Remover disco.
- Clique em Salvar.
gcloud
Use o comando gcloud compute instances detach-disk (em inglês).
gcloud compute instances detach-disk INSTANCE_NAME \ DISK_OR_DEVICE_NAME --disk-scope DISK_SCOPE
Substitua:
INSTANCE_NAME: o nome da instância.DISK_OR_DEVICE_NAME: o nome do disco ou o nome do dispositivo especificado quando o disco foi criado. O nome do dispositivo é o nome que o SO usa para identificar o disco. Se você forneceu um nome de dispositivo para o disco, especifique o nome do dispositivo com a sinalização--device-name.- Para especificar o nome do disco, especifique
--disk=DISK_NAME, em queDISK_NAMEé o nome do disco, por exemplo,my-data-disk. Para especificar o nome do dispositivo, especifique
--device-name=DEVICE_NAME, em queDEVICE_NAMEé o nome do dispositivo fornecido para o disco.Para encontrar o nome do dispositivo do disco, execute o
gcloud compute instances describecomando. Por exemplo, para imprimir uma lista dos discos anexados da instância no formato JSON, executegcloud compute instances describe INSTANCE_NAME --format="json(disks)".
- Para especificar o nome do disco, especifique
DISK_SCOPE: o escopo do disco. Para um disco zonal, especifiquezonal. Para um disco regional, especifiqueregional.
REST
Crie uma solicitação POST para o método instances.detachDisk.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/detachDisk?deviceName=DEVICE_NAME
Substitua:
PROJECT_ID: ID do projeto.INSTANCE_NAME: o nome da instância.ZONE: a zona em que a instância está localizada.DEVICE_NAME: o nome do dispositivo do disco. Para encontrar o nome do dispositivo do disco, faça uma solicitaçãoGETpara oinstancesrecurso para conferir os discos anexados e os nomes dos dispositivos.