Grupos de instâncias


Um grupo de instâncias é um conjunto de instâncias de máquina virtual (VM, na sigla em inglês) que podem ser gerenciadas como uma única entidade.

O Compute Engine oferece dois tipos de grupos de instâncias de VM: gerenciadas e não gerenciadas:

  • Os grupos de instâncias gerenciadas (MIGs, na sigla em inglês) permitem operar apps em várias VMs idênticas. É possível tornar as cargas de trabalho escalonáveis e altamente disponíveis aproveitando serviços de MIGs automatizados, como escalonamento automático, recuperação automática, implantação regional (várias zonas) e atualização automática.

  • Os grupos de instâncias não gerenciadas permitem balancear a carga em uma frota de VMs gerenciadas por você.

Faça um teste

Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho do Compute Engine em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.

Faça uma avaliação gratuita do Compute Engine

Grupos de instâncias gerenciadas (MIGs)

Use um grupo gerenciado de instâncias (MIG) para cenários como estes:

  • Cargas de trabalho de exibição sem estado, como um front-end de site.
  • Cargas de trabalho de computação em lote, de alto desempenho ou alta capacidade sem estado, como o processamento de imagens em fila.
  • Aplicativos com estado, como bancos de dados, aplicativos legados e cálculos em lote de longa duração com checkpoint.

O Compute Engine mantém cada uma das instâncias gerenciadas do MIG com base na configuração especificada em um modelo de instância e na configuração com estado opcional.

Para mais informações sobre como criar um MIG, consulte Como criar grupos gerenciado de instâncias.

Benefícios

Os MIGs oferecem as seguintes vantagens:

  • Alta disponibilidade.

    • Como reparar automaticamente as VMs com falha. Se uma VM no grupo for interrompida, falhar, for interrompida (VMs spot) ou for excluída por uma ação não iniciada pelo MIG, o MIG vai recriar essa VM automaticamente VM com base na configuração original (mesmo nome, mesmo modelo) para que a VM possa retomar o trabalho.
    • Recuperação automática baseada em aplicativo. Também é possível configurar uma verificação de integridade baseada em aplicativo, que confere periodicamente se o aplicativo responde conforme o esperado em cada instância do MIG. Se um aplicativo não responder em uma VM, o MIG recria essa VM automaticamente. Verificar se um aplicativo responde é mais preciso do que apenas verificar se uma VM está em execução.
    • Cobertura regional (várias zonas). Os MIGs regionais permitem distribuir a carga do app em várias zonas. Essa replicação protege contra falhas nas zonas. Caso isso ocorra, seu aplicativo poderá continuar a veicular o tráfego de instâncias em execução nas zonas disponíveis restantes na mesma região.

    • Balanceamento de carga. Os MIGs trabalham com serviços de balanceamento de carga para distribuir o tráfego em todas as instâncias do grupo.

  • Dimensionamento. quando os aplicativos exigem recursos de computação extras, os MIGs com escalonamento automático podem aumentar automaticamente o número de instâncias no grupo para atender à demanda. Se a demanda cair, os MIGs com escalonamento automático poderão diminuir automaticamente para reduzir os custos.

  • Atualizações automáticas. O atualizador automático do MIG permite implantar novas versões de software em instâncias do MIG com segurança e oferece suporte a uma ampla variedade de cenários de lançamento, como atualizações graduais e canário. É possível controlar a velocidade e o escopo da implantação, bem como o nível de interrupção do serviço.

  • Suporte para cargas de trabalho com estado. É possível usar MIGs para criar implantações altamente disponíveis e automatizar operações de aplicativos com dados ou configurações com estado, como bancos de dados, servidores DNS, aplicativos monolíticos legados ou cálculos em lote de longa duração com checkpoint. Os MIGs com estado preservam o estado exclusivo de cada instância (nome da instância, discos permanentes anexados e metadados) na reinicialização, recriação, recuperação automática e atualização de máquinas.

  • Criar VMs de GPU de uma só vez. Quando você tem um job em lote, como um treinamento de IA ou ML, que exige um número exato de VMs de GPU, criar uma solicitação de redimensionamento em um MIG pode ajudar a criar as VMs de uma só vez. É possível especificar a duração de execução das VMs, melhorando a capacidade de receber recursos com alta demanda, como GPUs.

Use um grupo de instâncias gerenciadas para criar implantações altamente disponíveis
            para exibições sem estado, aplicativos com estado ou cargas de trabalho em lote.
