Esta página descreve como atualizar a posse de uma VM modificando as etiquetas de afinidade de nós da VM.
Por predefinição, o Compute Engine implementa VMs em anfitriões de vários inquilinos. Em anfitriões multi-inquilinos, as VMs partilham normalmente recursos do anfitrião com VMs de outros projetos e clientes. Quando move uma VM para um nó de inquilino único, o seu projeto tem acesso exclusivo e controlo total do hardware do nó de inquilino único. É o único inquilino nesse nó, pelo que as suas cargas de trabalho estão isoladas das cargas de trabalho de outros projetos e das respetivas VMs.
Ao modificar as etiquetas de afinidade de nós, pode mover uma VM das seguintes formas:
- De um anfitrião multi-inquilino para um grupo de nós ou um nó de inquilino único
- De um grupo de nós ou um nó de inquilino único para um anfitrião multiinquilino
- De um nó de inquilino único para outro nó de inquilino único ou grupo de nós
- De um grupo de nós de inquilino único para outro grupo de nós ou nó de inquilino único
Mover temporariamente cargas de trabalho para a posse exclusiva
Devido aos requisitos flutuantes das suas cargas de trabalho, como necessidades periódicas de isolamento adicional para examinar o desempenho ou alterações aos regulamentos de conformidade, pode ter de mover temporariamente cargas de trabalho específicas para nós de inquilino único. Em seguida, quando já não precisar da posse exclusiva, volte a implementar as suas VMs num anfitrião multiinquilino. Quando modifica a posse de uma VM, o Compute Engine preserva as configurações da VM.
Reequilibrar cargas de trabalho de inquilino único
Além de mover VMs para e a partir de grupos de nós e nós de inquilino único, pode mover VMs entre nós e grupos de nós, o que pode ajudar a consolidar nós e reequilibrar cargas de trabalho. A movimentação de uma VM requer um reinício. Por isso, planeie a movimentação de VMs com base nos requisitos de disponibilidade das suas cargas de trabalho.
Limitações
- Quando move uma VM que já está a ser executada num nó de inquilino único, a VM pode ser reiniciada noutro nó. Se a única posse de uma VM for especificada pelo nome do grupo de nós ou através da utilização da etiqueta de afinidade predefinida, a VM pode ser reiniciada em qualquer nó no grupo de nós.
node-group-name
Se a única posse da VM for especificada através de afinidade ou etiquetas de afinidade personalizadas, a VM pode ser reiniciada em qualquer nó de qualquer grupo de nós na zona.
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:
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.
Mover uma VM para a posse exclusiva
Atualize a posse movendo a VM para um grupo de nós ou um nó de inquilino único específico a partir de outro grupo de nós ou nó, ou de um anfitrião multi-inquilino.
gcloud
Parar a VM.
gcloud compute instances stop VM_NAME
Substitua
VM_NAME
pelo nome da VM a parar.Atualize a posse especificando o grupo de nós para o qual quer mover a VM.
gcloud compute instances set-scheduling VM_NAME \ --node-group=NODE_GROUP_NAME
Substitua o seguinte:
VM_NAME
nome da VM a mover para um grupo de nós específicoNODE_GROUP_NAME
nome do grupo de nós para o qual mover a VM
Em alternativa, pode mover uma VM para um nó de inquilino único através do nome do nó ou de uma etiqueta de afinidade. Para mais informações, consulte o comando
gcloud compute instances set-scheduling
.Inicie a VM.
gcloud compute instances start VM_NAME
Substitua
VM_NAME
pelo nome da VM a iniciar no grupo de nós especificado anteriormente pelos conteúdos de um ficheiro de etiqueta de afinidade.
REST
Parar a VM. Para mais informações acerca deste comando, consulte instances.stop.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/stop
Substitua o seguinte:
PROJECT_ID
: ID do projeto que contém a VM a pararZona
ZONE
que contém o projetoVM_NAME
nome da VM a parar
Atualize a posse especificando o grupo de nós para o qual quer mover a VM.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/setScheduling { "nodeAffinities": [ { "key": "compute.googleapis.com/node-group-name", "operator": "IN", "values": [ "NODE_GROUP_NAME" ] } ] }
Substitua o seguinte:
PROJECT_ID
ID do projeto que contém a VM a moverZona
ZONE
que contém o projetoVM_NAME
nome da VM a mover para um grupo de nós específicoNODE_GROUP_NAME
nome do grupo de nós para o qual mover a VM
Em alternativa, pode mover uma VM para um nó de inquilino único através do nome do nó ou de uma etiqueta de afinidade. Para mais informações, consulte o
instances.setScheduling
método.Inicie a VM. Para mais informações acerca deste comando, consulte
instances.start
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/start
Substitua o seguinte:
PROJECT_ID
ID do projeto que contém a VM a iniciarZona
ZONE
que contém o projetoVM_NAME
nome da VM a iniciar
Mover uma VM para fora da posse exclusiva
Se a sua VM já não precisar de hardware dedicado, por exemplo, após um evento que exigiu que a VM fosse isolada de outras VMs, mova a VM de um nó de inquilino único para um anfitrião de vários inquilinos.
gcloud
Parar a VM.
gcloud compute instances stop VM_NAME
Substitua
VM_NAME
pelo nome da VM a parar.Limpe as afinidades de nós da VM para que possa movê-la para um anfitrião com vários inquilinos.
gcloud compute instances set-scheduling VM_NAME --clear-node-affinities
Substitua
VM_NAME
pelo nome da VM para a qual quer remover afinidades de nós.Inicie a VM num anfitrião multiinquilino.
gcloud compute instances start VM_NAME
Substitua
VM_NAME
pelo nome da VM da qual limpou anteriormente as afinidades de nós.
REST
Parar a VM. Para mais informações sobre este comando, consulte
instances.stop
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/stop
Substitua o seguinte:
PROJECT_ID
ID do projeto que contém a VM a pararZona
ZONE
que contém o projetoVM_NAME
nome da VM a parar
Limpe as afinidades de nós da VM para a mover para um anfitrião com vários inquilinos.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/setScheduling { "nodeAffinities": [] }
Substitua o seguinte:
PROJECT_ID
ID do projeto que contém a VM a moverZona
ZONE
que contém o projetoVM_NAME
nome da VM a partir da qual limpar as afinidades de nós
Inicie a VM num anfitrião multiinquilino. Para mais informações sobre este comando, consulte instances.start.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/start
Substitua o seguinte:
PROJECT_ID
ID do projeto que contém a VM a iniciarZona
ZONE
que contém o projetoVM_NAME
nome da VM a iniciar
O que se segue?
- Antes de mover as VMs para nós de inquilino único, leia acerca dos preços dos nós de inquilino único.
- Leia o artigo Traga as suas próprias licenças.
- Leia as Perguntas frequentes sobre as licenças da Microsoft.
- Saiba como transferir imagens com licenças existentes para o Google Cloud.
- Saiba como dimensionar automaticamente grupos de nós de inquilino único.
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-19 UTC.
-