Em determinadas situações, pode querer mover a sua carga de trabalho de uma instância de máquina virtual (VM) existente para uma VM mais recente. Os motivos para mudar para uma nova VM incluem o seguinte:
- Tire partido dos novos tipos de máquinas para velocidades de armazenamento ou de rede mais rápidas. Por exemplo, atualize de C2 para H3 para uma largura de banda de rede melhorada.
- Beneficie de um melhor desempenho de preços em relação à instância de VM de origem. Por exemplo, atualize de N1 para N4 para obter um maior valor no processador Intel Xeon de 5.ª geração.
- Use funcionalidades apenas disponíveis na nova instância de VM. Por exemplo, atualize de N4 para C4 para tirar partido de opções adicionais de desempenho e manutenção ou atualize de H3 para H4D para obter suporte de RDMA na nuvem.
- Altere uma instância de máquina virtual (VM) para uma instância bare metal.
- Adicione discos SSD locais à sua instância de VM C3 ou C3D.
Quando atualiza para a série de máquinas de geração mais recente, pode usar o procedimento mais simples descrito no artigo Edite o tipo de máquina de uma instância de computação se a VM atual (de origem) cumprir as seguintes condições:
- A versão do sistema operativo (SO) é suportada pela nova série de máquinas.
- O tipo de disco do disco de arranque associado à VM de origem é suportado pela nova série de máquinas.
- A VM não usa armazenamento SSD local.
- A sua VM com GPUs anexadas usa um tipo de máquina G2. Consulte o artigo Adicione ou remova GPUs para ver detalhes.
- A VM está a usar apenas funcionalidades suportadas pela nova série de máquinas.
- A VM não faz parte de um grupo de instâncias geridas (GIG).
- A VM usa a interface de rede gVNIC.
- Não tem de criar interfaces de rede adicionais para que a sua instância use as novas funcionalidades.
Antes de começar
-
Se ainda não o tiver feito, configure a autenticação.
A autenticação valida a sua identidade para aceder a Google Cloud serviços e APIs. Para executar código ou exemplos a partir de um ambiente de desenvolvimento local, pode autenticar-se no Compute Engine selecionando uma das seguintes opções:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Instale a CLI Google Cloud. Após a instalação, inicialize a CLI gcloud executando o seguinte comando:
gcloud init
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
- Set a default region and zone.
REST
Para usar os exemplos da API REST nesta página num ambiente de desenvolvimento local, usa as credenciais que fornece à CLI gcloud.
Instale a CLI Google Cloud. Após a instalação, inicialize a CLI gcloud executando o seguinte comando:
gcloud init
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
Para mais informações, consulte o artigo Autenticar para usar REST na Google Cloud documentação de autenticação.
Funções necessárias
Para receber as autorizações de que precisa para editar ou alterar uma VM, peça ao seu administrador que lhe conceda as seguintes funções da IAM no projeto:
-
Administrador de instâncias do Compute (v1) (
roles/compute.admin.v1
) -
Para alterar o tipo de rede:
Administrador de rede do Compute Engine (
roles/compute.networkAdmin
)
Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.
Estas funções predefinidas contêm as autorizações necessárias para editar ou alterar uma VM. Para ver as autorizações exatas que são necessárias, expanda a secção Autorizações necessárias:
Autorizações necessárias
São necessárias as seguintes autorizações para editar ou alterar uma VM:
-
Para alterar o tipo de máquina:
-
compute.instances.stop
no projeto -
compute.instances.create
no projeto -
compute.instances.start
no projeto -
compute.instances.setMachineType
na instância
-
-
Para criar um instantâneo do disco:
-
compute.snapshots.create
no projeto -
compute.disks.createSnapshot
no disco
-
-
Para criar um novo disco:
-
compute.disks.list
no projeto -
compute.disks.create
no projeto -
compute.disks.update
no projeto
-
-
Para anexar um disco a uma VM:
-
compute.instances.attachDisk
na instância -
compute.disks.use
no disco
-
-
Para eliminar um disco:
compute.disks.delete
no projeto -
Para fazer alterações ao tipo de rede:
-
compute.networks.list
no projeto -
compute.networks.update
no projeto
-
Também pode conseguir estas autorizações com funções personalizadas ou outras funções predefinidas.
Avalie as opções de migração de VMs
A migração de um tipo de máquina para outro depende de vários fatores, incluindo: a disponibilidade regional do novo tipo de máquina e a compatibilidade das opções de armazenamento e das interfaces de rede relativamente ao SO convidado da origem e da nova série de máquinas.
Requisitos de computação
Reveja os seguintes requisitos para a sua instância atual e o novo tipo de máquina:
- Explore a documentação do recurso da família de máquinas para identificar os tipos de máquinas adequados à sua carga de trabalho. Pondere se a sua aplicação requer hardware específico (GPUs), alto desempenho ou custos mais baixos.
- Reveja as funcionalidades dos tipos de discos suportados pelo novo tipo de máquina. A maioria das funcionalidades do disco persistente, mas não todas, é suportada pelo Hyperdisk. No entanto, o Hyperdisk oferece funcionalidades adicionais que não estão disponíveis com o Persistent Disk.
- Reveja as funcionalidades da potencial série de máquinas. A nova série de máquinas pode não suportar as mesmas funcionalidades que usa com a sua série de máquinas atual, como tipos de máquinas personalizados, SSD local ou VM protegida.
- Reveja as regiões e as zonas para garantir que a nova série de máquinas está disponível em todas as regiões, tal como a sua VM atual. Pode ter de ajustar a implementação, a alta disponibilidade e os planos de recuperação de desastres.
- Reveja o seu plano de migração do SO:
- Se a nova VM exigir uma versão mais recente do SO, verifique se as suas aplicações são compatíveis com a versão mais recente do SO.
- Se estiver a mudar para o Arm e não estiver disponível uma imagem do Arm para a sua versão atual do SO, escolha um novo SO ou uma versão do SO para executar as suas aplicações e verifique se as aplicações são compatíveis com o novo SO.
- É possível migrar de uma instância de VM C3 para uma instância bare metal C3, desde que a instância de VM C3 de origem use um sistema operativo e um controlador de rede suportados.
- Se estiver a migrar de uma série de máquinas que não seja a C3 para uma instância bare metal, tem de criar uma nova instância. Pode ter de executar o seu próprio hipervisor; no entanto, também pode executar qualquer sistema operativo suportado pelo C3 metal, desde que o controlador IDPF esteja ativado. As instâncias bare metal usam a interface de rede IDPF apresentada apenas como uma função física e não como uma função virtual.
Requisitos de armazenamento
Reveja os seguintes requisitos de armazenamento para a sua instância atual e o novo tipo de instância:
- Reveja os tipos de armazenamento suportados e as interfaces de armazenamento suportadas para a nova série de máquinas.
- Por predefinição, as séries de máquinas de primeira e segunda geração usam apenas o tipo de armazenamento de disco persistente e as interfaces VirtIO-SCSI.
- As máquinas de terceira geração e mais recentes (como M3, C3 e N4) suportam apenas a interface NVMe e algumas suportam apenas os tipos de armazenamento Hyperdisk e SSD local.
- As instâncias de hardware físico suportam apenas o Hyperdisk.
- Compatibilidade com discos:
- Se o disco de arranque usar um tipo de disco não suportado pela nova série de máquinas, por exemplo,
pd-standard
, tem de criar um novo disco de arranque para a nova VM. - Se estiver a atualizar o SO para uma nova versão e o sistema operativo não suportar atualizações no local, tem de criar um novo disco de arranque. Todos os dados no disco de arranque de origem são perdidos, a menos que os copie para um disco não de arranque temporário. Em seguida, cria um novo disco de arranque e copia os dados armazenados no disco de não arranque temporário para o novo disco de arranque.
- Se não estiver a atualizar a versão do SO, pode tirar uma captura instantânea do disco de arranque atual e restaurá-la para o novo tipo de disco suportado. Quando cria uma VM, pode usar este novo disco como o disco de arranque.
- Se um disco não de arranque usar um tipo de disco que não é suportado pela nova série de máquinas, pode usar uma captura de ecrã para alterar o disco de origem para um novo tipo de disco, conforme descrito em Alterar o tipo de disco.
- Se o disco de arranque usar um tipo de disco não suportado pela nova série de máquinas, por exemplo,
- Não é possível mover discos SSD locais para uma nova VM. Pode anexar um disco suficientemente grande para armazenar todos os dados do SSD local à sua VM atual e, em seguida, usar uma captura de ecrã para alterar o disco de origem para um novo tipo de disco, conforme descrito em Alterar o tipo de disco. Depois de criar uma VM com discos SSD locais anexados, pode copiar os dados de volta para os discos SSD locais.
- Se a sua instância de VM atual usar discos num conjunto de armazenamento, mas estiver a mover a sua carga de trabalho para uma VM numa região diferente, tem de recriar os discos e o conjunto de armazenamento na nova região.
- Se a nova série de máquinas usar uma interface de disco diferente (por exemplo, NVMe em vez de SCSI), os nomes dos dispositivos de disco no SO convidado são diferentes. Certifique-se de que as suas aplicações e scripts usam nomes de dispositivos persistentes ou symlinks quando fazem referência aos discos anexados.
Requisitos de rede
Reveja os seguintes requisitos de rede para a sua instância atual e o novo tipo de instância:
Reveja as interfaces de rede suportadas para a nova VM.
- Por predefinição, as séries de máquinas de primeira e segunda geração usam apenas a interface de rede VirtIO.
- As séries de máquinas de terceira geração e mais recentes (como M3, C3 e N4) suportam apenas a interface de rede gVNIC.
- As instâncias bare metal suportam apenas a interface de rede IDPF.
Certifique-se de que a sua aplicação e sistema operativo suportam as interfaces disponíveis para a série de máquinas.
Reveja a configuração de rede da VM para determinar se precisa de manter os endereços IP atribuídos. Se for o caso, tem de promover os endereços IP a endereços IP estáticos.
Se usar o desempenho de rede de nível 1 por VM com a sua VM atual, certifique-se de que está disponível ou é necessário com a nova série de máquinas. Por exemplo, pode usar a rede de Nível 1 com um tipo de máquina C2, mas não é necessária com uma VM H3.
Para determinar o tipo de interface de rede da sua VM atual, use o comando
gcloud compute instances describe
para ver onic-type
da VM:gcloud compute instances describe VM_NAME --zone=ZONE
Se a sua VM tiver um
nic-type
definido comoVIRTIO
, não pode alterar o tipo de interface de rede. Tem de criar uma nova VM e definir o tipo de interface de rede como gVNIC.Prepare-se para mover as suas VMs existentes
Depois de concluir a secção de avaliação, o passo seguinte é preparar-se para mover as instâncias de VM pedindo recursos para a nova instância de VM e preparando cópias de segurança da instância de VM de origem.
Prepare os recursos de computação
Conclua os passos seguintes para se preparar para mover a sua instância atual para uma nova instância:
- Peça quota na região e nas zonas onde planeia mover os seus recursos. Se tiver uma quota existente para um tipo de máquina, pode pedir para mover essa quota. O processo demora alguns dias a ser concluído.
- Crie uma reserva para as novas instâncias de VM para garantir que os recursos da máquina estão disponíveis na nova região e zonas. Certifique-se de que compreende como os recursos reservados são consumidos e teste se consegue consumir recursos reservados.
- Estenda os seus planos de alta disponibilidade e recuperação de desastres para incluir a nova região.
- Se necessário, atualize o SO na VM atual.
- Se for suportado pelo fornecedor do sistema operativo, faça uma atualização no local do SO para uma versão suportada pela nova série de máquinas e verifique se a sua carga de trabalho está a ter o desempenho esperado na nova versão do SO.
- Se não for suportada uma atualização no local do SO, quando criar uma nova VM, tem de criar um novo disco de arranque. Determine as informações que
precisa de copiar do disco de arranque atual e copie-as para uma localização temporária
num disco que não seja de arranque para que possam ser transferidas para a nova VM. Se não tiver
discos não de arranque associados à sua VM atual:
- Para tipos de máquinas de primeira e segunda geração, consulte o artigo Adicione armazenamento de disco persistente à sua VM.
- Para tipos de máquinas de terceira geração e posteriores, consulte o artigo Adicione armazenamento Hyperdisk à sua VM.
- Se aplicável à sua distribuição Linux, verifique as regras udev em
/etc/udev/rules.d/
. Este ficheiro pode conter entradas relevantes para a configuração de hardware da instância atual, mas não da nova instância. Por exemplo, a seguinte entrada garante queeth0
é fornecido pelo controladorvirtio-pci
(VirtIO Net), o que impede que o controladorgve
(gVNIC) forneça esta interface. Isto pode originar scripts de inicialização de rede e problemas de conetividade na nova instância:
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="virtio-pci", ATTR{dev_id}=="0x0", KERNELS=="0000:00:04.0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
Prepare recursos de armazenamento
Conclua os passos seguintes para se preparar para mover os dados nos discos associados à sua instância atual para uma nova instância:
- Nos sistemas Linux, teste as aplicações e os scripts atualizados para se certificar de que funcionam com nomes de dispositivos persistentes ou links simbólicos em vez dos nomes de dispositivos do disco.
- Se estiver a migrar a partir de uma VM que executa o Microsoft Windows:
- Tem de atualizar o controlador NVMe em VMs criadas antes de maio de 2022. Isto aplica-se ao disco de arranque na sua VM atual e a quaisquer instantâneos ou imagens personalizadas criados anteriormente que sejam usados para criar uma VM.
- O Windows tem de ser reconfigurado para começar a usar o controlador NVMe da Microsoft (StorNVMe). Siga as instruções para atualizar o dispositivo de arranque.
- Se a nova VM não suportar os mesmos tipos de discos que a VM atual, pode ter de atualizar os scripts de implementação ou os modelos de instâncias para suportar a nova série de máquinas.
- Se a sua VM atual usar um tipo de disco para o disco de arranque que não é suportado pela nova série de máquinas e estiver a migrar várias VMs com a mesma configuração, crie uma imagem personalizada para usar quando criar as novas VMs:
- Crie um instantâneo do disco de arranque pd-standard da sua VM atual.
- Crie uma imagem personalizada usando o instantâneo do disco como origem.
- Se precisar de mover informações do SSD local, crie um disco vazio com espaço suficiente para fazer uma cópia de segurança dos seus discos SSD local.
- Se possível, use um tipo de disco suportado pela nova VM.
- Se não existirem tipos de discos suportados pela VM atual e pela nova VM, crie um disco temporário com um tipo de disco suportado pela VM atual.
- Anexe o novo disco à VM atual e, em seguida, formate e monte o disco.
- Copie os dados dos discos SSD locais anexados à VM atual para este disco temporário.
Altere o tipo de disco de todos os discos anexados à VM atual que usam um tipo de disco não suportado pela nova VM. Para mover os dados do disco para novos discos, crie instantâneos dos discos. Em alternativa, pode transferir ficheiros de uma VM para a outra.
- Pode tirar os instantâneos enquanto a VM está em execução, mas os dados escritos nos discos depois de tirar o instantâneo não são capturados. Uma vez que as imagens instantâneas são incrementais, pode tirar uma segunda imagem instantânea depois de parar a VM para capturar todas as alterações mais recentes. Esta abordagem deve minimizar o período durante o qual a MV fica indisponível enquanto muda para uma nova MV.
- Em alternativa, pode tirar todas as capturas de ecrã do disco depois de parar a VM. Recomendamos que crie uma captura instantânea de todos os discos associados à sua VM, mesmo que o tipo de disco seja suportado pela nova série de máquinas. Inclua todos os discos temporários que contenham os dados do SSD local copiados.
- O tempo necessário para criar uma captura instantânea de um disco depende de vários fatores, como o tamanho do disco e a quantidade de dados contidos no disco. Por exemplo, se tirar uma captura instantânea de um disco de 1 TiB que esteja 85% cheio, a captura instantânea pode demorar 5 minutos a ser concluída. No entanto, se tirar uma captura instantânea de um disco de 100 TiB que esteja 85% cheio, pode demorar 11 minutos a concluir. Recomendamos que faça instantâneos de teste dos seus discos antes de iniciar o processo de migração para compreender quanto tempo demora a criação de instantâneos.
Se tiver um disco que possa ser colocado offline, pode usar a seguinte abordagem para mover os dados para um novo disco enquanto a VM de origem ainda estiver disponível:
- Desanexe o disco da VM.
- Tire um instantâneo do disco.
- Use a imagem instantânea para criar um novo disco com um tipo de disco suportado pela nova série de máquinas. O novo disco tem de ter o mesmo tamanho ou ser maior do que o disco de origem.
Prepare os recursos de rede
Conclua os passos seguintes para atualizar a configuração de rede usada pela sua instância atual para suportar a nova instância:
- Se a sua VM atual não usar o gVNIC, tem de criar uma nova instância com uma interface de rede que use o gVNIC. Reveja a vista geral da utilização do gVNIC com VMs do Compute Engine para compreender os passos que tem de seguir quando cria uma nova instância.
- Se estiver a criar uma VM numa nova região, crie uma rede VPC e sub-redes na nova região.
- Se configurou contagens de filas de NIC personalizadas, consulte o artigo Alocações de filas e alteração do tipo de máquina.
- Se quiser manter os endereços IP usados pela VM de origem, promova os endereços IP para endereços IP estáticos.
- Anule a atribuição do endereço IP estático antes de parar a VM de origem.
Prepare o sistema operativo SUSE Enterprise Linux Server
Para evitar dependências específicas do hardware, recompile o
initramfs
(sistema de ficheiros RAM inicial). Isto inclui uma gama mais ampla de controladores e módulos, o que torna o sistema operativo compatível com outros tipos de instâncias. Se não o fizer, vai deparar-se com o problema conhecido que impede o arranque correto da VM.Antes de encerrar o sistema, execute o seguinte comando como raiz para reconstruir o
initramfs
com todos os controladores:sudo dracut --force --no-hostonly
Mova a sua carga de trabalho para a nova VM
Depois de preparar as VMs para a migração, o passo seguinte é mover a carga de trabalho para a nova VM.
Se estiver a mover as suas VMs da primeira geração para a série de máquinas de segunda geração, leia as instruções na página Edite o tipo de máquina de uma VM. Se quiser alterar o nome da VM existente, reveja as informações em Mudar o nome de uma VM.
Autorizações necessárias para esta tarefa
Para realizar esta tarefa, tem de ter as seguintes autorizações:
compute.instances.setMachineType
na VM
Esta secção descreve como mover a sua carga de trabalho de uma VM de primeira ou segunda geração para uma VM de terceira geração (ou mais recente). Durante este procedimento, cria uma nova instância de VM e, em seguida, move as suas cargas de trabalho para a nova VM.
- Quando criar a nova VM, escolha um dos tipos de discos suportados para o disco de arranque, por exemplo, Hyperdisk Balanced.
Crie a nova VM
Quando move as suas cargas de trabalho de VMs de primeira ou segunda geração (por exemplo, N1 ou N2) para VMs de terceira geração ou posteriores, tem de criar primeiro uma nova VM e, em seguida, mover as suas cargas de trabalho.
- Se a VM de origem usar discos não de arranque com um tipo de disco suportado pela nova série de máquinas, desassocie os discos da VM.
- Pare a VM de origem.
- Criar instantâneos de todos os discos que ainda estão anexados à VM de origem.
- Crie uma nova instância de VM de computação com uma imagem pública ou uma imagem personalizada configurada para usar gVNIC.
Quando criar a nova VM, escolha as seguintes opções:
- Selecione o tipo de máquina da série de máquinas que escolheu.
- Selecione uma imagem do SO suportada ou use uma imagem personalizada que criou anteriormente.
- Selecione um tipo de disco suportado para o disco de arranque.
- Se criou novos discos a partir de imagens instantâneas dos discos originais, inclua esses novos discos.
- Especifique a nova rede de VPC se estiver a criar a instância numa região diferente.
- Se o VirtIO e o gVNIC forem suportados para a nova instância, selecione gVNIC.
- Especifique os endereços IP estáticos se tiver promovido os endereços IP efémeros da VM de origem.
- Inicie a nova VM.
Depois de a instância ser iniciada
Agora que a nova instância foi criada e iniciada, conclua os seguintes passos para terminar a configuração da nova instância e copiar todos os dados da instância de origem.
- Anexe os discos que desanexou da VM de origem à nova VM.
- Para todos os discos anexados à VM de origem que usam um tipo de disco não suportado pela nova VM, crie um disco a partir de um instantâneo e anexe-o à nova instância. Quando criar o novo disco, selecione um tipo de disco suportado pela nova VM e especifique um tamanho, pelo menos, tão grande quanto o disco original.
- Se a VM original usou uma política de recursos para quaisquer discos que foram recriados para a nova VM, tem de adicionar a política de recursos aos novos discos.
- Se criou a nova VM com uma imagem de SO pública e não com uma imagem personalizada, faça o seguinte:
- Configure os utilizadores, os controladores, os pacotes e os diretórios de ficheiros necessários na nova instância para suportar a sua carga de trabalho.
- Instale as aplicações e os programas modificados na nova VM. Se necessário, recompilar os programas no novo SO ou arquitetura.
- Opcional: se moveu o conteúdo dos discos SSD local para um disco temporário, e a nova VM tiver armazenamento SSD local anexado, depois de formatar e montar os discos, pode mover os dados do disco temporário para os discos SSD local.
- Reatribua todos os endereços IP estáticos associados à VM de origem à nova VM.
- Conclua todas as tarefas adicionais necessárias para tornar a nova VM altamente disponível, como configurar balanceadores de carga e atualizar as regras de encaminhamento.
- Opcional: atualize as entradas de DNS, se necessário, para a nova VM.
- Recomendado: agende cópias de segurança de discos para os novos discos.
- Recomendado: se alterou o SO para uma versão ou uma arquitetura diferente, recompile as suas aplicações.
Se tiver problemas ao mover a sua carga de trabalho, contacte o seu gestor de conta técnico (TAM) ou a organização de serviços profissionais da Google (PSO) para receber assistência.
Exemplo de migração de n1-standard-8 para n4-standard-8
O exemplo seguinte é uma migração de uma VM
n1-standard-8
para uma VMn4-standard-8
. A VMn1-standard-8
tem um disco de arranquePD-SSD
a executar uma imagemUbuntu1804
e um disco de dadosPD-SSD
. Tem de usar a CLI ou a API REST para este procedimento.Existem duas opções disponíveis para atualizar a sua VM N1 para uma VM N4:
Opção 1: se a sua VM N1 usar a interface de rede
VirtIO
, tem de criar uma nova VM N4. A N4 suporta apenas a interface de redegvnic
e os discos Hyperdisk Balanced. Cria um instantâneo dos discos de arranque e de dados do disco persistente, cria discos Hyperdisk Balanced a partir desses instantâneos, anexa os discos Hyperdisk Balanced e cria a nova VM N4 com os discos Hyperdisk Balanced.Também pode optar por criar um novo disco de arranque Hyperdisk Balanced com uma versão mais recente do SO Ubuntu. Neste cenário, pode criar um novo disco Hyperdisk Balanced a partir do instantâneo do disco de arranque, mas associa esse disco como um disco que não é de arranque à VM N4. Em seguida, pode copiar dados não relacionados com o sistema da imagem instantânea restaurada para o novo disco de arranque.
Opção 2: se a sua VM N1 usar a interface de rede
gvnic
, o sistema operativo tiver um controlador de dispositivo de armazenamento NVMe, não tiver discos SSD locais nem GPUs anexados e não fizer parte de um grupo de instâncias gerido (MIG), pode alterar o tipo de máquina de N1 para N4, mas ainda tem de alterar os tipos de discos de disco persistente para discos equilibrados Hyperdisk. Primeiro, tem de desassociar os discos de arranque e de dados do disco persistente, criar instantâneos dos discos, criar discos Hyperdisk Balanced usando os instantâneos como origem e, em seguida, associar os novos discos Hyperdisk Balanced à sua VM N4 depois de alterar o tipo de máquina. Se a sua VM tiver GPUs anexadas, tem de desanexá-las primeiro.O tempo necessário para criar uma imagem instantânea de um disco depende de vários fatores, como o número total de TBs num disco. Por exemplo, se tirar uma captura instantânea de um disco de 1 TB que esteja 85% cheio, a captura instantânea pode demorar 5 minutos a ser concluída. No entanto, se tirar uma captura instantânea de um disco de 100 TB que esteja 85% cheio, pode demorar 11 minutos a concluir. A Google recomenda que faça capturas de ecrã de teste dos seus discos antes de iniciar o processo de migração para saber quanto tempo demora a captura de ecrã.
gcloud
Opção 1: crie uma nova VM N4 com discos de instantâneos:
Pare a VM com o comando gcloud compute instances stop:
gcloud compute instances stop VM_NAME \ --zone=ZONE
Substitua o seguinte:
VM_NAME
O nome da sua VM atual.n1-standard-8
ZONE
: a zona onde a VM está localizada.
Crie instantâneos dos seus discos. Use o comando gcloud compute snapshots create para criar um instantâneo do disco de arranque e do disco de dados do disco persistente anexados à VM.
gcloud compute snapshots create SNAPSHOT_NAME \ --source-disk=SOURCE_DISK_NAME \ --source-disk-zone=SOURCE_DISK_ZONE
Substitua o seguinte:
SNAPSHOT_NAME
: o nome do resumo que quer criar.SOURCE_DISK_NAME
: o nome do disco de origem.SOURCE_DISK_ZONE
: a zona do disco de origem.
Crie um novo disco Hyperdisk Balanced para o disco de dados repetindo o passo anterior e especificando as informações do disco de dados em vez do disco de arranque. gcloud compute disks create:
gcloud compute disks create DISK_NAME \ --project=PROJECT_NAME \ --type=DISK_TYPE \ --size=DISK_SIZE \ --zone=ZONE \ --source-snapshot=SNAPSHOT_NAME \ --provisioned-iops=PROVISIONED_IOPS \ --provisioned-throughput=PROVISIONED_THROUGHPUT
Substitua o seguinte:
DISK_NAME
: o nome do novo disco que está a criar a partir do disco com captura de ecrã.PROJECT_NAME
: o nome do seu projeto.DISK_TYPE
: o novo tipo de disco. Neste exemplo, é um disco Hyperdisk Balanced.DISK_SIZE
: o tamanho do disco (por exemplo:100GB
).ZONE
: a zona onde o novo disco está localizado.SNAPSHOT_NAME
: o nome do disco de origem do instantâneo.- Opcional:
PROVISIONED_IOPS
: o desempenho de IOPS para o disco (exemplo:3600
). - Opcional:
PROVISIONED_THROUGHPUT
: o desempenho de débito para aprovisionar o disco (exemplo:290
).
Repita o passo anterior para cada disco com instantâneo.
Crie a VM
n4-standard-8
e anexe os discos Hyperdisk Balanced com o comando gcloud compute instances create:gcloud compute instances create VM_NAME \ --project=PROJECT_NAME \ --zone=ZONE \ --machine-type=NEW_MACHINE_TYPE \ --boot-disk-device-name=BOOT_DISK_NAME \ --disk=name=NON_BOOT_DISK_NAME, boot=no \ --network-interface=nic-type=GVNIC
Substitua o seguinte:
VM_NAME
: o nome da nova instância de VM.PROJECT_NAME
: o nome do seu projeto.ZONE
: a zona onde a nova VM está localizada.NEW_MACHINE_TYPE
: o tipo de máquina. Neste exemplo, én4-standard-8
.BOOT_DISK_NAME
O nome do disco de arranque Hyperdisk Balanced que criou a partir do instantâneo do disco de origem anexado à VMn1-standard-8
.NON_BOOT_DISK_NAME
O nome do disco de dados Hyperdisk Balanced que criou a partir do disco de instantâneo de origem anexado à VMn1-standard-8
.
Inicie a VM
n4-standard-8
através do comando gcloud compute instances start:gcloud compute instances start VM_NAME
Substitua
VM_NAME
pelo nome da nova VM.
Opção 2: faça uma atualização da máquina no local:
Esta opção só está disponível se a sua VM N1 usar a interface de rede
gvnic
, o sistema operativo tiver um controlador de dispositivo de armazenamento NVMe, não tiver discos SSD locais nem GPUs anexados e não fizer parte de um grupo de instâncias gerido (MIG). A execução deste procedimento com uma VM N1 com uma interface de redeVirtIO
gera um erro de incompatibilidade da VM.- Parar a VM.
- Desassocie os discos da VM.
- Crie uma imagem instantânea dos discos de arranque e de dados.
- Crie discos de arranque e de dados equilibrados do Hyperdisk usando um instantâneo do disco como origem para cada disco.
- Defina o tipo de máquina para uma VM N4.
- Anexe o disco de arranque Hyperdisk Balanced e o disco de dados Hyperdisk Balanced.
- Inicie a VM N4.
REST
Opção 1: crie uma nova VM N4 com discos de instantâneos:
Pare a VM através do método instances.stop:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances/VM_NAME/stop
Substitua o seguinte:
PROJECT_NAME
: o ID do projeto.ZONE
: a zona que contém a VM.VM_NAME
: o nome da sua VMn1-standard-8
atual.
Crie instantâneos dos seus discos através do método disks.createSnapshot para criar um instantâneo do disco de arranque do disco persistente e do disco de dados anexado à instância.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/disks/DISK_NAME/createSnapshot
No corpo do pedido, inclua o nome do novo disco Persistent Disk com instantâneo.
Por exemplo:
{ "name": "SNAPSHOT_NAME" }
Substitua o seguinte:
PROJECT_NAME
: o nome do seu projeto.ZONE
: a zona onde o disco está localizado.DISK_NAME
: o disco do qual planeia criar uma captura instantânea.SNAPSHOT_NAME
: um nome para o resumo, comohdb-boot-disk
ouhdb-data-disk
.
Crie um disco Hyperdisk Balanced com o método disks.insert. Execute este passo duas vezes: uma para incluir o
name
do disco de arranque do Hyperdisk Balanced e uma segunda vez para incluir oname
dos discos de dados. Use osourceSnapshot
para os novos discos de arranque e de dados Hyperdisk Balanced, otype
do disco, o Hyperdisk Balanced e osizeGB
do disco no corpo do pedido.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONEdisks
Substitua o seguinte:
PROJECT_NAME
: o nome do seu projeto.ZONE
: a zona onde o disco está localizado.
No corpo da solicitação, inclua o seguinte:
Por exemplo:
{ "name": "my-hdb-boot-disk" or "my-hdb-data-disk", "sourceSnapshot": "projects/your-project/global/snapshots/SNAPSHOT_NAME", "type": "projects/your-project/zones/us-central1-a/diskTypes/hyperdisk-balanced", "sizeGb": "100" }'
Use o método instances.insert para criar a nova VM N4.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances
Substitua o seguinte:
PROJECT_NAME
: o nome do seu projeto.ZONE
: a zona onde o disco está localizado.
No corpo da solicitação, inclua o seguinte:
{ "machineType":"projects/your-project/zones/us-central1-a/machineTypes/n4-standard-8" "name":"VM_NAME", "disks": [ { "boot": true, "deviceName": "my-hdb-boot-disk", "source": "projects/your-project/zones/us-central1-a/disks/my-hdb-boot-disk", "type": "PERSISTENT" }, { "boot": false, "deviceName": "my-hdb-data-disk", "source": "projects/your-project/zones/us-central1-a/disks/my-hdb-data-disk", "type": "PERSISTENT" } ], "networkInterfaces":[ { "network":"global/networks/NETWORK_NAME", "subnetwork":"regions/REGION/subnetworks/SUBNET_NAME", "nicType": "GVNIC" } ] }
Substitua o seguinte:
VM_NAME
: o nome da VM.NETWORK_NAME
: o nome da rede.REGION
: o nome da região.SUBNET_NAME
: O nome da sub-rede.
Inicie a VM através do método instances.start:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances/VM_NAME/start
Substitua o seguinte:
PROJECT_NAME
: o nome do seu projeto.ZONE
: a zona onde a sua VM está localizada.VM_NAME
: o nome da VM.
Opção 2: faça uma atualização da máquina no local:
Esta opção só está disponível se a sua VM N1 usar a interface de rede
gvnic
, não tiver discos SSD locais nem GPUs anexados e não fizer parte de um grupo de instâncias gerido (MIG). A execução deste procedimento com uma VM N1 com uma interface de redeVirtIO
gera um erro de incompatibilidade da VM.Pare a VM através do método instances.stop.
Desassocie os discos através do método instances.detachDisk para desassociar o disco de arranque do disco persistente original da VM N1. Também tem de desanexar todos os discos de dados da VM.
https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances/VM_NAME/detachDisk?deviceName=DISK_NAME
Substitua o seguinte:
PROJECT_NAME
: o nome do seu projeto.ZONE
: a zona onde o disco está localizado.VM_NAME
: o nome da VM de origem com o discopd-ssd
anexado.DISK_NAME
: o disco que quer desanexar.
Crie instantâneos dos discos. Use o método disks.createSnapshot para criar uma captura de ecrã do disco de arranque do disco persistente e dos discos de dados anexados à instância.
Crie discos de arranque e de dados Hyperdisk Balanced com o método disks.insert. Inclua o
name
do seu disco Hyperdisk Balanced,sourceSnapshot
para o novo disco Hyperdisk Balanced, otype
do disco, Hyperdisk Balanced, esizeGB
do disco no corpo do pedido.Faça uma atualização do tipo de máquina no local com o método instances.setMachineType inclua o
machineType
no corpo do pedido:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONEinstances/VM_NAME/setMachineTypeMACHINE_TYPE
Substitua o seguinte:
PROJECT_NAME
: o nome do seu projeto.ZONE
: a zona onde o disco está localizado.VM_NAME
: o nome da VM a atualizar.MACHINE_TYPE
: o novo tipo de máquina.
No corpo do pedido, inclua o seguinte:
{ "machineType": "projects/PROJECT_NAME/zones/ZONE/machineTypes/MACHINE_TYPE", }
Use o método instances.attachDisk para anexar o novo disco de arranque
Hyperdisk Balanced
e os discos de dados Hyperdisk Balanced à VM N4.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instancesVM_NAMEattachDiskDISK_NAME
Substitua o seguinte:
PROJECT_NAME
: o nome do seu projeto.ZONE
: a zona onde o disco está localizado.VM_NAME
: o nome da instância de VM de origem com o discopd-ssd
anexado.DISK_NAME
O disco que quer anexar.
No corpo do pedido, inclua o seguinte:
{ "source": "projects/your-project/zones/us-central1-a/disks/my-hdb-boot-disk", "deviceName":"my-hdb-boot-disk","boot":true }
{ "source": "projects/your-project/zones/us-central1-a/disks/my-hdb-data-disk", "deviceName":"my-hdb-data-disk","boot":false }
Inicie a VM N4 através do método instances.start.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONEinstances/VM_NAME/start
Substitua o seguinte:
PROJECT_NAME
: o nome do seu projeto.ZONE
: a zona onde o disco está localizado.VM_NAME
: o nome da VM.
Limpar
Depois de confirmar que consegue estabelecer ligação à nova VM e que a sua carga de trabalho está a ser executada como esperado na nova VM, pode remover os recursos que já não são necessários:
- Os instantâneos que criou para os discos anexados à VM de origem.
- Todos os agendamentos de instantâneos para os discos que estavam anexados à VM de origem.
- O disco temporário criado para copiar os dados do SSD local para a nova VM.
- A VM de origem e todos os discos anexados.
O que se segue?
- Leia sobre os problemas conhecidos para o servidor Linux e Windows.
- Leia as sugestões de resolução de problemas.
- Saiba mais acerca do ciclo de vida da migração.
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-09-23 UTC.
-