Neste documento, você verá como criar um grupo de instâncias gerenciadas (MIG) que usa instâncias de máquina virtual preemptiva (VM). As VMs preemptivas são úteis se a carga de trabalho puder tolerar interrupções e você quiser aproveitar a economia associada às VMs preemptivas.
Você também pode ler sobre outros cenários básicos para criar um MIG.
Antes de começar
-
Configure a autenticação, caso ainda não tenha feito isso.
Com isso, você confirma sua identidade para acesso a Google Cloud serviços e APIs do. Para executar
código ou exemplos de um ambiente de desenvolvimento local, autentique-se no
Compute Engine com uma destas opções:
Selecione a guia para como planeja usar as amostras nesta página:
Console
Quando você usa o Google Cloud console para acessar Google Cloud serviços e APIs, não é necessário configurar a autenticação.
gcloud
-
Instale a Google Cloud CLI. Após a instalação, inicialize a Google Cloud CLI executando o seguinte comando:
gcloud init
-
- Defina uma região e uma zona padrão.
-
Instale a Google Cloud CLI.
-
Se você estiver usando um shell local, crie credenciais de autenticação local para sua conta de usuário:
gcloud auth application-default login
Não é necessário fazer isso se você estiver usando o Cloud Shell.
Se um erro de autenticação for retornado e você estiver usando um provedor de identidade (IdP) externo, confirme se você fez login na CLI gcloud com sua identidade federada.
Terraform
Para usar os exemplos do Terraform desta página em um ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e configure o Application Default Credentials com suas credenciais de usuário.
Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
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.
Saiba mais em Autenticar para usar REST na documentação de autenticação do Google Cloud .
Limitações
Para ver a lista completa de limitações do MIG, que varia de acordo com a configuração usada, consulte Limitações do MIG.
Criar um modelo de instância com as VMs preemptivas
Use um MIG zonal ou regional para criar rapidamente várias VMs preemptivas, o que pode reduzir os custos das VMs nos grupos de instâncias gerenciadas. Por exemplo, crie um grupo de VMs preemptivas, use-o para executar uma tarefa de processamento em lote e depois exclua-o quando a tarefa estiver concluída.
Para criar um grupo de VMs preemptivas, defina a opção preemptiva em um modelo de instância e depois use o modelo para criar o MIG.
Console
-
No console, acesse a página Modelos de instância.
As etapas restantes aparecem no Google Cloud console do Google Cloud.
-
Clique em
Criar modelo de instância . - Insira as propriedades que quiser para o modelo de instância.
-
Clique em
Opções avançadas e abra a seção Gerenciamento. -
Em Política de disponibilidade, na lista
Modelo de provisionamento de VM , escolha Spot. -
Clique em
Criar para criar o modelo.
gcloud
Crie um modelo de instância usando o
comando instance-templates create.
Inclua a sinalização --preemptible.
gcloud compute instance-templates create INSTANCE_TEMPLATE \
--preemptibleTerraform
O exemplo a seguir cria um modelo de instância global: Para fornecer a
opção preemptiva, inclua o bloco scheduling.
Para mais informações sobre o
recurso usado na amostra, consulte Recurso
google_compute_instance_template. Para criar um modelo de instância regional, use o recurso google_compute_region_instance_template.
Para saber como aplicar ou remover uma configuração do Terraform, consulte Comandos básicos do Terraform.
REST
Chame o
método instanceTemplates.insert
para criar um novo modelo de instância. Inclua a propriedade scheduling.preemptible
e defina-a como true.
{
"name": "INSTANCE_TEMPLATE",
"properties": {
"machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
"networkInterfaces": [
{
"network": "global/networks/default",
"accessConfigs":
[
{
"name": "external-IP",
"type": "ONE_TO_ONE_NAT"
}
]
}
],
"scheduling":
{
"preemptible": true
},
"disks":
[
{
"type": "PERSISTENT",
"boot": true,
"mode": "READ_WRITE",
"initializeParams":
{
"sourceImage": "projects/debian-cloud/global/images/family/debian-9"
}
}
]
}
}Depois de criar o modelo de instância, use-o para criar um MIG.com VMs limitadas a uma única zona ou com VMs espalhadas por várias zonas em uma região.
A seguir
- Configure a recuperação automática baseada em aplicativo, que verifica periodicamente se o aplicativo responde conforme o esperado em cada uma das VMs do MIG e recria automaticamente as VMs que não respondem.
- Ative o escalonamento automático para adicionar ou excluir VMs automaticamente do seu MIG com base em aumentos ou reduções de carga.
- Saiba como aplicar uma nova configuração a todas ou a um subconjunto das VMs em um MIG definindo e aplicando um novo modelo de instância, configuração de todas as instâncias ou configuração por instância.
- Preserve discos, metadados e endereços IP em eventos que causam interrupções, como recriação de VM, recuperação automática e atualizações por meio da configuração com estado.
- Saiba como trabalhar com instâncias gerenciadas, por exemplo, para excluir, abandonar e recriar VMs em um MIG.
- Veja informações sobre MIGs e as respectivas VMs.