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
- Certifique-se de que compreende o processo de migração, incluindo considerações para a migração.
- Certifique-se de que compreende os preços dos consumidores e dos produtores do Private Service Connect.
- Certifique-se de que conhece o processo de publicação de um serviço através do Private Service Connect.
- Certifique-se de que tem as autorizações necessárias.
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
Na Google Cloud consola, aceda à página Redes VPC.
Clique no nome de uma rede de VPC para apresentar a página de detalhes da rede de VPC.
Clique no separador Sub-redes.
Clique em Adicionar sub-rede. No painel apresentado:
- Indique um nome.
- Selecione uma região.
- Na secção Finalidade, selecione Migração entre pares.
- Para o Tipo de pilha de IP, selecione IPv4 (pilha única).
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.
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 consumidorCONSUMER_PROJECT
: o ID do projeto do consumidorCONSUMER_NETWORK
: o nome da rede de consumidoresCIDR_RANGE
: o intervalo CIDR a atribuir à sub-rede nova; este intervalo tem de corresponder ao intervalo CIDR do intervalo internoREGION
: 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
Na Google Cloud consola, aceda à página Private Service Connect.
Clique no separador Pontos finais ligados.
Clique em Associar ponto final.
Em Segmentar, selecione Serviço publicado.
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
Em Nome do ponto final, introduza um nome a usar para o ponto final.
Para Rede, selecione a rede de VPC do consumidor para o ponto final.
Para Sub-rede, selecione a sub-rede de migração de pares de consumidores.
Para reservar um endereço IP para o ponto final, faça o seguinte:
- Clique no menu pendente Endereço IP e selecione Criar endereço IP.
- Introduza um nome e uma descrição opcional para o endereço IP.
- Clique em Endereço IP estático e selecione Permitir-me escolher.
- 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.
- Clique em Reservar.
Clique em Adicionar ponto final.
gcloud
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 IPCONSUMER_PROJECT
: o ID do projeto do consumidorREGION
: a região para criar o endereço IP emENDPOINT_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çoCONSUMER_SUBNET
: o nome da sub-rede de migração de pares do consumidor
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 finalREGION
: a região na qual criar o ponto finalCONSUMER_NETWORK
: o nome da rede de consumidoresENDPOINT_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 IPSERVICE_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 internoPRODUCER_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
Na Google Cloud consola, aceda à página Redes VPC.
Clique no nome de uma rede de VPC para apresentar a página de detalhes da rede de VPC.
Clique no separador Sub-redes.
Clique no nome da sub-rede que quer atualizar.
Clique em Edit.
Na secção Finalidade, selecione Privado.
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 consumidorREGION
: a região da sub-rede do consumidorCONSUMER_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.
- Se ainda existir, elimine o intervalo interno no projeto do produtor.
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
Elimine o ponto final do Private Service Connect do consumidor.
Elimine o recurso de endereço IP do consumidor.
Recrie a sub-rede do produtor com o mesmo nome e intervalo CIDR. Defina a finalidade da sub-rede como
PRIVATE
.Recrie os recursos necessários para fornecer o serviço na sub-rede do produtor.
O consumidor valida que consegue aceder ao serviço através da ligação de peering.