Migre uma sub-rede de serviço do peering para o Private Service Connect

Este documento descreve como os produtores de serviços podem migrar os respetivos serviços baseados em peering para o Private Service Connect e preservar o endereço IP usado para aceder ao serviço. Este processo de migração requer que todos os recursos ligados a uma determinada sub-rede sejam migrados em simultâneo.

O processo de migração é iniciado pelo produtor do serviço, mas envolve tarefas que são concluídas pelo produtor e pelo consumidor. Os serviços geridos pela Google podem usar um agente de serviço para realizar tarefas em nome do consumidor. A migração envolve um tempo de inatividade e uma alteração nos preços para o produtor e o consumidor.

Cada produtor de serviços determina se e quando vai migrar para o Private Service Connect. Para saber se um produtor de serviços está a migrar do peering de redes VPC para o Private Service Connect, consulte a documentação do serviço ou contacte o produtor de serviços.

Antes de começar

Implemente o serviço através do Private Service Connect

Crie uma nova rede VPC, implemente recursos de serviço na rede e publique o serviço através do Private Service Connect.

Quando criar o balanceador de carga para o serviço, use um endereço IP diferente do que foi usado anteriormente pelo balanceador de carga. O endereço IP original é necessário mais tarde para criar o ponto final.

Quando publica um serviço, cria uma associação de serviço. O URI do anexo do serviço também é necessário mais tarde para criar o ponto final.

Encerre o serviço baseado em peering

Para encerrar o serviço baseado em peering, tem de criar um intervalo interno para reservar o intervalo de endereços IP do serviço antes de eliminar a sub-rede do produtor.

Crie um intervalo interno

Antes de eliminar a sub-rede do produtor, crie um intervalo interno para impedir que o intervalo de endereços IP da sub-rede seja reutilizado por outras sub-redes na rede do produtor ou do consumidor.

Para mais informações acerca deste intervalo interno, consulte o artigo Intervalos internos para a migração.

gcloud

Use o comando internal-ranges create.

gcloud network-connectivity internal-ranges create RANGE_NAME \
    --project=PRODUCER_PROJECT_ID \
    --ip-cidr-range=CIDR_RANGE \
    --network=PRODUCER_NETWORK_NAME \
    --usage=FOR_MIGRATION \
    --migration-source=PRODUCER_SUBNET_URI \
    --migration-target=CONSUMER_SUBNET_URI

Substitua o seguinte:

  • RANGE_NAME: o nome do novo intervalo interno.
  • PRODUCER_PROJECT_ID: o ID do projeto do produtor.
  • CIDR_RANGE: o intervalo CIDR a atribuir ao novo intervalo interno.
  • PRODUCER_NETWORK_NAME: o nome da rede na qual criar o intervalo interno.
  • PRODUCER_SUBNET_URI: o URI da sub-rede do produtor que contém o balanceador de carga para o serviço.
  • CONSUMER_SUBNET_URI: o URI da sub-rede de consumidor pretendida. Esta sub-rede não existe quando executa este comando.

Elimine a sub-rede do produtor do intercâmbio

Tem de eliminar todos os recursos na sub-rede do produtor antes de poder eliminar a sub-rede, por exemplo, instâncias de máquinas virtuais (VM), regras de encaminhamento, grupos de instâncias, verificações de estado e endereços IP reservados. Depois de eliminar os recursos, pode eliminar a sub-rede.

Crie recursos para o consumidor

Colabore com o consumidor de serviços para criar os seguintes recursos na respetiva rede VPC. Os recursos podem ser criados manualmente ou, para os serviços geridos pela Google, podem ser automatizados através de um agente de serviço.

Crie uma sub-rede de migração por pares

Crie uma sub-rede de migração de pares na rede VPC do consumidor para fornecer o endereço IP do ponto final do Private Service Connect. A sub-rede tem o objetivo PEER_MIGRATION, o que impede que a sub-rede seja usada para recursos que não sejam pontos finais do Private Service Connect.

Para mais informações, consulte o artigo Sub-redes de migração de pares.

