Como configurar endere�os IP com estado em MIGs


Ao configurar endere�os IP com estado em um grupo de inst�ncias gerenciadas (MIG), voc� garante que os endere�os IP sejam preservados quando as inst�ncias de VM no grupo forem recuperadas, atualizadas e recriadas automaticamente de dados.

� poss�vel preservar endere�os IPv4 internos e externos. � poss�vel configurar endere�os IP para serem atribu�dos automaticamente ou atribuir endere�os IP espec�ficos a cada inst�ncia de VM em um MIG.

Antes de come�ar

  • Veja quando usar MIGs com estado e como funcionam os MIGs com estado.
  • Configure a autentica��o, caso ainda n�o tenha feito isso. A autentica��o � o processo de verifica��o da sua identidade para acesso a servi�os e APIs do Google Cloud. Para executar c�digos ou amostras de um ambiente de desenvolvimento local, autentique-se no Compute Engine da seguinte maneira.

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. Terraform

      Para usar os exemplos do Terraform nesta p�gina em um ambiente de desenvolvimento local, instale e inicialize a gcloud CLI e, em seguida, configure o Application Default Credentials com suas credenciais de usu�rio.

      1. Install the Google Cloud CLI.
      2. To initialize the gcloud CLI, run the following command:

        gcloud init
      3. If you're using a local shell, then create local authentication credentials for your user account:

        gcloud auth application-default login

        You don't need to do this if you're using Cloud Shell.

      Confira mais informa��es em Set up authentication for a local development environment.

      REST

      Para usar as amostras da API REST nesta p�gina em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

      Para mais informa��es, consulte Autenticar para usar REST na documenta��o de autentica��o do Google Cloud.

Limita��es

Um MIG com endere�os IP com estado tem as seguintes limita��es:

  • Os endere�os IPv6 n�o s�o aceitos.

  • Endere�os IP internos n�o s�o suportados em redes sem sub-redes, como redes legadas.

Um MIG com configura��o com estado (um MIG com estado) tem as seguintes limita��es:

  • N�o � poss�vel usar o escalonamento autom�tico se o MIG tiver uma configura��o com estado.
  • Se voc� quiser usar atualiza��es graduais automatizadas, defina o m�todo de substitui��o como RECREATE.
  • Para MIGs regionais com estado, � necess�rio desativar a redistribui��o proativa (defina o tipo de redistribui��o como NONE) para evitar a exclus�o de inst�ncias com estado causadas pela redistribui��o autom�tica entre zonas.
  • Se voc� usar uma configura��o de todas as inst�ncias para substituir as propriedades do modelo de inst�ncia, n�o ser� poss�vel especificar essas propriedades em nenhuma configura��o por inst�ncia e ao mesmo tempo na configura��o de todas as inst�ncias do grupo.

Pre�os

As cobran�as de endere�os IP externos ser�o feitas de acordo com os pre�os da rede.

Quando usar endere�os IP com estado

A preserva��o dos endere�os IP das inst�ncias � �til nos seguintes cen�rios:

  • Seu aplicativo requer um endere�o IP para permanecer est�tico depois de ser atribu�do. Por exemplo, o Kafka.
  • A configura��o do aplicativo depende de endere�os IP espec�ficos, por exemplo, um servidor DNS.
  • Os usu�rios, incluindo outros aplicativos, acessam seu servidor por meio de um endere�o IP est�tico dedicado, por exemplo, um servidor de arquivos.
  • Voc� precisa migrar as cargas de trabalho atuais sem alterar a configura��o de rede.

Como configurar endere�os IP com estado para todas as VMs em um grupo

A configura��o de endere�os IP com estado para todas as VMs em um MIG � �til nos seguintes cen�rios:

  • O aplicativo exige que o endere�o IP permane�a est�tico depois de ser atribu�do. No entanto, o aplicativo n�o requer a atribui��o de endere�os IP espec�ficos a inst�ncias espec�ficas. Os endere�os IP podem ser atribu�dos automaticamente na cria��o da inst�ncia.
  • Os usu�rios, inclusive outros aplicativos, acessam os servidores por meio de endere�os IP est�ticos publicados depois de implantar o aplicativo.
  • Voc� quer se beneficiar da recupera��o autom�tica de inst�ncias e das atualiza��es autom�ticas enquanto preserva o endere�o IP est�tico atribu�do automaticamente na cria��o da inst�ncia.

Para manter endere�os IP internos ou externos est�ticos de inst�ncias de VM atuais e futuras no grupo, configure-as na pol�tica com estado.

Quando voc� adiciona a configura��o do endere�o IP com estado � pol�tica com estado do grupo, o MIG aplica a configura��o da seguinte maneira:

  • Para novas inst�ncias, o MIG atribui e reserva automaticamente endere�os IP est�ticos.
  • Para inst�ncias atuais, o MIG promove o uso tempor�rio interno ouExterna Endere�os IP para endere�os est�ticos, reservando os endere�os IP est�ticos correspondentes.
  • Para inst�ncias atuais sem endere�os IP externos, o MIG atribui e reserva endere�os IP est�ticos e adiciona a configura��o de acesso � interface de rede correspondente com os seguintes valores padr�o:

    "accessConfigs": [
      {
        "kind": "compute#accessConfig",
        "name": "External NAT",
        "natIP": "XX.XX.XX.XX",
        "networkTier": "PREMIUM",
        "type": "ONE_TO_ONE_NAT"
      }
    ]
    

Para reservar um endere�o IP est�tico, o MIG cria um recurso Endere�o.

Como configurar endere�os IP com estado na cria��o do MIG

Use o console do Google Cloud, a CLI gcloud, o Terraform ou o REST.

Console

  1. No Console do Google Cloud, acesse a p�gina Grupos de inst�ncias.

    Acesse grupo de inst�ncias

  2. Selecione o projeto e clique em Continuar.

  3. Clique em Criar grupo de inst�ncias.

  4. Selecione Novo grupo gerenciado de inst�ncias (com estado).

  5. Especifique um Nome para o grupo de inst�ncias.

  6. Selecione um modelo de inst�ncia.

  7. Em N�mero de inst�ncias, especifique o n�mero de inst�ncias que voc� quer incluir no grupo.

  8. Em Configura��o com estado, expanda o IP externo e/ou o IP interno que voc� quer tornar com estado.

    1. Em Com estado, selecione Sim.
    2. Na lista suspensa Exclus�o permanente de inst�ncia, selecione a a��o que ser� executada no endere�o IP com estado quando a inst�ncia de VM for exclu�da. As op��es dispon�veis s�o estas:
      • Remover IP: (padr�o) Em vez disso, cancele a atribui��o do endere�o na exclus�o da inst�ncia e mantenha o endere�o reservado.
      • Exclua o IP: exclua a reserva de endere�os IP est�ticos quando uma inst�ncia for exclu�da permanentemente do grupo. Por exemplo, quando voc� excluir uma inst�ncia manualmente ou diminuir o tamanho do grupo.
    3. Depois de concluir a configura��o com estado, clique em Conclu�do.
  9. Clique em Criar.

gcloud

Ao criar um MIG, para especificar quais endere�os IP nas interfaces de rede do modelo de inst�ncia devem ser com estado, use uma ou v�rias das seguintes sinaliza��es com o gcloud compute instance-groups managed create comando .

  • --stateful-internal-ip para marcar um endere�o IP interno de uma determinada interface de rede como "com estado".
  • --stateful-external-ip para marcar um endere�o IP externo de uma determinada interface de rede como "com estado".
gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \
    --template INSTANCE_TEMPLATE \
    --size SIZE \
    --instance-redistribution-type NONE \
    --stateful-internal-ip [enabled | interface-name=NI_NAME][,auto-delete=DELETE_RULE] \
    --stateful-external-ip [enabled | interface-name=NI_NAME][,auto-delete=DELETE_RULE]

Substitua:

  • INSTANCE_GROUP_NAME: o nome do MIG que ser� criado;
  • INSTANCE_TEMPLATE: o nome do modelo de inst�ncia que ser� usado ao criar novas inst�ncias;
  • SIZE: o n�mero inicial de inst�ncias necess�rias nesse grupo;
  • NI_NAME: opcional. Nome da interface de rede. Se n�o for fornecida, a op��o enabled ser� obrigat�ria, e a interface de rede principal chamada nic0 ser� usada por padr�o. Se voc� tiver v�rias interfaces de rede, � poss�vel especificar essa sinaliza��o para cada IP de cada interface de rede.
  • DELETE_RULE: opcional. prescreve o que precisa acontecer ao recurso de endere�o est�tico associado quando uma inst�ncia de VM � exclu�da permanentemente. As op��es dispon�veis s�o estas:

    • never: padr�o. Nunca exclua o endere�o IP est�tico. Em vez disso, cancele a atribui��o do endere�o na exclus�o da inst�ncia e mantenha o endere�o reservado.
    • on-permanent-instance-deletion: exclua a reserva de endere�os IP est�ticos quando uma inst�ncia for exclu�da permanentemente do grupo. Por exemplo, quando voc� excluir uma inst�ncia manualmente ou diminuir o tamanho do grupo.

    Independentemente do valor da regra de exclus�o, o grupo sempre preserva os endere�os IP com estado nas opera��es de recupera��o autom�tica, atualiza��o e recria��o de inst�ncias.

