Sobre MIGs regionais


Um grupo gerenciado de instâncias (MIG) que distribui suas VMs por diversas zonas de uma região também é conhecido como MIG regional . Um MIG confinado a uma única zona também é conhecido como MIG zonal .

Você pode usar um MIG regional para aumentar a resiliência da sua carga de trabalho baseada em MIG. Distribuir sua carga de trabalho por diversas zonas de uma região ajuda a protegê-lo contra casos extremos em que todas as instâncias de uma única zona falham.

Este documento contém informações conceituais sobre MIGs regionais:

Para saber como criar um MIG regional, consulte Criando um MIG em múltiplas zonas .

Por que escolher grupos de instâncias gerenciadas regionais?

O Google recomenda MIGs regionais em vez de MIGs zonais pelos seguintes motivos:

  • Você pode usar MIGs regionais para gerenciar até 2.000 instâncias, o dobro dos MIGs zonais. Se precisar de mais, você poderá aumentar ainda mais o limite de tamanho de um MIG regional para 4.000 instâncias.
  • Você pode usar MIGs regionais para distribuir a carga do seu aplicativo por diversas zonas, em vez de confinar seu aplicativo a uma única zona ou gerenciar vários MIGs zonais em zonas diferentes.

O uso de múltiplas zonas protege contra falhas zonais e cenários imprevistos em que um grupo inteiro de instâncias em uma única zona apresenta mau funcionamento. Se isso acontecer, seu aplicativo poderá continuar atendendo ao tráfego de instâncias em execução em outra zona na mesma região.

No caso de uma falha zonal ou se um grupo de instâncias em uma zona parar de responder, um MIG regional continuará oferecendo suporte às suas instâncias da seguinte forma:

  • O número de instâncias que fazem parte do MIG regional nas restantes zonas continuam a servir o tráfego. Nenhuma nova instância é adicionada e nenhuma instância é redistribuída (a menos que você configure o escalonamento automático ).

  • Após a recuperação da zona com falha, o MIG começa a servir o tráfego novamente daquela zona.

Ao projetar aplicações robustas e escaláveis, use MIGs regionais.

Opções adicionais de configuração para MIGs regionais

A criação de um MIG regional é semelhante à criação de um MIG zonal , exceto que você tem opções adicionais:

Essas opções são descritas nas seções a seguir.

Seleção de zona

Por padrão, um MIG regional distribui suas instâncias gerenciadas uniformemente em três zonas. Por vários motivos, você pode querer selecionar zonas específicas para seu aplicativo. Por exemplo, se você precisar de GPUs para suas instâncias, poderá selecionar apenas zonas que ofereçam suporte a GPUs ou poderá ter discos permanentes ou reservas existentes que estejam disponíveis apenas em determinadas zonas.

Se quiser escolher o número de zonas ou escolher as zonas específicas nas quais o grupo funciona, você deverá fazer isso ao criar o grupo pela primeira vez. Depois de escolher zonas específicas durante a criação, você não poderá alterar ou atualizar as zonas posteriormente.

Se desejar que seu MIG use automaticamente zonas que suportam o hardware especificado na configuração do seu MIG , você pode definir o formato de distribuição de destino do MIG como BALANCED , ANY ou ANY_SINGLE_ZONE e selecionar todas as zonas em uma região. O MIG verifica automaticamente a disponibilidade de recursos e agenda instâncias apenas em zonas que possuem os recursos. Para obter mais informações, consulte Formato de distribuição de destino .

  • Para selecionar mais de três zonas em uma região, você deve especificar explicitamente as zonas individuais. Por exemplo, para selecionar todas as quatro zonas dentro de uma região, você deve fornecer todas as quatro zonas explicitamente na sua solicitação. Caso contrário, o Compute Engine selecionará três zonas por padrão.

  • Para selecionar duas ou menos zonas em uma região, você deve especificar explicitamente as zonas individuais. Mesmo que a região contenha apenas duas zonas, você ainda deverá especificar explicitamente as zonas na sua solicitação.

