Este documento descreve as ações de suspensão e interrupção em instâncias de máquinas virtuais (VM) em um grupo de instâncias gerenciadas (MIG). Ele também descreve como suspender e parar VMs em um MIG pode ajudar você a economizar custos e reduzir o tempo de espera quando precisar de mais VMs no grupo.
Os MIGs permitem suspender e parar VMs para alcançar o seguinte:
- Pause um aplicativo ou serviço que você não está usando para economizar custos ao não pagar pelos recursos de computação.
- Acelere a expansão do MIG iniciando VMs pré-inicializadas no pool de espera de VMs interrompidas e suspensas.
Casos de uso
As seções a seguir descrevem casos de uso típicos do pool de espera em um MIG.
Pausar um aplicativo ou serviço
Você pode suspender ou interromper VMs em um MIG para pausar seu aplicativo e retomá-lo quando necessário, de acordo com sua computação, horário de trabalho, horário de pico e restrições orçamentárias. Você pode manter os resultados dos seus cálculos atuais em discos permanentes ou, no caso de VMs suspensas, na memória.
Por exemplo, talvez você queira suspender ou parar as VMs em um MIG nos seguintes cenários:
- Você tem cargas de trabalho pesadas durante a semana e deseja suspender as VMs nos finais de semana para economizar custos.
- Você tem um ambiente de teste necessário durante mudanças de implementação e deseja interrompê-lo quando não estiver desenvolvendo ativamente.
Acelere a expansão do MIG
Você pode manter um pool de espera de VMs pré-inicializadas prontas para iniciar quando o MIG for redimensionado. Em vez de criar novas VMs e aguardar que seu aplicativo seja inicializado e esteja pronto para execução, o MIG inicia ou retoma as VMs do pool de espera. Neste caso, a inicialização da VM é concluída antecipadamente e não em um momento crítico de aumento de carga.
Os pools de espera são úteis para aplicativos que demoram muito para inicializar, por exemplo, nos seguintes cenários:
- Aplicativos que precisam fazer download de conteúdo atualizado para discos permanentes.
- Aplicativos que precisam armazenar conteúdo extra em cache na memória, por meio de downloads de armazenamento externo, de computação local ou de uma combinação de ambos.
- Aplicativos que precisam instalar software novo durante a inicialização, como nós do Kubernetes.
Recursos preservados
A tabela a seguir mostra os recursos que são preservados quando você suspende e interrompe VMs em um MIG.
Preservado | VM suspensa | VM interrompida |
---|---|---|
Nome da VM | ||
IP interno | ||
IP externo (efêmero) | ||
IP externo (estático * ) | ||
Discos † | ||
Metadados | ||
Memória |
* Para preservar um IP externo ao interromper ou suspender uma VM em um MIG, use a configuração do MIG com estado para promover o IP externo a um IP estático. † Se uma VM tiver discos SSD locais anexados, quando você interromper ou suspender a VM, os dados nos discos SSD locais não serão preservados.
Comportamento e configuração
O pool de espera é formado por pools de VMs parados e suspensos. Todas as VMs interrompidas passam a fazer parte do pool interrompido e todas as VMs suspensas passam a fazer parte do pool suspenso. Se você configurou o escalonamento automático em um MIG, depois de suspender ou parar uma VM, o MIG criará imediatamente novas VMs para manter o tamanho recomendado do MIG.
Tamanhos desejados de pools suspensos e parados
Semelhante ao tamanho alvo do MIG, os pools parados e suspensos têm seus próprios tamanhos alvo. É possível controlar o tamanho do destino do pool em espera das seguintes maneiras:
- Configurando os valores dos tamanhos de destino interrompidos e suspensos.
- Parando e suspendendo manualmente as VMs, o que altera automaticamente os tamanhos de destino.
Ao alterar os tamanhos de destino para conjuntos interrompidos ou suspensos, o MIG se comporta da seguinte forma:
- Quando você aumenta o tamanho dos pools suspensos ou interrompidos, o MIG cria novas VMs, aguarda até que as VMs sejam inicializadas e, em seguida, suspende ou interrompe as VMs de acordo. Para MIGs regionais, as VMs são criadas de acordo com o formato de distribuição alvo configurado.
- Quando você diminui o tamanho dos pools suspensos ou interrompidos, o MIG seleciona arbitrariamente quais VMs suspensas ou interrompidas serão excluídas.
- Quando você altera o tamanho do destino MIG e o tamanho do conjunto suspenso ou interrompido simultaneamente, o MIG tenta minimizar o número de operações necessárias para aplicar suas alterações. Isso significa que o MIG pode retomar ou iniciar VMs do pool de espera ou suspender ou interromper algumas VMs em execução.
Política de espera
A política de espera define o comportamento do conjunto de espera com base nos seguintes parâmetros especificados:
- Modo: o modo no qual o MIG usa VMs suspensas e interrompidas. Este pode ser o modo
manual
ou descale-out-pool
. - Atraso inicial: o tempo durante o qual o MIG executa uma VM recém-criada antes de suspendê-la ou interrompê-la. Configure o atraso inicial para permitir tempo suficiente para que seu aplicativo seja pré-inicializado e esteja pronto para ser executado quando a VM for iniciada ou retomada.
Modo
Você pode escolher como gerenciar pools de espera configurando o modo de operação. Existem duas opções possíveis: modo manual
e modo de scale-out-pool
.
Modo manual (padrão)
No modo manual, você tem controle total sobre quais VMs serão interrompidas e suspensas no MIG. O modo manual é o modo padrão do pool de espera.
O modo manual é útil nos seguintes casos:
- Para pausar sua carga de trabalho e economizar nos custos de VMs em execução ociosa.
- Para integrar o MIG com escalonadores automáticos de terceiros que exigem gerenciamento avançado de VMs individuais.
- Para parar VMs selecionadas para fins de depuração.
Com o modo manual, o MIG não aplica nenhuma automação ao pool de espera:
- Quando você ou o escalonador automático aumentam o tamanho alvo do MIG, o MIG não inicia ou retoma VMs automaticamente, mas cria novas.
- Quando você ou o escalonador automático diminuem o tamanho alvo do MIG, o MIG não para ou suspende automaticamente as VMs em execução, mas as exclui.
Escalar horizontalmente o modo pool
No modo de pool de expansão, o MIG usa as VMs dos pools de espera para acelerar a expansão, retomando-as ou iniciando-as. Em seguida, o MIG reabastece automaticamente o pool de espera com novas VMs para manter os tamanhos de destino.
O modo de pool de expansão é útil para acelerar a expansão do MIG nos seguintes casos:
- Se você usa o escalonador automático do Compute Engine.
- Se você usa escalonadores automáticos de terceiros e deseja preservar qualquer integração existente.
- Se você aumentar manualmente o tamanho alvo das VMs em execução.
No modo de pool de expansão, o MIG se comporta da seguinte forma:
Quando você ou o escalonador automático aumentam o tamanho alvo das VMs em execução no MIG, o MIG entra em ação na seguinte ordem:
- O MIG retoma VMs suspensas caso alguma esteja disponível nas zonas onde o MIG é expandido.
- Depois de retomar as VMs suspensas, se o tamanho alvo do MIG ainda não for atingido, o MIG iniciará as VMs interrompidas se houver alguma disponível nas zonas onde o MIG aumenta.
- Após iniciar as VMs, se o tamanho alvo do MIG ainda não for atingido, ele cria novas VMs do zero.
Depois que o pool de espera é usado para acelerar a expansão, o MIG faz o seguinte:
- Ele cria novas VMs para reabastecer os pools suspensos e interrompidos com base nos tamanhos de destino e de acordo com o formato de distribuição de destino no caso de um MIG regional.
- Coloca as novas VMs no estado de execução.
- Ele suspende ou interrompe as novas VMs depois que o atraso inicial passa.
Quando você ou o escalonador automático diminuem o tamanho alvo do MIG, o MIG não para ou suspende automaticamente as VMs em execução, mas as exclui.
Atraso inicial
Para garantir que sua VM seja inicializada corretamente, especifique o atraso inicial na política de espera. O atraso inicial é o tempo que as VMs esperam antes de parar ou suspender após serem criadas. Isso dá ao seu script de inicialização tempo para ser concluído.
O atraso inicial ocorre nos seguintes casos:
- Uma nova VM é criada com o estado de destino pretendido
SUSPENDED
ouTERMINATED
. - Uma instância existente no estado
RUNNING
está suspensa ou parada.
Em ambos os casos, a instância pode ser inicializada antes de ser suspensa ou interrompida.
Quando você quiser usar o pool de espera para acelerar a expansão do MIG, é recomendável medir o tempo necessário para que seu aplicativo seja inicializado no tipo de máquina selecionado para garantir que seja suficiente para que seu aplicativo esteja totalmente pronto antes de suspender ou parar. Caso contrário, retomar ou iniciar VMs a partir do pool de espera poderá demorar mais do que criar VMs do zero.
Status de destino para VMs em MIGs
MIGs possuem uma API declarativa. Isso significa que você declara o status de destino para as VMs no MIG e a solicitação de API será bem-sucedida quando o status de destino for salvo. O MIG então executa as operações necessárias para atingir o status de destino, e você pode verificar a ação atual e o status atual de todas as VMs usando API.
Suspender e parar VMs em um MIG funciona da mesma forma declarativa. Quando você envia uma solicitação para suspender ou parar VMs, o MIG armazena as informações sobre o status de destino de cada VM e inicia as operações necessárias para alcançá-lo.
Ao listar VMs gerenciadas em um MIG, você pode ver o campo targetStatus
. Descreve o status final de uma VM, quando o MIG está estável. Pode ser um dos seguintes valores:
-
RUNNING
-
STOPPED
-
SUSPENDED
As VMs em um MIG podem ter os mesmos status de ciclo de vida de VMs individuais. A seguir estão exemplos de operações possíveis em um MIG e os valores associados do campo targetStatus
:
- Crie a nova VM e suspenda-a após a inicialização.
- Status de destino da VM:
SUSPENDED
.
- Status de destino da VM:
- Retomar uma VM suspensa anteriormente.
- Status de destino da VM:
RUNNING
- Status de destino da VM:
- Pare uma VM em execução anteriormente.
- Status de destino da VM:
STOPPED
- Status de destino da VM:
- Inicie uma VM interrompida anteriormente.
- Status de destino da VM:
RUNNING
- Status de destino da VM:
Limitações
- As seguintes limitações para suspensão de VMs autônomas também se aplicam à suspensão de VMs em um MIG:
- Você não pode suspender uma instância que usa uma GPU .
- Você não pode suspender uma instância bare metal.
- Não é possível suspender uma instância usando os processos padrão integrados ao ambiente convidado. Comandos, como o comando
systemctl suspend
no Ubuntu 16.04 e posterior, não estão disponíveis. O sinal de convidado é ignorado. - Você só pode suspender uma instância por até 60 dias antes que a VM seja interrompida automaticamente.
- Não é possível suspender instâncias com mais de 208 GB de memória.
- Você pode suspender instâncias preemptivas, mas a instância preemptiva pode ser encerrada antes de ser suspensa com êxito.
- Você não pode suspender uma VM confidencial.
- Não é possível suspender uma VM que tenha discos protegidos por CSEK anexados.
- Em um MIG regional com formato de distribuição de destino
EVEN
e redistribuição de instância habilitada, você não pode suspender, parar, retomar ou iniciar VMs específicas no grupo. Para gerenciar um pool em espera, defina os tamanhos de destino dos pools suspensos e interrompidos. - Você não poderá usar o modo de pool de expansão se tiver configurado um modelo de segunda instância para atualização canário no MIG.
- Você não poderá suspender ou parar VMs em um MIG se tiver desativado os reparos no MIG.
- Você só pode suspender uma instância por até 60 dias antes que a VM seja interrompida automaticamente.
Preços
Cada VM parada e suspensa é cobrada pelos seguintes itens:
- Qualquer uso de disco permanente para o disco de inicialização e quaisquer discos adicionais anexados à VM.Para obter mais informações, consulte Preços de discos permanentes .
- Quaisquer IPs estáticos anexados à VM.Para obter mais informações, consulte preços de IP .
- No caso de VMs suspensas, a memória da VM e o estado do dispositivo.Para obter mais informações, consulte preços de instâncias de VM .
O que vem a seguir
- Aprenda como suspender ou interromper manualmente VMs em um MIG .
- Saiba como acelerar a expansão com VMs suspensas e interrompidas .
- Saiba mais sobre atualizações para VMs suspensas e interrompidas .