Exemplo

Voc� precisa criar um grupo regional de inst�ncias de VM com endere�os IP internos est�ticos para as redes padr�o e personalizadas e endere�os IP externos est�ticos apenas para a rede padr�o. Os endere�os devem ser atribu�dos automaticamente, mas precisam ser preservados por meio da recupera��o autom�tica, das atualiza��es e dos eventos de recria��o de inst�ncias. Voc� armazena a configura��o de inst�ncia em um modelo de inst�ncia chamado node-template.

Para criar o grupo, execute o seguinte comando:

gcloud compute instance-groups managed create example-group \
    --region us-east1 \
    --template node-template \
    --base-instance-name node \
    --instance-redistribution-type NONE \
    --size 3 \
    --stateful-internal-ip interface-name=nic0,auto-delete=on-permanent-instance-deletion
    --stateful-internal-ip interface-name=nic1,auto-delete=on-permanent-instance-deletion
    --stateful-external-ip enabled,auto-delete=on-permanent-instance-deletion

Os IPs internos das interfaces de rede nic0 e nic1 e o IP externo da interface de rede nic0 s�o configurados como com estado para todas as inst�ncias do grupo. O grupo reserva automaticamente endere�os IP internos e externos est�ticos para cada inst�ncia. Como a sinaliza��o auto-delete est� definida como on-permanent-instance-deletion, o grupo excluir� automaticamente as reservas de endere�o IP est�tico quando voc� excluir as inst�ncias associadas ou todo o grupo.

Para verificar se os IPs internos das interfaces de rede nic0 e nic1 e o IP externo da interface de rede nic0 est�o configurados com estado, execute o seguinte comando:

gcloud compute instance-groups managed describe example-group \
    --zone us-east1-c

A sa�da ser� assim:

baseInstanceName: node
...
name: example-group
...
statefulPolicy:
  preservedState:
    internalIPs:
      nic0:
        autoDelete: ON_PERMANENT_INSTANCE_DELETION
      nic1:
        autoDelete: ON_PERMANENT_INSTANCE_DELETION
    externalIPs:
      nic0:
        autoDelete: ON_PERMANENT_INSTANCE_DELETION
...

Veja que a pol�tica com estado do grupo declara IPs internos das interfaces de rede nic0 e nic1 e IPs externos da interface de rede nic0 como com estado, com a regra para excluir reservas de IP na exclus�o permanente da inst�ncia.

Terraform

Se voc� ainda n�o criou um modelo de inst�ncia, que especifica o tipo de m�quina, a imagem do disco de inicializa��o, a rede e outras propriedades de VM que voc� quer para cada VM no MIG, crie um modelo de inst�ncia.

Ao criar um MIG, para especificar quais endere�os IP nas interfaces de rede do modelo de inst�ncia precisam ter estado, use um ou v�rios dos seguintes blocos:d

  • stateful_internal_ip para marcar um endere�o IP interno de uma determinada interface de rede como "com estado".
  • stateful_external_ip para marcar um endere�o IP externo de uma determinada interface de rede como "com estado".

O exemplo a seguir configura endere�os IP com estado ao criar um MIG regional. Para mais informa��es sobre o recurso usado na amostra, consulte Recurso google_compute_region_instance_group_manager.

resource "google_compute_region_instance_group_manager" "default" {
  name               = "example-group"
  base_instance_name = "node"
  target_size        = 3
  region             = "us-east1"

  version {
    instance_template = google_compute_instance_template.default.id
    name              = "primary"
  }
  update_policy {
    type                         = "OPPORTUNISTIC"
    minimal_action               = "REFRESH"
    instance_redistribution_type = "NONE"
    max_unavailable_fixed        = 3
  }
  stateful_internal_ip {
    interface_name = "nic0"
    delete_rule    = "ON_PERMANENT_INSTANCE_DELETION"
  }
  stateful_internal_ip {
    interface_name = "nic1"
    delete_rule    = "ON_PERMANENT_INSTANCE_DELETION"
  }
  stateful_external_ip {
    interface_name = "nic0"
    delete_rule    = "ON_PERMANENT_INSTANCE_DELETION"
  }
}

Para saber como aplicar ou remover uma configura��o do Terraform, consulte Comandos b�sicos do Terraform.

REST

Ao criar um MIG, para especificar quais endere�os IP nas interfaces de rede do modelo de inst�ncia devem ser com estado, inclua-os no statefulPolicy no corpo da solicita��o instanceGroupManagers.insert ou regionInstanceGroupManagers.insert m�todo:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/instanceGroupManagers

{
  "name": "INSTANCE_GROUP_NAME",
  "versions": [
    {
      "instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE"
    }
  ],
  "targetSize": SIZE,
  "statefulPolicy": {
    "preservedState": {
      "internalIPs": {
        "NI_NAME": {"autoDelete": "DELETE_RULE" }
      },
      "externalIPs": {
        "NI_NAME": {"autoDelete": "DELETE_RULE" }
      }
    }
  },
  "updatePolicy": {
    "instanceRedistributionType": "NONE"
  }
}

Substitua:

  • PROJECT: o ID do projeto para a solicita��o.
  • REGION: para MIGs regionais, a regi�o em que o MIG est� localizado. Para MIGs zonais, substitua regions/REGION por zones/ZONE e especifique a zona em que o MIG est� localizado.
  • NAME: o nome do MIG que ser� criado;
  • INSTANCE_TEMPLATE: o nome do modelo de inst�ncia que ser� usado ao criar novas inst�ncias;
  • SIZE: o n�mero inicial de inst�ncias necess�rias nesse grupo;
  • NI_NAME: opcional. Nome da interface de rede. Se n�o for fornecida, a op��o enabled ser� obrigat�ria, e a interface de rede principal chamada nic0 ser� usada por padr�o. Se voc� tiver v�rias interfaces de rede, poder� especificar v�rias NI_NAMES.
  • DELETE_RULE: (opcional) determina o que precisa acontecer em um recurso de endere�o est�tico est�tico quando uma inst�ncia de VM � exclu�da permanentemente. As op��es dispon�veis s�o estas:

    • NEVER: (padr�o) nunca exclua o endere�o IP est�tico. Em vez disso, cancele a atribui��o do endere�o na exclus�o da inst�ncia e mantenha o endere�o reservado.
    • ON_PERMANENT_INSTANCE_DELETION: exclua a reserva de endere�os IP est�ticos quando uma inst�ncia for exclu�da permanentemente do grupo. Por exemplo, quando voc� excluir uma inst�ncia manualmente ou diminuir o tamanho do grupo.

    Independentemente do valor da regra de exclus�o, o grupo sempre preserva os endere�os IP com estado nas opera��es de recupera��o autom�tica, atualiza��o e recria��o de inst�ncias.

Exemplo

Voc� precisa criar um grupo regional de inst�ncias de VM com endere�os IP internos est�ticos para as redes padr�o e personalizadas e endere�os IP externos est�ticos apenas para a rede padr�o. Os endere�os devem ser atribu�dos automaticamente, mas precisam ser preservados por meio da recupera��o autom�tica, das atualiza��es e dos eventos de recria��o de inst�ncias. Voc� armazena a configura��o de inst�ncia em um modelo de inst�ncia chamado node-template.

Para criar a imagem, use o m�todo regionInstanceGroupManagers.insert.

POST https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-east1/instanceGroupManagers

{
  "name": "example-group",
  "baseInstanceName": "node",
  "versions": [
    {
      "instanceTemplate": "global/instanceTemplates/node-template"
    }
  ],
  "targetSize": 3,
  "statefulPolicy": {
    "preservedState": {
      "internalIPs": {
        "nic0": {"autoDelete": "ON_PERMANENT_INSTANCE_DELETION" },
        "nic1": {"autoDelete": "ON_PERMANENT_INSTANCE_DELETION" }
      }
      "externalIPs": {
        "nic0": {"autoDelete": "ON_PERMANENT_INSTANCE_DELETION" }
      }
    }
  },
  "updatePolicy": {
    "instanceRedistributionType": "NONE"
  }
}

Os IPs internos das interfaces de rede nic0 e nic1 e os IPs externos da interface de rede nic0 s�o configurados como com estado para todas as inst�ncias do grupo. O grupo reserva automaticamente endere�os IP internos e externos est�ticos para cada inst�ncia. Como o campo auto-delete est� definido como ON_PERMANENT_INSTANCE_DELETION, o grupo excluir� automaticamente as reservas de endere�o IP est�tico quando voc� excluir inst�ncias associadas ou todo o grupo.

Use o m�todo regionInstanceGroupManagers.get para verificar se os IPs internos das interfaces de rede nic0 e nic1 e os IPs externos da interface de rede nic0 est�o configurados na pol�tica com estado do novo recurso regionInstanceGroupManagers:

GET https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-east1/instanceGroupManagers/example-group

A resposta cont�m a pol�tica com estado configurada:

{
  "name": "example-group",
  "baseInstanceName": "node",
  ...
  "statefulPolicy": {
    "preservedState": {
      "internalIPs": {
        "nic0": {"autoDelete": "ON_PERMANENT_INSTANCE_DELETION" },
        "nic1": {"autoDelete": "ON_PERMANENT_INSTANCE_DELETION" }
      }
      "externalIPs": {
        "nic0": {"autoDelete": "ON_PERMANENT_INSTANCE_DELETION" }
      }
    }
  }
  ...
}

Veja que a pol�tica com estado do grupo declara IPs internos das interfaces de rede nic0 e nic1 e IPs externos da interface de rede nic0 como com estado, com a regra para excluir reservas associadas de endere�o IP est�tico na exclus�o permanente da inst�ncia.

Como definir e atualizar a configura��o com estado para endere�os IP em um MIG atual

Se voc� executar uma carga de trabalho em um MIG sem estado, sem qualquer configura��o com estado, e a carga de trabalho exigir endere�os IP est�ticos, ser� poss�vel configurar os endere�os IP j� atribu�dos �s inst�ncias de VM gerenciadas para se tornarem com estado. Isso garante que os endere�os IP das VMs existentes sejam preservados na recupera��o autom�tica, nas atualiza��es e nos eventos de recria��o de inst�ncias. Opcionalmente, � poss�vel manter as reservas de endere�os IP est�ticos depois que as inst�ncias forem exclu�das.

Ao configurar uma pol�tica com estado para endere�os IP em um MIG atual, � poss�vel fazer o seguinte:

  • Configure endere�os IP como "com estado" para todas as inst�ncias atuais e futuras do grupo. Isso promove os endere�os IP tempor�rios correspondentes de todas as inst�ncias atuais para endere�os IP est�ticos.
  • Atualize a configura��o com estado atual para endere�os IP.

O MIG aplica a configura��o atualizada na pol�tica com estado a todas as inst�ncias de maneira autom�tica e ass�ncrona. As atualiza��es nas configura��es de endere�o IP em uma pol�tica com estado n�o interrompem a execu��o das inst�ncias de VM. Para saber mais, leia sobre como aplicar atualiza��es de pol�tica com estado.

Console

  1. No Console do Google Cloud, acesse a p�gina Grupos de inst�ncias.

    Acesse grupo de inst�ncias

  2. Clique no nome do grupo de inst�ncias em que voc� quer especificar endere�os IP com estado.

  3. Clique em Editar para modificar o grupo gerenciado de inst�ncias.

  4. Em Configura��o com estado, expanda o IP externo e/ou o IP interno que voc� quer tornar com estado.

    1. Em Com estado, selecione Sim.
    2. Na lista suspensa Exclus�o permanente de inst�ncia, selecione a a��o que ser� executada no endere�o IP com estado quando a inst�ncia de VM for exclu�da. As op��es dispon�veis s�o estas:
      • Remover IP: (padr�o) Em vez disso, cancele a atribui��o do endere�o na exclus�o da inst�ncia e mantenha o endere�o reservado.
      • Exclua o IP: exclua a reserva de endere�os IP est�ticos quando uma inst�ncia for exclu�da permanentemente do grupo. Por exemplo, quando voc� excluir uma inst�ncia manualmente ou diminuir o tamanho do grupo.
    3. Depois de atualizar a configura��o com estado, clique em Conclu�do.
    4. Clique em Salvar para concluir a atualiza��o.

gcloud

Para especificar quais endere�os IP precisam ser com estado ou para atualizar a configura��o de IP com estado de um MIG atual, use uma ou v�rias sinaliza��es --stateful-internal-ip ou --stateful-external-ip com o gcloud compute instance-groups managed update.

gcloud compute instance-groups managed update INSTANCE_GROUP_NAME \
    --stateful-internal-ip [enabled | interface-name=NI_NAME][,auto-delete=DELETE_RULE] \
    --stateful-external-ip [enabled | interface-name=NI_NAME][,auto-delete=DELETE_RULE]

Substitua:

  • INSTANCE_GROUP_NAME: o nome do MIG que ser� atualizado;
  • NI_NAME: opcional. Nome da interface de rede. Se n�o for fornecida, a op��o enabled ser� obrigat�ria, e a interface de rede principal chamada nic0 ser� usada por padr�o. Se voc� tiver v�rias interfaces de rede, � poss�vel especificar essa sinaliza��o para cada IP de cada interface de rede.
  • DELETE_RULE: opcional. prescreve o que precisa acontecer com um recurso de endere�o est�tico associado quando uma inst�ncia de VM � exclu�da permanentemente. As op��es dispon�veis s�o estas:

    • never: padr�o. Nunca exclua o endere�o IP est�tico. Em vez disso, cancele a atribui��o do endere�o na exclus�o da inst�ncia e mantenha o endere�o reservado.
    • on-permanent-instance-deletion: exclua a reserva de endere�os IP est�ticos quando uma inst�ncia for exclu�da permanentemente do grupo. Por exemplo, quando voc� excluir uma inst�ncia manualmente ou diminuir o tamanho do grupo.

    Independentemente do valor da regra de exclus�o, o grupo sempre preserva os endere�os IP com estado nas opera��es de recupera��o autom�tica, atualiza��o e recria��o de inst�ncias.

Se um endere�o IP especificado j� estiver configurado na pol�tica com estado de uma determinada interface de rede, o comando atualizar� a configura��o.

Exemplos

� necess�rio expor um servidor de arquivos, em execu��o em um MIG com estado chamado example-fs-group, para usu�rios externos por meio de endere�os IP externos est�ticos. As inst�ncias no grupo t�m endere�os IP externos tempor�rios. Certifique-se de que os endere�os IP sejam preservados na recupera��o autom�tica e nas atualiza��es da inst�ncia para que os usu�rios externos tenham acesso cont�nuo aos servidores por meio dos endere�os IP publicados. Tamb�m � necess�rio manter os endere�os IP reservados para continuidade no caso de exclus�o n�o intencional do grupo.

Atualize o MIG para definir os endere�os IP externos como sendo "com estado" usando o seguinte comando:

gcloud compute instance-groups managed update example-fs-group \
    --stateful-external-ip enabled

Como resultado, o grupo promove endere�os IP externos tempor�rios na interface de rede nic0 para endere�os IP est�ticos de todas as inst�ncias gerenciadas de maneira ass�ncrona.

Os endere�os IP externos agora s�o preservados nos eventos de recupera��o autom�tica, atualiza��o e recria��o de inst�ncias. As reservas de endere�os IP est�ticos associadas n�o s�o atribu�das e s�o preservadas na exclus�o da inst�ncia porque a regra auto-delete n�o especificada � definida como never por padr�o.

Verifique se o IP externo com estado est� configurado na pol�tica com estado executando o comando gcloud compute instance-groups managed describe example-fs-group.

REST

Para especificar os endere�os IP que precisam ser "com estado" ou para atualizar a configura��o de IP com estado de um MIG atual, use o instanceGroupManagers.patch ou regionInstanceGroupManagers.patch:

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME

{
  "statefulPolicy": {
    "preservedState": {
      "internalIPs": {
        "NI_NAME": {"autoDelete": "DELETE_RULE" }
      },
      "externalIPs": {
        "NI_NAME": {"autoDelete": "DELETE_RULE" }
      }
    }
  }
}

Substitua:

  • PROJECT: o ID do projeto para a solicita��o.
  • REGION: para MIGs regionais, a regi�o em que o MIG est� localizado. Para MIGs zonais, substitua regions/REGION por zones/ZONE e especifique a zona em que o MIG est� localizado.
  • NAME: o nome do MIG que ser� criado;
  • NI_NAME: (obrigat�rio) nome da interface de rede; A interface de rede principal � denominada nic0. Se voc� tiver v�rias interfaces de rede, poder� especificar v�rias NI_NAMES.
  • DELETE_RULE: (opcional) determina o que precisa acontecer em um recurso de endere�o est�tico est�tico quando uma inst�ncia de VM � exclu�da permanentemente. As op��es dispon�veis s�o estas:

    • NEVER: (padr�o) nunca exclua o endere�o IP est�tico. Em vez disso, cancele a atribui��o do endere�o na exclus�o da inst�ncia e mantenha o endere�o reservado.
    • ON_PERMANENT_INSTANCE_DELETION: exclua a reserva de endere�os IP est�ticos quando uma inst�ncia for exclu�da permanentemente do grupo. Por exemplo, quando voc� excluir uma inst�ncia manualmente ou diminuir o tamanho do grupo.

    Independentemente do valor da regra de exclus�o, o grupo sempre preserva os endere�os IP com estado nas opera��es de recupera��o autom�tica, atualiza��o e recria��o de inst�ncias.

Se um endere�o IP especificado j� estiver configurado na pol�tica com estado, o m�todo aplicar� patches � configura��o.