O Google expande regularmente sua infraestrutura, disponibilizando hardware especializado em mais zonas. Um MIG regional verifica periodicamente a disponibilidade do hardware e inicia automaticamente o agendamento de instâncias em zonas que suportam as máquinas necessárias. Se por algum motivo você não quiser executar suas instâncias em algumas zonas, não selecione essas zonas ao criar seu grupo.

Para saber como criar um MIG regional e selecionar zonas, consulte Criando um MIG regional .

Forma de distribuição alvo

Por padrão, um MIG regional distribui suas instâncias gerenciadas uniformemente pelas zonas selecionadas. Mas se você precisar de hardware que não esteja disponível em todas as zonas ou se precisar priorizar o uso de reservas zonais, talvez prefira uma distribuição diferente.

Para configurar como seu MIG regional distribui suas instâncias em zonas selecionadas dentro de uma região, defina o formato de distribuição de destino do MIG . As seguintes opções estão disponíveis:

  • MESMO (padrão): o grupo cria e exclui VMs para atingir e manter o mesmo número de VMs nas zonas selecionadas. Numa distribuição EVEN , o número de VMs não difere em mais de 1 entre duas zonas quaisquer. Recomendado para cargas de trabalho de serviço altamente disponíveis.
  • EQUILIBRADO : o grupo prioriza a criação de VMs em zonas onde os recursos estão disponíveis, ao mesmo tempo que distribui as VMs da maneira mais uniforme possível pelas zonas selecionadas para minimizar o impacto da falha zonal. Recomendado para cargas de trabalho em lote ou de veiculação altamente disponíveis.
  • QUALQUER : o grupo escolhe zonas para criar instâncias de VM para atender ao número solicitado de VMs dentro das restrições de recursos atuais e para maximizar a utilização de reservas zonais não utilizadas. Recomendado para cargas de trabalho em lote que não exigem alta disponibilidade.
  • QUALQUER ZONA ÚNICA : o grupo cria todas as instâncias de VM em uma única zona. A zona é escolhida com base no suporte de hardware, na disponibilidade atual de recursos e cotas e nas reservas correspondentes. Recomendado em combinação com uma política compacta de posicionamento de instâncias para cargas de trabalho que exigem comunicação extensiva entre VMs.

Ao criar seu MIG, se você definir seu formato como BALANCED , ANY ou ANY_SINGLE_ZONE , não será necessário verificar manualmente quais zonas suportam o hardware especificado na configuração do MIG . Você pode selecionar todas as zonas em uma região e, com seu formato definido como BALANCED , ANY ou ANY_SINGLE_ZONE , seu MIG regional verifica a disponibilidade de recursos para você e agenda instâncias apenas em zonas que possuem os recursos.

Escolha uma opção com base nos requisitos da sua carga de trabalho e nos recursos MIG necessários. Para obter mais informações, consulte a tabela de comparação e casos de uso .

Para saber como configurar o formato de destino para um MIG novo ou existente, consulte Configurando uma política para distribuição de instâncias entre zonas .

Redistribuição proativa de instâncias

Por padrão, um MIG regional tenta manter uma distribuição uniforme de instâncias entre zonas da região para maximizar a disponibilidade do seu aplicativo no caso de uma falha no nível da zona.

Se você excluir ou abandonar instâncias do seu grupo, causando distribuição desigual entre zonas, o grupo redistribuirá proativamente as instâncias para restabelecer uma distribuição uniforme.

Para restabelecer uma distribuição uniforme entre zonas, o grupo exclui instâncias em zonas com mais instâncias e adiciona instâncias a zonas com menos instâncias. O grupo escolhe automaticamente quais instâncias serão excluídas.

A redistribuição proativa restabelece a distribuição uniforme entre as zonas.
Exemplo de redistribuição proativa