Consola

  1. Na Google Cloud consola, aceda à página Redes VPC.

    Aceda a redes de VPC

  2. Clique no nome de uma rede de VPC para apresentar a página de detalhes da rede de VPC.

  3. Clique no separador Sub-redes.

  4. Clique em Adicionar sub-rede. No painel apresentado:

    1. Indique um nome.
    2. Selecione uma região.
    3. Na secção Finalidade, selecione Migração entre pares.
    4. Para o Tipo de pilha de IP, selecione IPv4 (pilha única).
    5. Introduza o intervalo de endereços IPv4 a atribuir à nova sub-rede. Este intervalo tem de corresponder ao intervalo CIDR do intervalo interno.

      Se selecionar um intervalo que não seja um endereço RFC 1918, confirme que o intervalo não entra em conflito com uma configuração existente. Para mais informações, consulte o artigo Intervalos de sub-redes IPv4.

  5. Clique em Adicionar.

gcloud

Use o comando networks subnets create.

gcloud compute networks subnets create CONSUMER_SUBNET \
    --purpose=PEER_MIGRATION \
    --project=CONSUMER_PROJECT \
    --network=CONSUMER_NETWORK \
    --range=CIDR_RANGE \
    --region=REGION

Substitua o seguinte:

  • CONSUMER_SUBNET: o nome da sub-rede do consumidor
  • CONSUMER_PROJECT: o ID do projeto do consumidor
  • CONSUMER_NETWORK: o nome da rede de consumidores
  • CIDR_RANGE: o intervalo CIDR a atribuir à sub-rede nova; este intervalo tem de corresponder ao intervalo CIDR do intervalo interno
  • REGION: a região na qual criar a sub-rede

Crie um ponto final do Private Service Connect

Crie um ponto final do Private Service Connect na sub-rede de migração do consumidor. O consumidor precisa do URI da associação de serviço para criar o ponto final.

Consola

  1. Na Google Cloud consola, aceda à página Private Service Connect.

    Aceda ao Private Service Connect

  2. Clique no separador Pontos finais ligados.

  3. Clique em Associar ponto final.

  4. Em Segmentar, selecione Serviço publicado.

  5. Para Serviço de destino, introduza o URI do anexo de serviço ao qual quer estabelecer ligação.

    O URI do anexo de serviço está neste formato: projects/SERVICE_PROJECT/regions/REGION/serviceAttachments/SERVICE_NAME

  6. Em Nome do ponto final, introduza um nome a usar para o ponto final.

  7. Para Rede, selecione a rede de VPC do consumidor para o ponto final.

  8. Para Sub-rede, selecione a sub-rede de migração de pares de consumidores.

  9. Para reservar um endereço IP para o ponto final, faça o seguinte:

    1. Clique no menu pendente Endereço IP e selecione Criar endereço IP.
    2. Introduza um nome e uma descrição opcional para o endereço IP.
    3. Clique em Endereço IP estático e selecione Permitir-me escolher.
    4. Introduza o endereço IP personalizado a reservar. Este endereço IP tem de ser o mesmo endereço IP que foi usado no equilibrador de carga do serviço.
    5. Clique em Reservar.
  10. Clique em Adicionar ponto final.

gcloud

  1. Reserve um endereço IP interno para o ponto final.

    Use o comando addresses create.

    gcloud compute addresses create ENDPOINT_ADDRESS_NAME \
        --project=CONSUMER_PROJECT \
        --region=REGION \
        --address=ENDPOINT_ADDRESS \
        --subnet=CONSUMER_SUBNET
    

    Substitua o seguinte:

    • ENDPOINT_ADDRESS_NAME: um nome para o recurso de endereço IP
    • CONSUMER_PROJECT: o ID do projeto do consumidor
    • REGION: a região para criar o endereço IP em
    • ENDPOINT_ADDRESS: o endereço IP a atribuir ao recurso de endereço IP. Este endereço tem de ser o mesmo endereço IP que foi usado no equilibrador de carga do serviço
    • CONSUMER_SUBNET: o nome da sub-rede de migração de pares do consumidor
  2. Crie o ponto final.

    Use o comando forwarding-rules create.

    gcloud compute forwarding-rules create ENDPOINT \
        --region=REGION \
        --network=CONSUMER_NETWORK \
        --address=ENDPOINT_ADDRESS \
        --target-service-attachment=SERVICE_ATTACHMENT_URI
    

    Substitua o seguinte:

    • ENDPOINT: um nome para o ponto final
    • REGION: a região na qual criar o ponto final
    • CONSUMER_NETWORK: o nome da rede de consumidores
    • ENDPOINT_ADDRESS: o endereço IP reservado a atribuir ao ponto final; pode especificar o endereço IP diretamente ou usar o nome do recurso do endereço IP
    • SERVICE_ATTACHMENT_URI: o URI do anexo de serviço