Exemplo

� necess�rio expor um servidor de arquivos, em execu��o em um MIG com estado chamado example-fs-group, para usu�rios externos por meio de endere�os IP externos est�ticos. As inst�ncias no grupo t�m endere�os IP externos tempor�rios. Certifique-se de que os endere�os IP sejam preservados na recupera��o autom�tica e nas atualiza��es da inst�ncia para que os usu�rios externos tenham acesso cont�nuo aos servidores por meio da interface de rede publicada. Tamb�m � necess�rio manter os endere�os IP reservados para continuidade caso ocorra exclus�o de grupo n�o intencional.

Corrija o MIG para definir os endere�os IP externos como "com estado":

PATCH https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-east1/instanceGroupManagers/example-fs-group

{
  "statefulPolicy": {
    "preservedState": {
      "externalIPs": {
        "nic0": {"autoDelete": "NEVER" }
      }
    }
  }
}

Como resultado, o grupo promove endere�os IP externos tempor�rios na interface de rede nic0 para endere�os IP est�ticos de todas as inst�ncias gerenciadas de maneira ass�ncrona.

Os endere�os IP externos agora s�o preservados nos eventos de recupera��o autom�tica, atualiza��o e recria��o de inst�ncias. As reservas de endere�os IP est�ticos associadas ser�o canceladas e preservadas na exclus�o da inst�ncia porque a regra autoDelete est� definida como NEVER.

Veja o recurso regionInstanceGroupManagers retornado pelo m�todo regionInstanceGroupManagers.get para verificar se o endere�o IP externo est� configurado na pol�tica com estado.

Como declarar endere�os IP com estado anteriormente como sem estado

Talvez seja necess�rio configurar um endere�o IP com estado para se tornar tempor�rio, por exemplo, pelos seguintes motivos:

  • Voc� reformula seu aplicativo para n�o depender mais de endere�os IP est�ticos.
  • Voc� configurou o IP como sendo "com estado" por engano e quer revert�-lo.

� poss�vel remover a configura��o de IP com estado da pol�tica com estado do grupo para declarar um endere�o IP em uma determinada interface de rede como tempor�rio para todas as inst�ncias gerenciadas.

Quando voc� remove a configura��o de IP com estado da pol�tica com estado, o MIG remove os endere�os IP de maneira autom�tica e ass�ncrona do estado preservado de todas as inst�ncias no grupo. Essa opera��o n�o interrompe a execu��o de inst�ncias de VM. Os endere�os IP permanecem ativos nas inst�ncias, mas n�o s�o mais "com estado". Quando voc� recria ou atualiza as inst�ncias ou quando as inst�ncias s�o recuperadas automaticamente, o MIG cancela a atribui��o dos endere�os IP est�ticos associados e atribui automaticamente endere�os tempor�rios. Se voc� n�o precisar mais manter as reservas de endere�os IP externos est�ticos, poder� liber�-las.

Para saber mais, leia os seguintes documentos:

Console

  1. No Console do Google Cloud, acesse a p�gina Grupos de inst�ncias.

    Acesse grupo de inst�ncias

  2. Clique no nome do grupo de inst�ncias do qual voc� quer remover a configura��o com estado dos endere�os IP.

  3. Clique em Editar para modificar o grupo gerenciado de inst�ncias.

  4. Em Configura��o com estado, expanda o IP externo e/ou o IP interno que voc� quer tornar sem estado.

    1. Altere a op��o Com estado para N�o.
    2. Clique em Conclu�do.
  5. Depois de fazer as altera��es, clique em Salvar.

gcloud

Para especificar os endere�os IP de uma pol�tica com estado do MIG que ser� tempor�rio, use a sinaliza��o --remove-stateful-internal-ips ou --remove-stateful-external-ips com o comando gcloud compute instance-groups managed update:

gcloud compute instance-groups managed update INSTANCE_GROUP_NAME \
    --remove-stateful-internal-ips NI_NAME[,NI_NAME,...] \
    --remove-stateful-external-ips NI_NAME[,NI_NAME,...]

Substitua:

  • INSTANCE_GROUP_NAME: o nome do MIG que ser� atualizado;
  • NI_NAME: obrigat�rio. Nome da interface de rede. A interface de rede principal � denominada nic0. Se voc� tiver v�rias interfaces de rede, poder� especificar v�rias NI_NAMES.

Se voc� precisar transformar um endere�o IP com estado da interface de rede principal padr�o chamada nic0 em um endere�o IP tempor�rio, use tamb�m o seguinte comando:

gcloud compute instance-groups managed update INSTANCE_GROUP_NAME \
    --stateful-internal-ip disabled \
    --stateful-external-ip disabled

Exemplo

O aplicativo foi exposto aos usu�rios por meio de endere�os IP externos est�ticos publicados das inst�ncias de VM em um MIG chamado example-group. Voc� pesquisou novamente seu servi�o implantando um balanceador de carga na frente do MIG e roteando o tr�fego para as VMs gerenciadas por meio dele. N�o � mais necess�rio manter os endere�os IP externos est�ticos e fazer com que eles sejam tempor�rios.

Para tornar os endere�os IP externos com estado das VMs em um MIG ef�mero, execute o seguinte comando:

gcloud compute instance-groups managed update example-group \
    --remove-stateful-external-ips nic0

O MIG remove os endere�os IP externos est�ticos da interface de rede nic0 de maneira autom�tica e ass�ncrona do estado preservado de todas as inst�ncias no grupo. Os endere�os IP externos permanecem ativos nas inst�ncias, mas n�o s�o mais "com estado". Quando voc� recria ou atualiza as inst�ncias ou quando as inst�ncias s�o recuperadas automaticamente, o MIG cancela a atribui��o dos endere�os IP est�ticos associados e atribui automaticamente endere�os tempor�rios. Se voc� n�o precisar mais manter as reservas de endere�os IP externos est�ticos, poder� liber�-las.

REST

Para especificar os endere�os IP de uma pol�tica com estado do MIG que ser� tempor�rio, remova a configura��o de cada IP da pol�tica com estado do MIG usando o instanceGroupManagers.patch ou{ 101]M�todo regionInstanceGroupManagers.patch:

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME

{
  "statefulPolicy": {
    "preservedState": {
      "internalIPs": {
        "NI_NAME": null
      },
      "externalIPs": {
        "NI_NAME": null
      }
    }
  }
}

Substitua:

  • PROJECT: o ID do projeto para a solicita��o.
  • REGION: para MIGs regionais, a regi�o em que o MIG est� localizado. Para MIGs zonais, substitua regions/REGION por zones/ZONE e especifique a zona em que o MIG est� localizado.
  • INSTANCE_GROUP_NAME: o nome do MIG que ser� criado;
  • NI_NAME: (obrigat�rio) nome da interface de rede; A interface de rede principal � denominada nic0. Se voc� tiver v�rias interfaces de rede, poder� especificar v�rias NI_NAMES.

Exemplo

O aplicativo foi exposto aos usu�rios por meio de endere�os IP externos est�ticos publicados das inst�ncias de VM em um MIG chamado example-group. Voc� pesquisou novamente seu servi�o implantando um balanceador de carga em frente ao MIG e roteando o tr�fego para as VMs gerenciadas por meio dele. N�o � mais necess�rio manter os endere�os IP externos est�ticos e quer tornar os endere�os IP externos tempor�rios.

Para tornar os endere�os IP externos com estado das VMs em um MIG ef�mero, corrija o MIG:

PATCH https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-east1/instanceGroupManagers/example-group

{
  "statefulPolicy": {
    "preservedState": {
      "externalIPs": {
        "nic0": null
      }
    }
  }
}

O MIG remove os endere�os IP externos est�ticos da interface de rede nic0 de maneira autom�tica e ass�ncrona do estado preservado de todas as inst�ncias no grupo. Os endere�os IP externos permanecem ativos nas inst�ncias, mas n�o s�o mais "com estado". Quando voc� recria ou atualiza as inst�ncias ou quando as inst�ncias s�o recuperadas automaticamente, o MIG cancela a atribui��o dos endere�os IP est�ticos associados e atribui automaticamente endere�os tempor�rios. Se voc� n�o precisar mais manter as reservas de endere�os IP externos est�ticos, poder� liber�-las.

Como configurar endere�os IP com estado individualmente para VMs em um MIG

A configura��o individual de endere�os IP com estado para VMs em um MIG � �til nos seguintes cen�rios:

  • Migra��o de cargas de trabalho atuais (traga de endere�os IP est�ticos reservados existentes) de inst�ncias de VMs independentes para MIGs com estado a fim de aproveitar a recupera��o autom�tica e as atualiza��es autom�ticas.
  • Atribui��o de endere�os IP est�ticos reservados espec�ficos exigidos pela arquitetura ou configura��o de carga de trabalho.

Como configurar endere�os IP est�ticos na cria��o de VMs em um MIG