Por exemplo, suponha que você tenha um MIG regional com 12 instâncias espalhadas por 3 zonas: a , b e c . Se você excluir três instâncias gerenciadas em c , o grupo tentará reequilibrar para que as instâncias sejam novamente distribuídas uniformemente pelas zonas. Nesse caso, o grupo exclui 2 instâncias (uma de a e outra de b ) e cria 2 instâncias na zona c , para que cada zona tenha 3 instâncias e uma distribuição uniforme seja alcançada. Não há como determinar seletivamente quais instâncias serão excluídas. O grupo perde capacidade temporariamente enquanto as novas instâncias são iniciadas.

Para evitar a redistribuição automática de suas instâncias, você pode desativar a redistribuição proativa de instâncias .

Desativar a redistribuição proativa de instâncias é útil quando você precisa:

  • Exclua ou abandone instâncias do grupo sem afetar outras instâncias em execução. Por exemplo, você pode excluir uma instância de trabalho em lote após a conclusão do trabalho sem afetar outros trabalhadores.
  • Proteja instâncias com cargas de trabalho com estado contra exclusão automática indesejável devido à redistribuição proativa.
  • Defina o formato de distribuição alvo do MIG como BALANCED ou ANY_SINGLE_ZONE
Desabilitar a redistribuição proativa pode afetar a capacidade durante um             falha zonal.
Distribuição desigual após desativar a redistribuição proativa

Se você desativar a redistribuição proativa de instâncias, um MIG não adicionará ou removerá instâncias proativamente para alcançar o equilíbrio, mas ainda converge de forma oportunista para o equilíbrio durante as operações de redimensionamento, tratando cada operação de redimensionamento como uma oportunidade para equilibrar o grupo. Por exemplo, ao ampliar, o grupo usa automaticamente o redimensionamento como uma oportunidade para remover instâncias de zonas maiores; ao expandir, o grupo aproveita a oportunidade para adicionar instâncias a zonas menores.

Diferenças de comportamento dos MIGs zonais

A principal diferença entre um MIG zonal e um MIG regional é que um MIG regional pode usar mais de uma zona.

Como as instâncias gerenciadas de um MIG regional são distribuídas entre zonas dentro de uma região, os seguintes recursos do MIG se comportam de maneira um pouco diferente.

Escalonamento automático de um MIG regional

O Compute Engine oferece escalonamento automático para MIGs, o que permite que seus grupos adicionem VMs (aumento horizontal) ou removam VMs (aumento horizontal) automaticamente com base em aumentos ou diminuições na carga.

Se você ativar o escalonamento automático para um MIG regional, o recurso se comportará da seguinte maneira:

  • O escalonador automático distribui VMs pelas zonas da maneira mais igualitária possível.

  • Com o formato de distribuição de destino definido como BALANCED , o escalonador automático está ciente da disponibilidade de recursos entre zonas. O escalonador automático cria VMs proativamente apenas em zonas com cota e capacidade suficientes para VMs, conforme especificado na configuração do MIG .

Atualizando um MIG regional

Você não pode alterar ou atualizar as zonas de um MIG regional após a criação do grupo. Mas você pode definir o formato de distribuição alvo do grupo para priorizar o uso de zonas diferentes — por exemplo, se tiver recursos reservados ou precisar de hardware que não esteja disponível em todas as zonas.

Se desejar implementar um novo modelo em um MIG regional, consulte Atualizando um MIG regional .

Se você quiser adicionar ou remover instâncias em um MIG, o processo será semelhante para MIGs regionais e zonais. Consulte Adicionar e remover VMs em um MIG .

Se você estiver interessado em configurar discos com estado ou metadados com estado em um MIG, consulte Configurando MIGs com estado .

Como aumentar a disponibilidade com superprovisionamento

Vários eventos podem fazer com que uma ou mais instâncias fiquem indisponíveis, e você pode ajudar a mitigar esse problema usando vários Google Cloudserviços:

