Sobre flexibilidade de instância em MIGs


A flexibilidade de instâncias em grupos gerenciados de instâncias (MIGs) permite especificar vários tipos de máquinas para as instâncias de máquinas virtuais (VM) no grupo, em vez de ficar limitado a um único tipo de máquina. Se um tipo de máquina não estiver disponível, o MIG poderá selecionar automaticamente outro tipo compatível da sua lista com base na disponibilidade atual de recursos. Essa flexibilidade ajuda a melhorar a obtenção de recursos, especialmente para aplicações que podem operar em diferentes tipos de máquinas e que exigem capacidade em larga escala ou hardware com alta demanda.

Este documento descreve como funciona a flexibilidade de instância em um MIG e suas limitações. Para saber como configurar um MIG para usar flexibilidade de instância, consulte Adicionar flexibilidade de instância .

Flexibilidade de instância

Um MIG cria todas as suas VMs com base no modelo de instância selecionado. O modelo de instância especifica o tipo de máquina a ser usado para cada VM. Com flexibilidade de instâncias, você pode listar todos os tipos de máquinas compatíveis com sua aplicação.

A imagem a seguir compara um MIG que usa um único tipo de máquina com um MIG que usa flexibilidade de instância. Conforme ilustrado na imagem, um MIG com um único tipo de máquina cria VMs idênticas com base em um modelo de instância, enquanto um MIG com flexibilidade de instância pode criar VMs com diferentes tipos e tamanhos de máquinas.

Comparação de um MIG que usa um único tipo de máquina com um MIG que usa flexibilidade de instância

Como funciona a flexibilidade de instância

Por padrão, um MIG cria todas as VMs usando um único tipo de máquina do modelo de instância. Você pode definir vários tipos de máquinas em um MIG configurando uma seleção de instância ( instanceSelections ) na política de flexibilidade de instância ( instanceFlexibilityPolicy ).

Se sua carga de trabalho puder operar em vários tipos de máquinas diferentes, você poderá configurar apenas uma lista de todos os tipos de máquinas compatíveis com seu aplicativo em uma única instanceSelection da seguinte maneira:

  "instanceFlexibilityPolicy": {
    "instanceSelections": {
      "instance-selection-1": {
        "machineTypes": ["c3-standard-8","n2-standard-8","c2-standard-8"]
      }
    }
  }
  

Os tipos de máquina em uma seleção de instância têm preferência igual. Se desejar que um MIG escolha tipos de máquinas em uma ordem específica, você poderá configurar diversas seleções de instâncias, cada uma com uma lista de tipos de máquinas e uma classificação para definir a preferência. Um valor de classificação mais baixo significa maior preferência. O MIG tenta criar suas VMs usando tipos de máquinas com maior preferência. Se esses tipos de máquinas preferenciais não estiverem disponíveis, o MIG utiliza um tipo de máquina com preferência inferior.

  "instanceFlexibilityPolicy": {
    "instanceSelections": {
      "most-preferred": {
        "rank": 1,
        "machineTypes": ["c3-standard-16","n2-standard-16","c2-standard-16"]
      },
      "least-preferred": {
        "rank": 2,
        "machineTypes": ["c3-standard-8","n2-standard-8","c2-standard-8"]
      }
    }
  }
  

Seu aplicativo precisa estar pronto para ser executado em qualquer um dos tipos de máquinas listados, pois a disponibilidade do hardware muda ao longo do tempo e o hardware específico não é garantido, a menos que você use reservas .

Como um MIG seleciona tipos de máquinas

Ao configurar vários tipos de máquinas, o MIG seleciona um tipo de máquina com base na disponibilidade atual de recursos e prioriza reservas não utilizadas. Se você configurou classificações, o MIG primeiro considera sua ordem de preferência. Dentro de uma seleção de instância classificada, o MIG verifica a disponibilidade de recursos, seguida pelas reservas.

As zonas na região do MIG também podem impactar a seleção do tipo de máquina porque a disponibilidade de recursos varia entre as zonas. Para obter mais informações, consulte a seção a seguir sobre como um MIG seleciona zonas.

Como um MIG seleciona zonas

Você pode configurar a flexibilidade da instância em um MIG regional que tenha um formato de distribuição de destino BALANCED ou ANY_SINGLE_ZONE . Com flexibilidade de instância, quando um MIG regional cria uma VM, ele seleciona uma zona dependendo do formato de distribuição de destino selecionado da seguinte forma:

  • BALANCED : O MIG seleciona uma zona com recursos disponíveis que pode equilibrar a distribuição da VM entre zonas da maneira mais uniforme possível. Dentro de uma zona selecionada, o MIG prioriza os tipos de máquinas com base nas classificações, se configuradas, e nas reservas disponíveis.

  • ANY_SINGLE_ZONE : O MIG seleciona uma zona que possui o maior número de tipos de máquinas com base nas classificações, se configuradas, e onde o MIG pode criar a maioria das VMs a partir de reservas não utilizadas.

Para obter mais informações sobre como funciona um formato de distribuição de destino, consulte Formato de distribuição de destino MIG regional .

Flexibilidade e reservas de instâncias

Você pode usar a flexibilidade de instância com reservas. Um MIG usa reservas com base no campo reservationAffinity definido no modelo de instância.

Quando há vários tipos de máquina em uma seleção de instância, o MIG seleciona primeiro o tipo de máquina com reserva não utilizada. Se quiser alterar a ordem na qual o MIG seleciona os tipos de máquinas, você pode configurar seleções de múltiplas instâncias e especificar sua preferência usando classificações. O MIG segue primeiro a ordem de preferência e depois considera as reservas dentro de uma seleção de instância.

Para mais informações sobre reservas, consulte Reservas de recursos zonais do Compute Engine .

Flexibilidade de instância e VMs Spot

Se o seu MIG com flexibilidade de instância usar VMs Spot, o MIG selecionará automaticamente um tipo de máquina com a menor taxa de preempção observada para garantir o mínimo de interrupção para sua carga de trabalho. Se quiser substituir esse comportamento, você pode configurar seleções de múltiplas instâncias e especificar sua preferência usando classificações. O MIG primeiro segue a ordem de preferência e depois considera a confiabilidade das VMs spot em uma seleção de instância.

Para obter mais informações sobre VMs spot, consulte VMs spot em um grupo de instâncias gerenciadas .

Flexibilidade de instância e reparos de VM

Por padrão, se uma VM em um MIG falhar, o MIG repara a VM recriando-a usando a mesma configuração, incluindo o tipo de máquina. Se você configurar a flexibilidade da instância e o tipo de máquina original da VM com falha estiver temporariamente indisponível, o MIG selecionará outro tipo de máquina com base na seleção de instância especificada.

Para obter mais informações sobre reparos, consulte Sobre o reparo de VMs para alta disponibilidade .

Limitações

A flexibilidade da instância tem as seguintes limitações:

O que vem a seguir?