� poss�vel reservar e atribuir endere�os IP est�ticos a inst�ncias espec�ficas na cria��o delas individualmente em um MIG. Isso � �til para migrar um aplicativo com estado das VMs independentes atuais para um MIG com estado em uma situa��o em que a arquitetura, a configura��o ou os usu�rios dependem de endere�os IP est�ticos espec�ficos.

Ao criar manualmente uma inst�ncia em um MIG e fornecer um endere�o IP est�tico, o MIG realiza as seguintes a��es:

  1. Cria uma reserva de endere�o IP interno ou externo est�tico para os endere�os IP fornecidos, caso eles ainda n�o existam. de dados.
  2. Cria uma inst�ncia a partir do modelo de inst�ncia usando o nome da inst�ncia e os endere�os IP fornecidos.
  3. Cria uma configura��o por inst�ncia com a configura��o com estado fornecida para os endere�os IP.

gcloud

Para criar uma inst�ncia com um endere�o IP est�tico predefinido, use o comando gcloud compute instance-groups managed create-instance com uma ou v�rias das seguintes sinaliza��es:

  • --stateful-internal-ip para definir um endere�o IP interno est�tico de uma determinada interface de rede.
  • --stateful-external-ip para definir um endere�o IP externo est�tico de uma determinada interface de rede.s
gcloud compute instance-groups managed create-instance INSTANCE_GROUP_NAME \
    --instance INSTANCE_NAME \
    --stateful-internal-ip address=ADDRESS[,interface-name=NI_NAME][,auto-delete=DELETE_RULE] \
    --stateful-external-ip address=ADDRESS[,interface-name=NI_NAME][,auto-delete=DELETE_RULE]

Substitua:

  • INSTANCE_GROUP_NAME: o nome do MIG;
  • INSTANCE_NAME: o nome da inst�ncia que ser� criada
  • NI_NAME: opcional. Nome da interface de rede. Se ela n�o for fornecida, a interface de rede principal chamada nic0 ser� definida por padr�o.s Se voc� tiver v�rias interfaces de rede, poder� especificar essa sinaliza��o para cada IP em cada interface de rede.
  • ADDRESS: obrigat�rio. Endere�o IP est�tico para atribuir � inst�ncia em um dos seguintes formatos:

    • Endere�o. URL de uma reserva de endere�o IP est�tico, por exemplo: "projects/example-project/regions/us-east1/addresses/example-ip-name".
    • Literal: por exemplo: "130.211.181.55".
      • Se o endere�o IP fornecido ainda n�o estiver reservado, o MIG criar� automaticamente uma reserva de endere�o IP correspondente.
      • Se o endere�o IP fornecido estiver reservado, o MIG atribuir� a reserva � inst�ncia.
  • DELETE_RULE: opcional. prescreve o que precisa acontecer com um recurso de endere�o est�tico associado quando uma inst�ncia de VM � exclu�da permanentemente. As op��es dispon�veis s�o estas:

    • never: padr�o. Nunca exclua o endere�o IP est�tico. Em vez disso, cancele a atribui��o do endere�o na exclus�o da inst�ncia e mantenha o endere�o reservado.
    • on-permanent-instance-deletion: exclua a reserva de endere�os IP est�ticos quando uma inst�ncia for exclu�da permanentemente do grupo. Por exemplo, quando voc� excluir uma inst�ncia manualmente ou diminuir o tamanho do grupo.

    Independentemente do valor da regra de exclus�o, o grupo sempre preserva os endere�os IP com estado nas opera��es de recupera��o autom�tica, atualiza��o e recria��o de inst�ncias.

Exemplo

� necess�rio adicionar mais uma inst�ncia de VM ao cluster do servidor proxy, em execu��o em um MIG chamado proxy-cluster. Voc� criou uma reserva de endere�o IP interno est�tico chamada proxy-node-03-ip e precisa atribu�-la ao novo n�. Voc� quer manter a reserva de endere�o IP mesmo que decida excluir o n� no futuro.

Execute este comando para criar a API:

gcloud compute instance-groups managed create-instance proxy-cluster \
    --instance proxy-node-03 \
    --stateful-internal-ip address="projects/example-project/regions/us-east1/addresses/proxy-node-03-ip",auto-delete=never

O comando cria uma inst�ncia chamada proxy-node-03, atribui o endere�o IP interno est�tico fornecido com o nome proxy-node-03-ip � inst�ncia e armazena a configura��o com estado para o IP no -instance. Como a sinaliza��o auto-delete est� definida como never, o IP permanecer� reservado se voc� excluir a inst�ncia posteriormente.

Terraform

Para criar uma VM com um endere�o IP est�tico predefinido, use um ou v�rios dos seguintes blocos:

  • preserved_state.internal_ip para marcar um endere�o IP interno de uma determinada interface de rede como "com estado".
  • preserved_state.external_ip para marcar um endere�o IP externo de uma determinada interface de rede como "com estado".

O exemplo a seguir configura endere�os IP est�ticos na cria��o de VMs em um MIG regional. Para mais informa��es sobre o recurso usado na amostra, consulte Recurso google_compute_region_per_instance_config. Para um MIG zonal, use o recurso google_compute_per_instance_config.

resource "google_compute_region_per_instance_config" "default" {
  region_instance_group_manager = google_compute_region_instance_group_manager.default.name
  region                        = google_compute_region_instance_group_manager.default.region
  name                          = "proxy-node-03-ip"
  preserved_state {
    internal_ip {
      interface_name = "nic0"
      auto_delete    = "NEVER"
      ip_address {
        address = google_compute_address.default.id
      }
    }
  }
}

Para saber como aplicar ou remover uma configura��o do Terraform, consulte Comandos b�sicos do Terraform.

REST

Para criar uma ou v�rias inst�ncias em um MIG, defina nomes de inst�ncias personalizadas e atribua endere�os IP est�ticos predefinidos a essas inst�ncias. Para isso, use o instanceGroupManagers.createInstances ou }regionInstanceGroupManagers.createInstances.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME/createInstances

{
  "instances": [
    {
      "name": "INSTANCE_NAME",
      "preservedState" : {
        "internalIPs": {
          "NI_NAME" : {
            "ipAddress": {
              "address": "ADDRESS",
              "literal": "LITERAL"
            },
            "autoDelete": "DELETE_RULE"
          },
          ...
        },
        "externalIPs": {
          "NI_NAME" : {
            "ipAddress": {
              "address": "ADDRESS",
              "literal": "LITERAL"
            },
            "autoDelete": "DELETE_RULE"
          },
          ...
        },
        ...
      }
    },
    ...
  ]
}

Substitua:

  • PROJECT_ID: o ID do projeto para a solicita��o.
  • NAME: o nome do MIG;
  • REGION: para MIGs regionais, a regi�o em que o MIG est� localizado. Para MIGs zonais, substitua regions/REGION por zones/ZONE e especifique a zona em que o MIG est� localizado.
  • INSTANCE_NAME: o nome da inst�ncia que ser� criada
  • NI_NAME: obrigat�rio. Nome da interface de rede. A interface de rede principal � denominada nic0. Se voc� tiver v�rias interfaces de rede, poder� especificar v�rias NI_NAMES.
  • ADDRESS: opcional. Endere�o IP est�tico a ser atribu�do � inst�ncia no formato de um URL de uma reserva de endere�o IP est�tico. Por exemplo: "projects/example-project/regions/us-east1/addresses/example-ip-name". Voc� s� pode definir um campo por vez, address ou literal, ao atribuir um endere�o IP est�tico.
  • LITERAL: opcional. Endere�o IP est�tico a ser atribu�do � inst�ncia no formato literal. Por exemplo: "130.211.181.55". Voc� s� pode definir um campo por vez, seja address ou literal, ao atribuir um endere�o IP est�tico.
    • Se o endere�o IP literal fornecido ainda n�o estiver reservado, o MIG criar� automaticamente uma reserva de endere�o IP correspondente.
    • Se o endere�o IP literal fornecido estiver reservado, o MIG atribuir� a reserva � inst�ncia.
  • DELETE_RULE: opcional. prescreve o que precisa acontecer com um recurso de endere�o est�tico associado quando uma inst�ncia de VM � exclu�da permanentemente. As op��es dispon�veis s�o estas:

    • NEVER: padr�o. Nunca exclua o endere�o IP est�tico. Em vez disso, cancele a atribui��o do endere�o na exclus�o da inst�ncia e mantenha o endere�o reservado.
    • ON_PERMANENT_INSTANCE_DELETION: exclua a reserva de endere�os IP est�ticos quando uma inst�ncia for exclu�da permanentemente do grupo. Por exemplo, quando voc� excluir uma inst�ncia manualmente ou diminuir o tamanho do grupo.

    Independentemente do valor da regra de exclus�o, o grupo sempre preserva os endere�os IP com estado nas opera��es de recupera��o autom�tica, atualiza��o e recria��o de inst�ncias.

Exemplo