Visão geral de cargas de trabalho comuns e recursos de um MIG

Reparo automático e recuperação automática

Os grupos de instâncias gerenciados mantêm a alta disponibilidade dos aplicativos ao manterem proativamente as instâncias disponíveis. Um MIG corrige automaticamente as instâncias com falha ao recriá-las.

Também é possível corrigir instâncias quando um aplicativo congela, falha ou fica sem memória. A recuperação automática baseada em aplicativos melhora a disponibilidade por meio de um indicador de verificação de integridade que detecta problemas específicos do aplicativo, como congelamento, falha ou sobrecarga. Se uma verificação de integridade determinar que um aplicativo falhou em uma VM, o grupo recriará automaticamente essa instância da VM.

Para mais informações, consulte Como corrigir VMs de um MIG.

Verificação de integridade

As verificações de integridade usadas para monitorar MIGs são semelhantes àquelas usadas para balanceamento de carga, com algumas diferenças de comportamento. As de balanceamento de carga ajudam a direcionar o tráfego de instâncias sem resposta para instâncias íntegras. Essas verificações de integridade não fazem o Compute Engine recriar as instâncias. Por outro lado, as verificações de integridade dos grupos de instâncias gerenciadas avisam proativamente para excluir e recriar as instâncias que tiverem o estado UNHEALTHY.

Na maioria dos casos, use verificações de integridade distintas para balanceamento de carga e recuperação automática. As verificações de integridade para o balanceamento de carga podem e precisam ser mais agressivas, já que elas determinam se uma instância receberá tráfego do usuário. Como os clientes talvez dependam dos seus serviços, você precisa encontrar rapidamente instâncias sem resposta para redirecionar o tráfego, se necessário. Por outro lado, com a verificação de integridade para recuperação automática, os MIGs substituem proativamente as instâncias com falha. Assim, essa verificação será mais conservadora do que uma de balanceamento de carga.

Para mais informações, consulte Configurar a verificação de integridade e recuperação automática de aplicativo.

Grupos regionais ou zonais

É possível criar dois tipos de MIGs:

  • Um MIG zonal, que implanta instâncias em uma zona única.
  • Um MIG regional, que implanta instâncias em várias zonas na mesma região.

Ambos oferecem todas as vantagens dos MIGs. Os MIGs regionais aumentam a disponibilidade distribuindo a carga de aplicativos em várias zonas, o que protege a carga de trabalho contra falhas zonais. Além disso, os MIGs regionais oferecem mais capacidade. Por padrão, é possível criar até 2.000 VMs em um MIG regional e 1.000 VMs em um MIG zonal. Se você precisar de mais VMs, aumente o limite de tamanho do MIG ou entre em contato com o suporte.

Balanceamento de carga

O balanceamento de carga do Google Cloud pode usar grupos de instâncias para exibir o tráfego. Dependendo do tipo de balanceador de carga escolhido, é possível adicionar grupos de instâncias a um pool de destino ou serviço de back-end.

Para mais informações, consulte Como adicionar um grupo de instâncias em um balanceador de carga.

Escalonamento automático

Os MIGs são compatíveis com o escalonamento automático que adiciona ou remove dinamicamente instâncias de VM do grupo em resposta aos aumentos ou às diminuições de carga. É possível configurar uma política de escalonamento automático para especificar como você quer escalonar o grupo. Na política de escalonamento automático, é possível definir um ou mais sinais para escalonar o grupo com base na utilização da CPU, na capacidade de balanceamento de carga, nas métricas do Cloud Monitoring, nas programações ou, no caso de MIGs zonais, usando uma carga de trabalho baseada em fila, como o Pub/Sub.

Para mais informações, consulte Escalonamento automático de grupos de instâncias.

Atualização automática

É possível implantar, com facilidade e segurança, novas versões de software nas instâncias de um MIG. O lançamento de uma atualização acontece automaticamente de acordo com suas especificações: controle a velocidade e o escopo da atualização para minimizar interrupções no aplicativo. Outra opção é fazer lançamentos parciais que permitam testes canário.

Consulte Como atualizar MIGs.

Suporte para cargas de trabalho com estado

É possível criar implantações altamente disponíveis de cargas de trabalho com estado em VMs usando grupos de instâncias gerenciadas com estado (MIGs com estado). As cargas de trabalho com estado incluem aplicativos com dados ou configurações com estado, como bancos de dados, aplicativos monolíticos legados e cálculos em lote de longa duração com checkpoint.