No entanto, mesmo se você usar esses serviços, seus usuários ainda poderão enfrentar problemas se muitas instâncias estiverem indisponíveis simultaneamente.

Para estar preparado para o caso extremo em que uma zona falha ou um grupo inteiro de instâncias para de responder, o Google recomenda superprovisionar seu MIG. Dependendo das necessidades do seu aplicativo, o provisionamento excessivo do seu grupo evita que o sistema falhe totalmente se uma zona ou grupo de instâncias deixar de responder.

O Google faz recomendações para provisionamento excessivo com a prioridade de manter seu aplicativo disponível para seus usuários. Essas recomendações incluem provisionar e pagar por mais instâncias do que seu aplicativo pode precisar no dia a dia. Baseie suas decisões de provisionamento excessivo nas necessidades dos aplicativos e nas limitações de custos.

Você pode definir o tamanho do seu MIG ao criá-lo e pode adicionar ou remover instâncias depois de criá-lo.

Você pode configurar um escalonador automático para adicionar e remover automaticamente instâncias do grupo com base na carga.

Estimando o tamanho recomendado do grupo

Recomendamos que você provisione instâncias suficientes para que, se todas as instâncias de qualquer zona ficarem indisponíveis, as instâncias restantes ainda atendam ao número mínimo de instâncias necessárias.

Use a tabela a seguir para determinar o tamanho mínimo recomendado para o seu grupo:

Número de zonas Instâncias de VM adicionais Total recomendado de instâncias de VM
2 +100% 200%
3 +50% 150%
4 +33% 133%

Provisionando um MIG regional em três ou mais zonas

Ao criar um MIG regional em uma região com pelo menos três zonas, o Google recomenda superprovisionar seu grupo em pelo menos 50%. Por padrão, um MIG regional cria instâncias em três zonas. Ter instâncias em três zonas já ajuda a preservar pelo menos 2/3 da sua capacidade de atendimento e, se uma única zona falhar, as outras duas zonas da região poderão continuar a atender o tráfego sem interrupção. Ao superprovisionar até 150%, você pode garantir que, se 1/3 da capacidade for perdida, 100% do tráfego será suportado pelas zonas restantes.

Por exemplo, se você precisar de 20 instâncias em seu MIG em três zonas, recomendamos, no mínimo, 50% adicionais de instâncias. Nesse caso, 50% de 20 são 10 instâncias a mais, totalizando 30 instâncias no grupo. Se você criar um MIG regional com tamanho 30, o grupo distribuirá suas VMs pelas três zonas, da seguinte forma:

Zona Número de instâncias de VM
exemplo-zona-1 10
exemplo-zona-2 10
exemplo-zona-3 10

Se alguma zona única falhar, você ainda terá 20 instâncias atendendo ao tráfego.

Provisionando um MIG regional em duas zonas

Para provisionar suas instâncias em duas zonas em vez de três, o Google recomenda dobrar o número de instâncias. Por exemplo, se você precisar de 20 instâncias para seu serviço, distribuídas em duas zonas, recomendamos configurar um MIG regional com 40 instâncias, para que cada zona tenha 20 instâncias. Se uma única zona falhar, você ainda terá 20 instâncias atendendo ao tráfego.

Zona Número de instâncias de VM
exemplo-zona-1 20
exemplo-zona-2 20

Se o número de instâncias no seu grupo não for igualmente divisível em duas zonas, o Compute Engine dividirá uniformemente o grupo de VMs e colocará aleatoriamente as instâncias restantes em uma das zonas.

Provisionando um MIG regional em uma zona

Você pode criar um MIG regional com apenas uma zona. Isso é semelhante à criação de um MIG zonal .

A criação de um MIG regional de zona única não é recomendada porque oferece a garantia mínima para aplicações altamente disponíveis. Se a zona falhar, todo o seu MIG ficará indisponível, potencialmente interrompendo seus usuários.

O que vem a seguir