� necess�rio adicionar mais uma inst�ncia de VM ao cluster do servidor proxy, em execu��o em um MIG chamado proxy-cluster. Voc� criou uma reserva de endere�o IP interno est�tico chamada proxy-node-03-ip e precisa atribu�-la ao novo n�. Voc� quer manter a reserva de endere�o IP mesmo que decida excluir o n� no futuro.

Chame o m�todo regionInstanceGroupManagers.createInstances para criar uma inst�ncia extra:

POST https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-east1/instanceGroupManagers/proxy-cluster/createInstances

{
  "instances": [
    {
      "name": "proxy-node-03",
      "preservedState" : {
        "internalIPs": {
          "nic0" : {
            "ipAddress": {
              "address": "projects/example-project/regions/us-east1/addresses/proxy-node-03-ip"
            },
            "autoDelete": "NEVER"
          }
        }
      }
    }
  ]
}

O m�todo cria uma inst�ncia chamadaproxy-node-03 , atribui o endere�o IP interno est�tico fornecido com o nomeproxy-node-03-ip para a inst�ncia e armazena a configura��o com estado para o IP noconfigura��o por inst�ncia de dados. Como o campo autoDelete est� definido como NEVER, o IP permanece reservado se voc� excluir a inst�ncia mais tarde.

Como configurar endere�os IP est�ticos para uma VM em um MIG

� poss�vel definir um endere�o IP est�tico predefinido ou atualizar a configura��o de IP com estado para uma inst�ncia gerenciada, por exemplo:

  • Atribua um endere�o IP est�tico a uma inst�ncia atual em um MIG. Para IPs externos est�ticos, essa opera��o requer atualiza��o de inst�ncia e, para IPs internos est�ticos, isso requer a recria��o de inst�ncias.
  • Atualize a regra de exclus�o de um endere�o IP est�tico j� atribu�do. Essa opera��o pode ser feita sem interromper a inst�ncia em execu��o.

Para uma inst�ncia atual sem um endere�o IP externo, em que voc� configura um IP com estado externo, o MIG adiciona a configura��o de acesso � interface de rede correspondente com os valores padr�o a seguir: .

"accessConfigs": [
  {
    "kind": "compute#accessConfig",
    "name": "External Nat",
    "natIP": "XX.XX.XX.XX",
    "networkTier": "PREMIUM",
    "type": "ONE_TO_ONE_NAT"
  }
]

gcloud

Para configurar um endere�o IP com estado individualmente para uma inst�ncia de VM em um MIG, adicione ou atualize a configura��o de IP com estado na configura��o por inst�ncia associada.

Se a inst�ncia ainda n�o tiver uma configura��o por inst�ncia, use o comando gcloud compute instance-groups managed instance-configs create com uma ou v�rias das seguintes sinaliza��es:

  • --stateful-internal-ip para definir um endere�o IP interno est�tico de uma determinada interface de rede.
  • --stateful-external-ip para definir um endere�o IP externo est�tico de uma determinada interface de rede.
gcloud compute instance-groups managed instance-configs create INSTANCE_GROUP_NAME \
    --instance INSTANCE_NAME \
    --stateful-internal-ip address=ADDRESS[,interface-name=NI_NAME][,auto-delete=DELETE_RULE] \
    --stateful-external-ip address=ADDRESS[,interface-name=NI_NAME][,auto-delete=DELETE_RULE] \
    [--no-update-instance | --update-instance]
    [--instance-update-minimal-action MINIMAL_ACTION]

Se j� houver uma configura��o por inst�ncia, use o comando gcloud compute instance-groups managed instance-configs update com uma ou v�rias sinaliza��es --stateful-internal-ipou--stateful-external-ip.

gcloud compute instance-groups managed instance-configs update INSTANCE_GROUP_NAME \
    --instance INSTANCE_NAME \
    --stateful-internal-ip address=ADDRESS[,interface-name=NI_NAME][,auto-delete=DELETE_RULE] \
    --stateful-external-ip address=ADDRESS[,interface-name=NI_NAME][,auto-delete=DELETE_RULE] \
    [--no-update-instance | --update-instance]
    [--instance-update-minimal-action MINIMAL_ACTION]

Substitua:

  • INSTANCE_GROUP_NAME: o nome do MIG;
  • INSTANCE_NAME: o nome da inst�ncia em que os endere�os IP com estado ser�o configurados;
  • NI_NAME: opcional. Nome da interface de rede. Se ela n�o for fornecida, a interface de rede principal chamada nic0 ser� definida por padr�o.s Se voc� tiver v�rias interfaces de rede, poder� especificar essa sinaliza��o para cada IP em cada interface de rede.
  • ADDRESS: endere�o IP est�tico para atribuir � inst�ncia em um dos seguintes formatos:
    • Endere�o. URL de uma reserva de endere�o IP est�tico, por exemplo: "projects/example-project/regions/us-east1/addresses/example-ip-name".
    • Literal. Por exemplo, "130.211.181.55".
      • Se o endere�o IP fornecido ainda n�o estiver reservado, o MIG criar� automaticamente uma reserva de endere�o IP correspondente.
      • Se o endere�o IP fornecido estiver reservado, o MIG atribuir� a reserva � inst�ncia.
    • Essa subsinaliza��o � opcional se o endere�o j� estiver definido na configura��o por inst�ncia da inst�ncia. Caso contr�rio, ela ser� obrigat�ria.
    • Se omitido, o endere�o configurado atualmente permanecer� inalterado.
  • DELETE_RULE: opcional. prescreve o que precisa acontecer com um recurso de endere�o est�tico associado quando uma inst�ncia de VM � exclu�da permanentemente. As op��es dispon�veis s�o estas:

    • never: padr�o. Nunca exclua o endere�o IP est�tico. Em vez disso, cancele a atribui��o do endere�o na exclus�o da inst�ncia e mantenha o endere�o reservado.
    • on-permanent-instance-deletion: exclua a reserva de endere�os IP est�ticos quando uma inst�ncia for exclu�da permanentemente do grupo. Por exemplo, quando voc� excluir uma inst�ncia manualmente ou diminuir o tamanho do grupo.
    • Em caso de omiss�o, o valor padr�o ser� definido na nova configura��o de disco com estado. O valor permanece inalterado em uma configura��o atual.

    Independentemente do valor da regra de exclus�o, o grupo sempre preserva os endere�os IP com estado nas opera��es de recupera��o autom�tica, atualiza��o e recria��o de inst�ncias.

  • --update-instanceOpcional. padr�o) Aplique as altera��es imediatamente � inst�ncia. Se voc� usar a sinaliza��o --no-update-instance, as altera��es permanecer�o n�o aplicadas e ser�o aplicadas quando voc� recriar ou aplicar a atualiza��o � inst�ncia posteriormente.

  • MINIMAL_ACTION: (opcional.) : executa, pelo menos, a a��o especificada ao aplicar a atualiza��o da configura��o por inst�ncia � inst�ncia. Use-a com a sinaliza��o --update-instance. O valor precisa ser um dos indicados abaixo:

    • none: nenhuma a��o.
    • refresh: aplica as atualiza��es poss�veis sem interromper a inst�ncia.
    • restart: interrompa a inst�ncia e inicie-a novamente.
    • replace: recrie a inst�ncia.

Se omitida, a a��o menos interruptiva exigida pela atualiza��o ser� usada.

Exemplo

Voc� tem uma inst�ncia do servidor de arquivos chamada file-server, que � uma �nica inst�ncia em um MIG com estado chamado fs-group. O grupo tem uma configura��o por inst�ncia correspondente, em que um disco de dados com estado � configurado. O servidor de arquivos s� esteve acess�vel internamente, mas agora voc� tem usu�rios que precisam acess�-lo externamente por meio de um endere�o IP est�tico. Voc� reservou o IP externo est�tico criando reserva de endere�o file-server-ip. Agora voc� precisa atribuir esse IP � inst�ncia do servidor de arquivos.

Execute o seguinte comando para configurar o IP externo com estado para a inst�ncia do servidor de arquivos:

gcloud compute instance-groups managed instance-configs update fs-group \
    --instance file-server \
    --stateful-external-ip interface-name=nic0,address="projects/example-project/regions/us-east1/addresses/file-server-ip",auto-delete=never \
    --update-instance

O comando faz o seguinte:

  1. Atualiza a configura��o por inst�ncia da inst�ncia file-server:
    1. Adiciona configura��o de IP externo com estado, apontando para a reserva de endere�o file-server-ip.
    2. Mant�m a configura��o do disco de dados com estado atual inalterada.
  2. Aplica a atualiza��o da configura��o por inst�ncia � inst�ncia file-server imediatamente porque a sinaliza��o --update-instance est� inclu�da: recria a inst�ncia e atribui o endere�o IP externo est�tico da reserva file-server-ip. de dados.

REST

Para configurar IPs com estado individualmente para inst�ncias de VM em um MIG, adicione ou atualize a configura��o do IP com estado nas configura��es por inst�ncia associadas.

Se as configura��es por inst�ncia ainda n�o existirem para as inst�ncias especificadas, use o m�todo instanceGroupManagers.updatePerInstanceConfigs ou regionInstanceGroupManagers.updatePerInstanceConfigs com configura��o com estado para um ou v�rios endere�os IP:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME/updatePerInstanceConfigs