É possível melhorar o tempo de atividade e a resiliência desses aplicativos com a recuperação automática, atualizações controladas e implantações em várias zonas, preservando o estado exclusivo de cada instância, incluindo discos permanentes, metadados e nomes de instância personalizáveis.

Para mais informações, leia MIGs com estado.

Criar VMs de GPU de uma só vez

É possível criar uma solicitação de redimensionamento em um MIG com VMs de GPU para criar as VMs solicitadas de uma só vez quando a capacidade solicitada está disponível. Quando você cria uma solicitação de redimensionamento em um MIG, o Compute Engine programa a criação das VMs com base no número de VMs solicitadas, na duração de execução solicitada e na disponibilidade dos recursos solicitados nas zonas do MIG. Em seguida, na entrega programada dos recursos, o MIG cria o número solicitado de VMs de uma só vez. As VMs são executadas até o fim da duração de execução ou até serem excluídas.

Para mais informações, consulte Sobre solicitações de redimensionamento em um MIG.

Grupos de instâncias preemptivas

Para cargas de trabalho em que redução nos custos é mais importante do que agilidade na execução, diminua o custo da carga de trabalho usando instâncias de VM preemptivas no grupo de instâncias. As instâncias preemptivas duram até 24 horas e são interrompidas de forma forçada e otimizada. O aplicativo terá 30 segundos para fechar corretamente. As instâncias preemptivas podem ser excluídas a qualquer momento, mas a recuperação automática as trará de volta quando a capacidade preemptiva estiver disponível novamente.

Contêineres

Simplifique a implantação de aplicativos implantando contêineres em instâncias de grupos de instâncias gerenciadas. Quando você especifica uma imagem de contêiner em um modelo de instância e depois usa esse modelo para criar um grupo de instâncias gerenciadas, cada VM será criada com um SO otimizado para contêineres que inclui o Docker, e seu contêiner será iniciado automaticamente em cada VM do grupo. Consulte Como implantar contêineres em VMs e MIGs.

Rede e sub-rede

Ao criar um grupo de instâncias gerenciadas, você precisa referenciar um modelo de instância atual. O modelo de instância define a rede VPC e a sub-rede que as instâncias membro usam. Se você omitir uma rede VPC, o Google Cloud tentará usar a rede VPC chamada default e a sub-rede criada automaticamente na região especificada no modelo.

Para mais informações, consulte Redes e sub-redes.

Se quiser que o grupo de instâncias gerenciadas inclua instâncias de VM que usam o endereçamento IPv6, use a configuração de pilha dupla ao criar o modelo de instância. Para mais informações, consulte Criar um modelo de instância com endereços IPv6.

Demonstração dos recursos de MIG

Nesta apresentação em vídeo de 45 minutos, gravada no Google Cloud Next '18, você encontrará demonstrações e práticas recomendadas para configurar, executar e atualizar implantações escalonáveis e altamente disponíveis usando MIGs do Compute Engine.

O vídeo mostra como implantar um contêiner em um MIG, configurar uma política de recuperação automática, usar um grupo regional para se proteger contra uma falha de zona, configurar o escalonamento automático para atender às metas de CPU e às demandas baseadas em fila, além de gerenciar atualizações graduais e canário.

Grupos de instâncias não gerenciadas

Os grupos de instâncias não gerenciadas podem conter instâncias heterogêneas que podem ser adicionadas e removidas arbitrariamente do grupo. Esses grupos não oferecem escalonamento automático, recuperação automática, suporte a atualizações graduais, suporte a várias zonas ou o uso de modelos de instâncias, além de não serem adequados para implantar cargas de trabalho altamente disponíveis e escalonáveis. Use grupos de instâncias não gerenciadas quando precisar aplicar o balanceamento de carga a grupos de instâncias heterogêneas ou quando precisar gerenciar as instâncias por conta própria. É possível adicionar até 2.000 VMs a um grupo. Se você quiser adicionar mais de 2.000 VMs ao grupo, entre em contato com o suporte.

Caso seja necessário criar grupos de instâncias não gerenciadas, consulte esta página.

Preços

Não há cobrança extra pelo uso de grupos de instâncias gerenciadas ou não gerenciadas. A cobrança é feita com base nos recursos usados pelo grupo. Para informações sobre preços do Compute Engine, consulte Preços.

A seguir