Esta página explica como pode configurar as instâncias de máquinas virtuais (VMs) num grupo de instâncias geridas (GIG) e os métodos que pode usar para aplicar a configuração às VMs existentes no grupo.
Especifica a configuração pretendida para as VMs num MIG através dos seguintes componentes de configuração de VM:
- Obrigatório: modelo de instância
- Opcional: configuração de todas as instâncias
- Opcional: configuração com estado
Sempre que atualiza a configuração pretendida através desses componentes, o Compute Engine aplica automaticamente a configuração atualizada às novas VMs que são adicionadas ao grupo.
Para aplicar uma configuração atualizada a VMs existentes, use os métodos descritos nesta página:
- Implementações automáticas com um orçamento de interrupção e atualizações opcionais de teste de novos modelos
- Atualizações manuais seletivas apenas a VMs específicas para minimizar a interrupção
- Recriação de VMs específicas
Também pode configurar o MIG para aplicar a configuração mais recente disponível às VMs durante as reparações de VMs. Para mais informações, consulte o artigo Aplique atualizações de configuração durante as reparações.
Se só precisar de redimensionar um MIG, consulte a documentação sobre como adicionar ou remover VMs num MIG. Se quiser saber como configurar funcionalidades dos GIGs, consulte a documentação sobre a escala automática, autorreparação, balanceamento de carga> e cargas de trabalho com estado.
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 initSe 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 initSe 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.
Componentes de configuração para VMs num MIG
Configura as VMs num MIG através dos seguintes componentes:
Componente Propriedades Exemplo de utilização Modelo de instância Tipo de máquina, imagem do disco de arranque, etiquetas, script de arranque e outras propriedades da VM Obrigatório: use um modelo de instância para definir as propriedades de instância obrigatórias e opcionais para todas as VMs no grupo.
Opcional: se quiser testar uma segunda configuração de VM com testes canários, pode adicionar um segundo modelo de instância ao grupo e aplicá-lo a um subconjunto das VMs no grupo.Configuração de todas as instâncias Etiquetas e metadados Opcional: use uma configuração de todas as instâncias para substituir rapidamente as propriedades do modelo de instância para todas as VMs no grupo. Configuração com estado Discos com estado, endereços IP e metadados Opcional: se precisar de suportar uma carga de trabalho com estado, adicione uma configuração com estado às VMs no grupo. Se atualizar qualquer configuração do grupo através desses componentes, tem de aplicar a configuração atualizada às VMs existentes no grupo para que a configuração atualizada entre em vigor.
Métodos para aplicar uma nova configuração a VMs existentes
Depois de atualizar a configuração de VM de um MIG, pode aplicar a nova configuração às VMs existentes no grupo através dos seguintes métodos:
- Automático (proativo): use este método se quiser que o GIG aplique automaticamente novas configurações a todas ou a um subconjunto de VMs existentes no grupo. O nível de interrupção das VMs em execução depende da política de atualização que configurar. Pode usar este método para atualizar o teste beta de novos modelos de instância. Para usar este método, defina o tipo de atualização do MIG como "proativo".
- Seletiva (oportunista): use este método se quiser aplicar a atualização manualmente ou se quiser atualizar todas as VMs existentes no grupo de uma só vez. Segmenta qualquer VM ou todas as VMs para serem atualizadas para a configuração mais recente. Para usar este método, defina o tipo de atualização do MIG como "oportunista".
- Recriação de VMs: aplique novas configurações recriando VMs específicas.
Para mais informações sobre como definir o tipo de atualização de um MIG, consulte o artigo Configure uma atualização proativa ou oportuna.
Automático (proativo)
Um tipo de atualização automática também é conhecido como um tipo de atualização proativa. Quando define o tipo de atualização do GIG como proativo, o GIG aplica automaticamente as configurações atualizadas às VMs conforme necessário.
Definir o tipo de atualização do MIG como proativo oferece duas vantagens principais:
- A implementação de uma atualização ocorre automaticamente de acordo com as suas especificações, sem necessidade de introdução adicional após o pedido inicial. Pode especificar a velocidade de implementação, o nível de interrupção do seu serviço e o âmbito da atualização.
- Pode automatizar implementações parciais, o que permite testes.
Para saber como definir o tipo de atualização do MIG, consulte o artigo Configure uma atualização proativa ou oportuna.
Para mais informações sobre implementações automáticas, consulte o artigo Aplique automaticamente atualizações de configuração de VMs num MIG.
Seletiva (oportunista)
Um tipo de atualização seletiva também é conhecido como um tipo de atualização oportunista. Quando define o tipo de atualização do GIG como oportunista, o GIG aplica novas configurações às VMs existentes apenas quando segmenta seletivamente VMs específicas para serem atualizadas.
Definir o tipo de atualização do MIG como oportunista oferece as seguintes vantagens:
- Pode selecionar as VMs que quer atualizar.
- Pode controlar a hora e a sequência das atualizações.
- Pode usar a CLI gcloud ou a API REST para atualizar todas as instâncias imediatamente.
Em determinados cenários, um tipo de atualização seletiva é útil porque não quer causar instabilidade ao sistema se puder ser evitado. Por exemplo, considere o seguinte:
Uma das VMs no seu MIG fica inativa e precisa de ser reparada, mas não quer que a respetiva configuração seja alterada. Se definir o tipo de atualização do GIG como oportunista e não aplicar à força atualizações durante as reparações, o Compute Engine repara a VM com a mesma configuração que foi usada para criar essa VM, mesmo que o modelo de instância original já não exista.
Tem um MIG com escalamento automático e quer aplicar uma atualização não crítica sem urgência. Para garantir que o Compute Engine não desativa as VMs existentes para aplicar a atualização, defina o tipo de atualização do MIG como oportunista. Quando reduz a escala, o redimensionador automático termina preferencialmente as VMs com a configuração antiga. Quando o grupo é expandido, cria VMs com a configuração mais recente.
Para saber como definir o tipo de atualização do MIG, consulte o artigo Configure uma atualização proativa ou oportuna.
Para mais informações sobre a atualização seletiva de VMs, consulte o artigo Aplique seletivamente atualizações de configuração de VMs num MIG.
Recriação de VMs
Pode recriar qualquer VM num MIG. Quando o faz, o MIG aplica qualquer configuração atualizada que ainda não tenha sido aplicada a essa VM. Para mais informações, consulte Recriar VMs num MIG.
Configure uma atualização proativa ou oportuna
Para aplicar novas configurações às VMs existentes automaticamente, defina o tipo de atualização do GIG como "proativo". Para aplicar novas configurações a VMs existentes apenas quando seleciona uma VM a ser atualizada, defina o tipo de atualização do MIG como "oportunista".
Use a Google Cloud consola, a Google Cloud CLI ou o REST.
Consola
Na Google Cloud consola, aceda à página Grupos de instâncias.
Selecione o MIG que quer atualizar.
Clique em Edit.
Clique em Atualizar política para expandir a secção.
Escolha a atualização Seletiva ou Automática.
Opcional: se escolher Automático, pode definir as opções adicionais ou usar os valores predefinidos.
Clique em Guardar.
gcloud
Use o comando
rolling-action start-updatee defina o sinalizador--typecomoopportunisticouproactive.gcloud compute instance-groups managed rolling-action start-update INSTANCE_GROUP_NAME \ --version=template=NEW_TEMPLATE \ --type=TYPETambém pode usar o comando beta
updatee incluir a flag--update-policy-type.gcloud beta compute instance-groups managed update INSTANCE_GROUP_NAME \ --update-policy-type=TYPESubstitua o seguinte:
INSTANCE_GROUP_NAME: o nome do grupoNEW_TEMPLATE: o nome do novo modelo para o grupoTYPE: o tipo de atualização,opportunisticouproactive
REST
Chame o método
patchnum recurso de GIG zonal ou regional.PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME { "updatePolicy": { "type": "TYPE" # Choose an opportunistic or proactive update }, "versions": [{ "instanceTemplate": "global/instanceTemplates/NEW_TEMPLATE", }] }Substitua o seguinte:
PROJECT_ID: o projeto no qual o MIG existe.REGION: a região onde o seu MIG está localizado. Para um MIG zonal, substituaregions/REGIONporzones/ZONE.INSTANCE_GROUP_NAME: o nome do grupo.NEW_TEMPLATE: o nome do novo modelo para o grupo.TYPE: o tipo de atualização,OPPORTUNISTICouPROACTIVE.
Para saber como definir um novo modelo e, em seguida, aplicá-lo a VMs novas e existentes num MIG, consulte as seguintes páginas:
- Aplique automaticamente atualizações de configuração de VMs num GIG
- Aplique seletivamente atualizações de configuração de VMs num MIG
Verifique o tipo de política de atualização do seu grupo
Pode ver o tipo de política de atualização do MIG configurado atualmente ("oportunista" ou "proativa") e outras definições da política de atualização através da CLI gcloud ou da API REST.
gcloud
Use o comando
describee inclua a flag--formatpara listar apenas as definições deupdatePolicy.gcloud beta compute instance-groups managed describe INSTANCE_GROUP_NAME \ --format="(updatePolicy)"REST
Faça um pedido
GETnum GIG zonal ou regional e verifique o campoupdatePolicy.GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME
Para alterar o tipo de política, consulte o artigo Configure uma atualização proativa ou oportuna.
Atualizações para VMs suspensas e paradas
Se tiver suspendido e parado conjuntos de VMs num MIG, pode atualizar seletivamente (oportunisticamente) as VMs suspensas ou paradas, tal como atualiza outras VMs em execução. Se configurar atualizações automáticas (proativas), o GIG atualiza as VMs pela seguinte ordem:
- VMs em execução, suspensas e paradas
- VMs com o estado
SUSPENDINGouSTOPPING
Para uma atualização automática, o MIG calcula o aumento máximo e o máximo indisponível com base apenas no número de VMs em execução pretendido e não considera as VMs no conjunto de espera.
Se a atualização automática exigir a substituição de VMs no grupo, o GIG faz o seguinte:
- Elimina as VMs suspensas e paradas.
- Cria novas VMs com o novo modelo de instância.
- Executa o processo de inicialização.
- Suspende ou para as VMs.
Se a atualização automática exigir apenas a atualização ou o reinício das VMs no grupo, o GIG faz o seguinte:
- Retoma ou inicia as VMs.
- Executa a atualização nas VMs quando estão em execução.
- Executa o processo de inicialização.
- Suspende ou para as VMs.
Atualizações de teste
Se quiser iniciar atualizações canary num MIG que tenha VMs suspensas ou paradas, aplica-se o seguinte:
- No
manualmodo de política de espera, o MIG atualiza apenas as VMs em execução com base no número ou na percentagem de VMs às quais quer aplicar a atualização. As VMs suspensas e paradas permanecem nas versões anteriores. - No
scale-out-poolmodo de política de espera, não pode iniciar uma atualização canária no MIG.
Relação entre os campos
versionseinstanceTemplateSe usar REST, recomendamos que use os campos
instanceGroupManagers.versionseregionInstanceGroupManagers.versionspara configurar modelos de instâncias para MIGs zonais e regionais.O campo
instanceTemplateantigo sobrepõe-se em termos de funcionalidade ao campoversions, uma vez que ambos os campos permitem especificar que modelo de instância o MIG usa para criar VMs. No entanto, apenas o campoversionspermite especificar uma configuração avançada de dois modelos (canário).Para retrocompatibilidade, os MIGs continuam a suportar a definição do campo
instanceTemplatede nível superior, embora recomendemos que mude para usar apenas o campoversions. A utilização do campoinstanceTemplatede nível superior e do campoversionsao mesmo tempo pode gerar ambiguidade e confusão.Se especificar o campo
instanceTemplatee o campoversionsquando chamar o métodoupdate()oupatch(), existem três resultados possíveis:Definir ambos os campos com o mesmo valor.
Este é um pedido válido. Neste caso, não cria ambiguidade e o novo modelo de instância é aplicado ao MIG.
Por exemplo, no pedido seguinte, o campo
instanceTemplatede nível superior e o campoversionsespecificam o mesmo modelo de instância, que é diferente do modelo atual existente. Por isso, o MIG é atualizado para o novo modelo de instância:{ "instanceTemplate": "global/instanceTemplates/NEW_TEMPLATE", "versions": [ { "instanceTemplate": "global/instanceTemplates/NEW_TEMPLATE" } ], "updatePolicy": { "type": "PROACTIVE" } }Definiu ambos os campos para valores que não correspondem, mas apenas um valor difere do modelo de instância atual no MIG.
Este é um pedido válido. O campo que é diferente da definição atual é considerado o valor pretendido. Por exemplo, chama o método
update()e fornece ambos os campos, mas apenas um campo é atualizado:{ "instanceTemplate": "global/instanceTemplates/CURRENT_TEMPLATE", "versions": [ { "instanceTemplate": "global/instanceTemplates/NEW_TEMPLATE" } ], "updatePolicy": { "type": "PROACTIVE" } }Definiu ambos os campos para valores que não correspondem e ambos os valores diferem do modelo de instância atual no MIG.
Esta definição é inválida e devolve um erro porque não existe uma intenção clara.
{ "instanceTemplate": "global/instanceTemplates/NEW_TEMPLATE", "versions": [ { "instanceTemplate": "global/instanceTemplates/A_DIFFERENT_NEW_TEMPLATE" } ], "updatePolicy": { "type": "PROACTIVE" } }
O campo
versions, o campoinstanceTemplatee o métodoget()Se especificar apenas um modelo de instância, através do campo
instanceTemplatede nível superior, do campoversionsou de ambos, o métodoget()devolve ambos os campos na respetiva resposta. Isto torna o novo campoversionsretrocompatível. Desde que especifique um modelo de instância única num destes campos, não há alterações ao que o métodoget()retorna no campoinstanceTemplate.Se o campo
versionstiver dois modelos de instância especificados, o métodoget()devolve um campoinstanceTemplatede nível superior vazio. Não existe forma de expressar de forma inequívoca uma configuração de modelo de duas instâncias de teste beta no campoinstanceTemplatede nível superior, pelo que o campo não é usado durante uma atualização de teste beta.O campo
versionse o métodosetInstanceTemplate()Para retrocompatibilidade, o método
setInstanceTemplate()comporta-se como anteriormente, permitindo-lhe alterar o modelo que o MIG usa para criar VMs. Quando chama este método, o campoversionsé substituído pelo modelo de instância especificado pelo métodosetInstanceTemplate().O método
setInstanceTemplate()também define o valor deupdatePolicycomoOPPORTUNISTIC. Isto impede que o MIG implemente ativamente um modelo de instância que não esteja explicitamente especificado no campoversions.O que se segue?
- Saiba mais sobre a implementação automática de um novo modelo de instância num MIG.
- Saiba mais sobre como atualizar seletivamente VMs num MIG.
- Veja informações acerca do seu MIG e das respetivas VMs.
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-10-22 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-10-22 UTC."],[],[]] -