{
  "perInstanceConfigs": [
    {
      "name": "INSTANCE_NAME",
      "preservedState" : {
        "internalIPs": {
          "NI_NAME" : {
            "ipAddress": {
              "address": "ADDRESS",
              "literal": "LITERAL"
            },
            "autoDelete": "DELETE_RULE"
          },
          ...
        },
        "externalIPs": {
          "NI_NAME" : {
            "ipAddress": {
              "address": "ADDRESS",
              "literal": "LITERAL"
            },
            "autoDelete": "DELETE_RULE"
          },
          ...
        },
        ...
      },
      "fingerprint: "FINGERPRINT"
    },
    ...
  ]
}

Se as configura��es por inst�ncia j� existirem para as inst�ncias especificadas, use o m�todo instanceGroupManagers.patchPerInstanceConfigs ou o m�todo regionInstanceGroupManagers.patchPerInstanceConfigs. } com configura��o com estado para um ou v�rios endere�os IP:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME/patchPerInstanceConfigs

{
  "perInstanceConfigs": [
    {
      "name": "INSTANCE_NAME",
      "preservedState" : {
        "internalIPs": {
          "NI_NAME" : {
            "ipAddress": {
              "address": "ADDRESS",
              "literal": "LITERAL"
            },
            "autoDelete": "DELETE_RULE"
          },
          ...
        },
        "externalIPs": {
          "NI_NAME" : {
            "ipAddress": {
              "address": "ADDRESS",
              "literal": "LITERAL"
            },
            "autoDelete": "DELETE_RULE"
          },
          ...
        },
        ...
      },
      "fingerprint: "FINGERPRINT"
    },
    ...
  ]
}

Substitua:

  • PROJECT_ID: o ID do projeto para a solicita��o.
  • NAME: o nome do MIG;
  • REGION: para MIGs regionais, a regi�o em que o MIG est� localizado. Para MIGs zonais, substitua regions/REGION por zones/ZONE e especifique a zona em que o MIG est� localizado.
  • INSTANCE_NAME: obrigat�rio. : o nome da inst�ncia em que os metadados com estado ser�o configurados.
  • NI_NAME: obrigat�rio. Nome da interface de rede. A interface de rede principal � denominada nic0. Se voc� tiver v�rias interfaces de rede, poder� especificar v�rias NI_NAMES.
  • ADDRESS: opcional. Endere�o IP est�tico a ser atribu�do � inst�ncia no formato de um URL de uma reserva de endere�o IP est�tico. Por exemplo: "projects/example-project/regions/us-east1/addresses/example-ip-name". Voc� s� pode e pode definir um campo por vez, endere�o ou literal, ao atribuir um endere�o IP est�tico.
  • LITERAL: opcional. Endere�o IP est�tico a ser atribu�do � inst�ncia no formato literal. Por exemplo, "130.211.181.55". Voc� s� pode definir um campo por vez, endere�o ou literal, ao atribuir um endere�o IP est�tico.
    • Se o endere�o IP literal fornecido ainda n�o estiver reservado, o MIG criar� automaticamente uma reserva de endere�o IP correspondente.
    • Se o endere�o IP literal fornecido estiver reservado, o MIG atribuir� a reserva � inst�ncia.
  • DELETE_RULE: opcional. prescreve o que precisa acontecer com um recurso de endere�o est�tico associado quando uma inst�ncia de VM � exclu�da permanentemente. As op��es dispon�veis s�o estas:

    • NEVER: padr�o. Nunca exclua o endere�o IP est�tico. Em vez disso, cancele a atribui��o do endere�o na exclus�o da inst�ncia e mantenha o endere�o reservado.
    • ON_PERMANENT_INSTANCE_DELETION: exclua a reserva de endere�os IP est�ticos quando uma inst�ncia for exclu�da permanentemente do grupo. Por exemplo, quando voc� excluir uma inst�ncia manualmente ou diminuir o tamanho do grupo.
    • Em caso de omiss�o, o valor padr�o ser� definido na nova configura��o de disco com estado. O valor permanece inalterado em uma configura��o atual.

    Independentemente do valor da regra de exclus�o, o grupo sempre preserva os endere�os IP com estado nas opera��es de recupera��o autom�tica, atualiza��o e recria��o de inst�ncias.

  • FINGERPRINT: opcional. A impress�o digital da configura��o especificada, se j� houver. Usada para bloqueio otimista. A opera��o falhar� se a impress�o digital for diferente do fornecido, porque indica que a configura��o por inst�ncia foi alterada desde a �ltima leitura. Para ver a impress�o digital mais recente, consulte a sa�da do m�todo listPerInstanceConfigs para uma regi�o ou zonal MIG. Se fingerprint for omitido, a opera��o continuar� sem a compara��o da impress�o digital.

Os m�todos updatePerInstanceConfigs e patchPerInstanceConfigs atualizam as configura��es especificadas por inst�ncia, mas n�o aplicam as atualiza��es �s inst�ncias gerenciadas associadas. As altera��es s�o aplicadas a uma inst�ncia quando o MIG recebe a instru��o para recri�-la ou atualiz�-la. � poss�vel aplicar a atualiza��o manualmente para aplicar as altera��es a uma inst�ncia.

Exemplo

Voc� tem uma inst�ncia do servidor de arquivos chamada file-server, que � uma �nica inst�ncia em um MIG com estado chamado fs-group. O grupo tem uma configura��o por inst�ncia correspondente, em que um disco de dados com estado � configurado. O servidor de arquivos s� esteve acess�vel internamente, mas agora voc� tem usu�rios que precisam acess�-lo externamente por meio de um endere�o IP est�tico. Voc� reservou o IP externo est�tico criando reserva de endere�o file-server-ip. Agora voc� precisa atribuir esse IP � inst�ncia do servidor de arquivos.

Para atualizar a configura��o por inst�ncia para file-server com o novo IP externo com estado, chame o m�todo patchPerInstanceConfigs:

POST https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-east1/instanceGroupManagers/fs-group/patchPerInstanceConfigs

{
  "perInstanceConfigs": [
    {
      "name": "file-server",
      "preservedState" : {
        "externalIPs": {
          "nic0" : {
            "ipAddress": {
              "address": "projects/example-project/regions/us-east1/addresses/file-server-ip"
            },
            "autoDelete": "NEVER"
          }
        }
      }
    }
  ]
}

O m�todo corrige a configura��o por inst�ncia para file-server:

  1. Adiciona configura��o de IP externo com estado, apontando para a reserva de endere�o file-server-ip.
  2. Mant�m a configura��o do disco de dados com estado atual inalterada.

A atualiza��o da configura��o ainda n�o foi aplicada � inst�ncia de VM file-server. O MIG aplicar� a atualiza��o da configura��o quando voc� recriar ou aplicar a atualiza��o � inst�ncia posteriormente.

Para aplicar a atualiza��o da configura��o por inst�ncia � inst�ncia de VM file-server, chame o m�todo regionInstanceGroupManagers.applyUpdatesToInstances para a inst�ncia:

POST https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-east1/instanceGroupManagers/gs-group/applyUpdatesToInstances

{
  "instances": ["/zones/us-east1-b/instances/file-server"]
}

O m�todo atribui o endere�o IP externo est�tico configurado da reserva file-server-ip � inst�ncia gerenciada. O m�todo atualiza a inst�ncia file-server para atribuir um endere�o IP externo.

Como autoDelete est� definido como NEVER na configura��o do IP com estado, o IP permanecer� reservado se voc� excluir a inst�ncia posteriormente.

Como desassociar endere�os IP est�ticos de uma VM em um MIG

Talvez seja necess�rio desassociar um endere�o IP est�tico de uma VM atual, tornando a interface de rede tempor�ria para a VM. Isso � �til nos cen�rios de:

  • Voc� reformula seu aplicativo para n�o depender mais de endere�os IP est�ticos.
  • Voc� configurou o IP como sendo "com estado" por engano e quer revert�-lo.

� poss�vel desassociar um endere�o IP est�tico de uma VM atual em MIG e tornar o endere�o IP tempor�rio para uma VM individual removendo a configura��o com estado do IP da configura��o por inst�ncia associada ou excluindo toda a configura��o por inst�ncia, se ela n�o incluir outro estado. Aplicar a altera��o tem os seguintes efeitos:

  • O endere�o IP permanece ativo na inst�ncia, mas n�o est� mais com estado.
  • Quando voc� recria ou atualiza a inst�ncia ou quando a inst�ncia � recuperada automaticamente, o MIG cancela a atribui��o da reserva de endere�o IP est�tico associada e atribui automaticamente um endere�o tempor�rio. de dados.
  • Depois disso, o endere�o IP est�tico permanece reservado.

A remo��o de uma configura��o de IP com estado de uma configura��o por inst�ncia n�o interrompe a execu��o de inst�ncias de VM, a menos que voc� escolha fazer isso explicitamente.