Elimine o intervalo interno do produtor

Depois de criar a sub-rede de migração do consumidor, o intervalo interno deixa de ser necessário e pode ser eliminado.

gcloud

Use o comando internal-ranges delete.

gcloud network-connectivity internal-ranges delete RANGE_NAME \
    --project=PRODUCER_PROJECT_ID

Substitua o seguinte:

  • RANGE_NAME: o nome do intervalo interno
  • PRODUCER_PROJECT_ID: o ID do projeto do produtor

Valide se o ponto final funciona

Peça ao consumidor para confirmar que consegue estabelecer ligação ao serviço através do ponto final.

Se o ponto final não estiver a funcionar e a resolução de problemas não resolver o problema, pode reverter a migração.

Finalize a migração

Se o ponto final estiver a funcionar como esperado, pode finalizar a migração atualizando a sub-rede de migração de pares do consumidor para uma sub-rede normal.

Atualize a sub-rede de migração de pares do consumidor

A atualização da sub-rede de migração de pares do consumidor para uma sub-rede normal permite que o consumidor use a sub-rede para qualquer tipo de recurso.

Consola

  1. Na Google Cloud consola, aceda à página Redes VPC.

    Aceda a redes de VPC

  2. Clique no nome de uma rede de VPC para apresentar a página de detalhes da rede de VPC.

  3. Clique no separador Sub-redes.

  4. Clique no nome da sub-rede que quer atualizar.

  5. Clique em Edit.

  6. Na secção Finalidade, selecione Privado.

  7. Clique em Guardar.

gcloud

Use o comando networks subnets create.

gcloud compute networks subnets update CONSUMER_SUBNET \
    --purpose=PRIVATE \
    --region=REGION \
    --project=CONSUMER_PROJECT

Substitua o seguinte:

  • CONSUMER_SUBNET: o nome da sub-rede do consumidor
  • REGION: a região da sub-rede do consumidor
  • CONSUMER_PROJECT: o ID do projeto do consumidor

Elimine as ligações de intercâmbio

Se a ligação de peering já não for necessária, elimine as configurações de peering para o consumidor e o produtor.

Reverta a migração

Só pode reverter a migração se a sub-rede do consumidor ainda não tiver sido atualizada para uma sub-rede normal. Se reverter, o serviço é disponibilizado através do intercâmbio da rede da VPC.

  1. Se ainda existir, elimine o intervalo interno no projeto do produtor.
  2. Crie um intervalo interno no projeto do consumidor. Quando reverte, a origem da migração é a sub-rede do consumidor e o destino da migração é a sub-rede do produtor.

    gcloud network-connectivity internal-ranges create RANGE_NAME \
        --project=CONSUMER_PROJECT \
        --ip-cidr-range=CIDR_RANGE \
        --network=CONSUMER_NETWORK \
        --usage=FOR_MIGRATION \
        --migration-source=CONSUMER_SUBNET_URI \
        --migration-target=PRODUCER_SUBNET_URI
    
  3. Elimine o ponto final do Private Service Connect do consumidor.

  4. Elimine o recurso de endereço IP do consumidor.

  5. Recrie a sub-rede do produtor com o mesmo nome e intervalo CIDR. Defina a finalidade da sub-rede como PRIVATE.

  6. Recrie os recursos necessários para fornecer o serviço na sub-rede do produtor.

  7. O consumidor valida que consegue aceder ao serviço através da ligação de peering.