Para saber mais, assista a estes v�deos:

gcloud

Para remover uma configura��o de IP com estado da configura��o por inst�ncia associada, use o gcloud compute instance-groups managed instance-configs update comando com o--remove-stateful-internal-ips ou--remove-stateful-external-ips sinaliza��es:

gcloud compute instance-groups managed instance-configs update INSTANCE_GROUP_NAME \
    --instance INSTANCE_NAME \
    --remove-stateful-internal-ips NI_NAME[,NI_NAME,...] \
    --remove-stateful-external-ips NI_NAME[,NI_NAME,...]
    [--no-update-instance | --update-instance] \
    [--instance-update-minimal-action MINIMAL_ACTION]

Substitua:

  • INSTANCE_GROUP_NAME: o nome do MIG;
  • INSTANCE_NAME: obrigat�rio. O nome da inst�ncia da qual remover a configura��o do IP com estado.
  • NI_NAME: obrigat�rio. Nome da interface de rede. A interface de rede principal � denominada nic0. Se voc� tiver v�rias interfaces de rede, poder� especificar v�rias NI_NAMES.
  • --update-instance: (Opcional padr�o) Aplique as altera��es imediatamente � inst�ncia. Se voc� usar a sinaliza��o --no-update-instance, as altera��es permanecer�o n�o aplicadas e ser�o aplicadas quando voc� recriar ou aplicar a atualiza��o � inst�ncia posteriormente.
  • MINIMAL_ACTION: (opcional.) Executa, pelo menos, a a��o especificada ao aplicar a atualiza��o da configura��o por inst�ncia � inst�ncia. Essa sinaliza��o s� pode ser usada com a sinaliza��o --update-instance. O valor precisa ser um dos indicados abaixo:

    • none: nenhuma a��o.
    • refresh: aplica as atualiza��es poss�veis sem interromper a inst�ncia.
    • restart: interrompa a inst�ncia e inicie-a novamente.
    • replace: recrie a inst�ncia.

    Se omitida, a a��o menos interruptiva exigida pela atualiza��o ser� usada.

Exemplo

Seu aplicativo foi exposto aos usu�rios por meio de endere�os IP externos est�ticos publicados espec�ficos das inst�ncias de VM em um MIG chamado example-group. Voc� pesquisou novamente seu servi�o implantando um balanceador de carga em frente ao MIG e roteando o tr�fego para as VMs gerenciadas por meio dele. N�o � mais necess�rio manter os endere�os IP externos est�ticos e fazer com que eles sejam tempor�rios.

Para tornar os endere�os IP externos com estado das VMs em um MIG ef�mero, execute o seguinte comando para cada inst�ncia, por exemplo, para node-1:

gcloud compute instance-groups managed instance-configs update example-group \
    --instance node-1 \
    --remove-stateful-external-ips nic0 \
    --update-instance

O comando faz o seguinte:

  1. Remove a configura��o com estado do endere�o IP externo na interface de rede nic0 da configura��o por inst�ncia para node-1.
  2. Aplica a atualiza��o da configura��o por inst�ncia a uma inst�ncia de VM node-1 imediatamente, porque a sinaliza��o --update-instance foi inclu�da. A inst�ncia de VM n�o � interrompida e continua veiculando do mesmo IP, que n�o � mais com estado. O MIG remove a refer�ncia da reserva de IP est�tico do preservedStateFromConfig da inst�ncia gerenciada e trata o endere�o IP externo como tempor�rio. O MIG atribuir� automaticamente um IP externo aos eventos subsequentes de recria��o, atualiza��o ou recupera��o autom�tica de inst�ncias.
  3. Depois de ter sido n�o atribu�do, o IP est�tico original permanece reservado. � poss�vel liberar o IP se n�o precisar mais dele.

REST

Para remover uma configura��o de IP com estado da configura��o por inst�ncia associada, use o instanceGroupManagers.patchPerInstanceConfigs m�todo ou regionInstanceGroupManagers.patchPerInstanceConfigs m�todo .

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME/patchPerInstanceConfigs

{
  "perInstanceConfigs": [
    {
      "name": "INSTANCE_NAME",
      "preservedState" : {
        "internalIPs": {
          "NI_NAME" : null
        },
        "externalIPs": {
          "NI_NAME" : null
        }
      },
      "fingerprint: "FINGERPRINT"
    },
    ...
  ]
}

Substitua:

  • PROJECT_ID: o ID do projeto para a solicita��o.
  • NAME: o nome do MIG;
  • REGION: para MIGs regionais, a regi�o em que o MIG est� localizado. Para MIGs zonais, substitua regions/REGION por zones/ZONE e especifique a zona em que o MIG est� localizado.
  • INSTANCE_NAME: obrigat�rio. O nome da inst�ncia da qual remover a configura��o do IP com estado.
  • NI_NAME: obrigat�rio. Nome da interface de rede. A interface de rede principal � denominada nic0. Se voc� tiver v�rias interfaces de rede, poder� especificar v�rias NI_NAMES.
  • FINGERPRINT: opcional. A impress�o digital da configura��o especificada, se j� houver. Usada para bloqueio otimista. A opera��o falhar� se a impress�o digital for diferente do fornecido, porque indica que a configura��o por inst�ncia foi alterada desde a �ltima leitura. Para ver a impress�o digital mais recente, consulte a sa�da do m�todo listPerInstanceConfigs para uma regi�o ou zonal MIG. Se fingerprint for omitido, a opera��o continuar� sem a compara��o da impress�o digital.

O m�todo patchPerInstanceConfigs atualiza as configura��es por inst�ncia especificadas, mas n�o aplica as atualiza��es �s inst�ncias gerenciadas associadas. As altera��es s�o aplicadas a uma inst�ncia quando o MIG recebe a instru��o para recri�-la ou atualiz�-la. � poss�vel aplicar a atualiza��o manualmente para aplicar as altera��es a uma inst�ncia.

Exemplo

O aplicativo foi exposto aos usu�rios por meio de endere�os IP externos est�ticos espec�ficos publicados das inst�ncias de VM em um MIG chamado example-group. Voc� pesquisou novamente seu servi�o implantando um balanceador de carga na frente do MIG e roteando o tr�fego para as VMs gerenciadas por meio dele. N�o � mais necess�rio manter os endere�os IP externos est�ticos e fazer com que eles sejam tempor�rios.

Para tornar os endere�os IP externos com estado das VMs em um MIG ef�mero, execute o seguinte m�todo para cada inst�ncia, por exemplo, para node-1 e forne�a o valor null para o estado da interface de rede configura��o:

POST https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-east1/instanceGroupManagers/example-group/patchPerInstanceConfigs

{
  "perInstanceConfigs": [
    {
      "name": "node-1",
      "preservedState" : {
        "externalIPs": {
          "nic0" : null
        }
      }
    }
  ]
}

O m�todo remove a configura��o do endere�o IP com estado na interface de rede nic0 da configura��o por inst�ncia para node-1. A atualiza��o da configura��o ainda n�o foi aplicada � inst�ncia de VM node-1. O MIG aplica a atualiza��o de configura��o na pr�xima recria��o ou atualiza��o da inst�ncia.

Para aplicar a atualiza��o da configura��o por inst�ncia � inst�ncia de VM node-1, chame o m�todo regionInstanceGroupManagers.applyUpdatesToInstances para a inst�ncia:

POST https://compute.googleapis.com/compute/v1/projects/example-project/regions/us-east1/instanceGroupManagers/example-group/applyUpdatesToInstances

{
  "instances": ["/zones/us-east1-c/instances/node-1"]
}

O MIG remove a refer�ncia � reserva de IP est�tico do campo preservedStateFromConfig da inst�ncia node-1 e trata o endere�o IP como tempor�rio. O MIG atribuir� automaticamente um IP externo a eventos de recria��o, atualiza��o ou recupera��o autom�tica de inst�ncias subsequentes.

Depois de ter sido n�o atribu�do, o IP est�tico original permanece reservado. � poss�vel liberar o IP se n�o precisar mais dele.

Como remover a configura��o com estados

Para remover a configura��o de uma pol�tica com estado para todas as VMs em um MIG, consulte os seguintes documentos:

Para remover a configura��o de uma inst�ncia por inst�ncia de uma VM espec�fica em um MIG, consulte os seguintes documentos:

Como limpar endere�os IP est�ticos n�o utilizados

Ao configurar o endere�o IP com estado para inst�ncias gerenciadas em um grupo, � poss�vel optar por liberar as reservas de endere�o IP est�tico associadas manualmente ou automaticamente quando uma inst�ncia for exclu�da permanentemente:

Se voc� tiver instru�do o MIG a nunca excluir as reservas de IP associadas, os endere�os IP est�ticos permanecer�o reservados ap�s as inst�ncias correspondentes ou o MIG deixar de existir.

Feedback

Queremos saber sobre seus casos de uso, desafios e feedback que envolvem os MIGs com estado. Compartilhe seu feedback com nossa equipe em mig-discuss@google.com.

A seguir