Acerca dos serviços publicados
Este documento oferece uma vista geral da utilização do Private Service Connect para disponibilizar um serviço aos consumidores de serviços.
Enquanto produtor de serviços, pode usar o Private Service Connect para publicar serviços através de endereços IP internos na sua rede VPC. Os seus serviços publicados são acessíveis aos consumidores de serviços através de endereços IP internos nas respetivas redes VPC.
Para disponibilizar um serviço aos consumidores, cria uma ou mais sub-redes dedicadas. Em seguida, cria uma associação de serviços que se refere a essas sub-redes. A associação de serviço pode ter preferências de ligação diferentes.
Tipos de consumidores de serviços
Existem dois tipos de consumidores que podem estabelecer ligação a um serviço do Private Service Connect:
Os pontos finais baseiam-se numa regra de encaminhamento.
Um ponto final permite que os consumidores de serviços enviem tráfego da rede VPC do consumidor para os serviços na rede VPC do produtor de serviços (clique para aumentar).
Os back-ends baseiam-se num balanceador de carga.
Um back-end que usa um Application Load Balancer externo global permite que os consumidores de serviços com acesso à Internet enviem tráfego para serviços na rede VPC do produtor de serviços (clique para aumentar).
Sub-redes NAT
As associações de serviços do Private Service Connect estão configuradas com uma ou mais sub-redes NAT (também denominadas sub-redes do Private Service Connect). Os pacotes da rede VPC do consumidor são traduzidos através da NAT de origem (SNAT) para que os respetivos endereços IP de origem originais sejam convertidos em endereços IP de origem da sub-rede NAT na rede VPC do produtor.
As associações de serviços podem ter várias sub-redes NAT. Pode adicionar sub-redes NAT ao anexo de serviço em qualquer altura sem interromper o tráfego.
Embora uma associação de serviço possa ter várias sub-redes NAT configuradas, não é possível usar uma sub-rede NAT em mais do que uma associação de serviço.
Não é possível usar sub-redes NAT do Private Service Connect para recursos, como instâncias de máquinas virtuais (VM) ou regras de encaminhamento. As sub-redes são usadas apenas para fornecer endereços IP para SNAT de ligações de consumidores recebidas.
Dimensionamento da sub-rede NAT
O tamanho da sub-rede determina quantos consumidores se podem ligar ao seu serviço. Se todos os endereços IP na sub-rede NAT forem consumidos, as ligações adicionais do Private Service Connect falham. Considere o seguinte:
É consumido um endereço IP da sub-rede NAT para cada ponto final ou back-end que esteja ligado à associação de serviço.
O número de ligações TCP ou UDP, clientes ou redes VPC de consumidor não afeta o consumo de endereços IP da sub-rede NAT.
Se a propagação de associações for usada pelos consumidores, é consumido um endereço IP adicional para cada VPC spoke para o qual as associações são propagadas, para cada ponto final.
Pode controlar o número de associações propagadas criadas configurando o limite de associações propagadas.
Quando estimar quantos endereços IP precisa para pontos finais e back-ends, tenha em conta os serviços ou os consumidores multitenant que usam o acesso multiponto para o Private Service Connect.
/29/24
Monitorização de sub-redes NAT
Para ajudar a garantir que as ligações do Private Service Connect não falham devido a endereços IP indisponíveis numa sub-rede NAT, recomendamos o seguinte:
- Monitorize a
private_service_connect/producer/used_nat_ip_addressesmétrica de associação de serviços. Certifique-se de que o número de endereços IP NAT usados não excede a capacidade das sub-redes NAT de uma associação de serviço. - Monitorize o estado da ligação das ligações de anexos de serviços. Se uma ligação tiver o estado Requer atenção, pode não haver mais endereços IP disponíveis nas sub-redes NAT do anexo.
- Para serviços multi-inquilinos, pode usar os limites de ligação para ajudar a garantir que um único consumidor não esgota a capacidade das sub-redes NAT de um anexo de serviço.
Se necessário, pode adicionar sub-redes NAT ao anexo de serviço em qualquer altura sem interromper o tráfego.
Especificações de NAT
Considere as seguintes caraterísticas da NAT do Private Service Connect quando criar o serviço que está a publicar:
O tempo limite de inatividade do mapeamento UDP é de 30 segundos e não pode ser configurado.
O tempo limite de inatividade da ligação estabelecida de TCP é de 20 minutos e não pode ser configurado.
Para evitar problemas de tempo limite das ligações de clientes, faça uma das seguintes ações:
Certifique-se de que todas as ligações duram menos de 20 minutos.
Certifique-se de que algum tráfego é enviado com mais frequência do que uma vez a cada 20 minutos. Pode usar um sinal de pulsação ou um sinal de manutenção na sua aplicação, ou sinais de manutenção TCP. Por exemplo, pode configurar um keepalive no proxy de destino de um Application Load Balancer interno regional ou de um Network Load Balancer de proxy interno regional.
O limite de tempo de inatividade da ligação transitória TCP é de 30 segundos e não pode ser configurado.
Existe um atraso de dois minutos antes de qualquer tuplo de 5 elementos (endereço IP de origem da sub-rede NAT e porta de origem, além do protocolo de destino, do endereço IP e da porta de destino) poder ser reutilizado.
O SNAT para o Private Service Connect não suporta fragmentos de IP.
Número máximo de ligações
Uma única VM de produtor pode aceitar um máximo de 64 512 ligações TCP simultâneas e 64 512 ligações UDP de um único consumidor do Private Service Connect (ponto final ou back-end). Não existe um limite para o número total de ligações TCP e UDP que um ponto final do Private Service Connect pode receber de forma agregada em todos os back-ends do produtor. As VMs cliente podem usar todas as 65 536 portas de origem quando iniciam ligações TCP ou UDP a um ponto final do Private Service Connect. Toda a tradução de endereços de rede é feita localmente no anfitrião produtor, o que não requer um conjunto de portas NAT atribuído centralmente.
Anexos de serviços
Os produtores de serviços expõem o respetivo serviço através de uma associação do serviço.
- Para expor um serviço, um produtor de serviços cria uma associação de serviço que faz referência a um serviço de destino. O serviço de destino pode ser um dos seguintes:
- A regra de encaminhamento de um balanceador de carga
- Uma instância do Secure Web Proxy
O URI do anexo de serviço tem este formato:
projects/SERVICE_PROJECT/regions/REGION/serviceAttachments/SERVICE_NAME
Uma associação de serviço só pode ter um serviço de destino. No entanto, vários anexos de serviços podem partilhar o mesmo serviço de destino.
As associações de serviços permitem-lhe controlar o acesso ao seu serviço publicado, ver as ligações e configurar limites de ligações. Para mais informações, consulte o artigo Acerca do controlo do acesso a serviços publicados.
Estados da ligação
As associações de serviços têm estados de ligação que descrevem o estado das respetivas ligações. Para mais informações, consulte o artigo Estados da ligação.
Configuração de DNS
Para informações sobre a configuração de DNS para serviços e pontos finais publicados que se ligam a serviços publicados, consulte Configuração de DNS para serviços.
Configuração de várias regiões para a comutação por falha
Pode disponibilizar um serviço em várias regiões criando as seguintes configurações.
Configuração do produtor:
- Implemente o serviço em cada região. Cada instância regional do serviço tem de ser configurada num balanceador de carga regional que suporta o acesso por um back-end.
- Crie um anexo de serviço para publicar cada instância regional do serviço.
Configuração do consumidor:
- Crie um back-end do Private Service Connect para aceder aos serviços publicados. O back-end
tem de se basear num
balanceador de carga que suporte a comutação por falha entre regiões
e incluir a seguinte configuração:
- Um NEG do Private Service Connect em cada região que aponta para a associação do serviço dessa região
- Um serviço de back-end global que contém os back-ends do NEG
Esta configuração suporta a comutação por falha automática entre regiões. Com a comutação por falha automática, se uma instância de serviço numa região ficar em mau estado, o balanceador de carga do consumidor deixa de encaminhar tráfego para esse serviço e, em vez disso, encaminha tráfego para uma instância de serviço em bom estado numa região alternativa.
Para mais informações, consulte o seguinte:
- Acerca da verificação de estado do Private Service Connect
- Ativação pós-falha automática entre regiões para consumidores
A utilização de um Application Load Balancer externo global permite que os consumidores de serviços com acesso à Internet enviem tráfego para serviços na rede VPC do produtor de serviços. Uma vez que o serviço está implementado em várias regiões, o equilibrador de carga do consumidor pode encaminhar o tráfego para uma instância de serviço em bom estado numa região alternativa (clique para aumentar).
Tradução da versão do IP
Para pontos finais do Private Service Connect que se ligam a serviços publicados (associações de serviços), a versão IP do endereço IP da regra de encaminhamento do consumidor determina a versão IP do ponto final e o tráfego que sai do ponto final. O endereço IP pode ser proveniente de uma sub-rede apenas IPv4, apenas IPv6 ou de pilha dupla. A versão IP do ponto final pode ser IPv4 ou IPv6, mas não ambas.
Para serviços publicados, a versão IP do anexo de serviço é determinada pelo endereço IP da regra de encaminhamento associada ou da instância do proxy Web seguro. Este endereço IP tem de ser compatível com o tipo de pilha da sub-rede NAT do anexo de serviço. A sub-rede NAT pode ser uma sub-rede apenas IPv4, apenas IPv6 ou de pilha dupla. Se a sub-rede NAT for uma sub-rede de pilha dupla, é usado o intervalo de endereços IPv4 ou IPv6, mas não ambos.
O Private Service Connect não suporta a ligação de um ponto final IPv4 a uma associação de serviço IPv6. Neste caso, a criação do ponto final falha com a seguinte mensagem de erro:
Private Service Connect forwarding rule with an IPv4 address
cannot target an IPv6 service attachment.
As seguintes combinações são possíveis para as configurações suportadas:
- Ponto final IPv4 para anexo de serviço IPv4
- Ponto final IPv6 para anexo de serviço IPv6
-
Ponto final IPv6 para anexo de serviço IPv4
Nesta configuração, o Private Service Connect traduz automaticamente entre as duas versões de IP.
Para ligações entre back-ends do Private Service Connect e associações de serviços, as regras de encaminhamento do consumidor e do produtor têm de usar IPv4.
Funcionalidades e compatibilidade
Nas tabelas seguintes, uma marca de verificação indica que uma funcionalidade é suportada e um símbolo de não indica que uma funcionalidade não é suportada.
Consoante o balanceador de carga do produtor escolhido, o serviço do produtor pode suportar o acesso por pontos finais, back-ends ou ambos.
Suporte para pontos finais
Esta secção resume as opções de configuração disponíveis para consumidores e produtores quando usam pontos finais para aceder a serviços publicados.
Configuração do consumidor
Esta tabela resume as opções de configuração e as capacidades suportadas dos pontos finais que acedem aos serviços publicados com base no tipo de produtor de destino.
Configuração do produtor
Esta tabela resume as opções de configuração e as capacidades suportadas dos serviços publicados aos quais os pontos finais acedem.
| Tipo de produtor | Configuração do produtor (serviço publicado) | |||
|---|---|---|---|---|
| Back-ends de produtores suportados | Protocolo PROXY (apenas tráfego TCP) | Versão do IP | ||
| Balanceador de carga de aplicações interno entre regiões |
|
|
||
| Balanceador de carga de rede de passagem interno |
|
|
||
| Encaminhamento de protocolo interno (instância de destino) |
|
|
||
| Serviços de mapeamento de portas |
|
|
||
| Balanceador de carga de aplicações interno regional |
|
|
||
| Balanceador de carga de rede de proxy interno regional |
|
|
||
| Secure Web Proxy |
|
|
||
Os diferentes equilibradores de carga suportam diferentes configurações de portas. Alguns equilibradores de carga suportam uma única porta, outros suportam um intervalo de portas e outros suportam todas as portas. Para mais informações, consulte as especificações das portas.
Apoio técnico para backends
Um back-end do Private Service Connect para serviços publicados requer dois balanceadores de carga: um balanceador de carga do consumidor e um balanceador de carga do produtor. Esta secção resume as opções de configuração disponíveis para consumidores e produtores quando usam backends para aceder a serviços publicados.
Configuração do consumidor
Esta tabela descreve os balanceadores de carga do consumidor suportados pelos back-ends do Private Service Connect para serviços publicados, incluindo os protocolos de serviço de back-end que podem ser usados com cada balanceador de carga do consumidor. Os balanceadores de carga do consumidor podem aceder a serviços publicados alojados em balanceadores de carga do produtor suportados.
| Balanceador de carga do consumidor | Protocolos | Versão do IP | Failover entre regiões |
|---|---|---|---|
|
IPv4 | ||
|
IPv4 | ||
|
Balanceador de carga de aplicações externo global Nota: o equilibrador de carga de aplicações clássico não é suportado. |
|
IPv4 | |
|
Balanceador de carga de rede de proxy externo global Para associar este balanceador de carga a um NEG do Private Service Connect, use a CLI do Google Cloud ou envie um pedido de API. Nota: o equilibrador de carga de rede de proxy clássico não é suportado. |
|
IPv4 | |
|
IPv4 | ||
|
IPv4 | ||
|
IPv4 | ||
|
IPv4 |
Configuração do produtor
Esta tabela descreve a configuração dos balanceadores de carga do produtor que são suportados pelos back-ends do Private Service Connect para serviços publicados.
| Tipo de produtor | Configuração do produtor (serviço publicado) | |||||
|---|---|---|---|---|---|---|
| Back-ends de produtores suportados | Protocolos de regras de encaminhamento | Portas de regras de encaminhamento | Protocolo PROXY | Versão do IP | Apoio técnico de saúde do Private Service Connect | |
| Balanceador de carga de aplicações interno entre regiões |
|
|
Suporta uma, várias ou todas as portas | IPv4 | ||
| Balanceador de carga de rede de passagem interno |
|
|
Consulte a configuração da porta do produtor | IPv4 | ||
| Balanceador de carga de aplicações interno regional |
|
|
Suporta uma única porta | IPv4 | ||
| Balanceador de carga de rede de proxy interno regional |
|
|
Suporta uma única porta | IPv4 | ||
| Secure Web Proxy |
|
|
Não aplicável | IPv4 | ||
Configuração da porta do produtor
Quando um Network Load Balancer de encaminhamento interno é publicado através do Private Service Connect, os consumidores que usam back-ends do Private Service Connect para aceder ao serviço precisam de saber que porta usar para comunicar com o serviço. Considere o seguinte quando criar a regra de encaminhamento para o balanceador de carga de rede de passagem interna do produtor:
- Recomendamos que comunique aos consumidores qual é a porta usada na regra de encaminhamento do produtor, para que possam especificar a porta quando criarem um NEG.
Se os consumidores não especificarem uma porta do produtor quando criam os respetivos NEGs, a porta do produtor é determinada com base na configuração da regra de encaminhamento do produtor:
- Se a regra de encaminhamento do produtor usar uma única porta, o back-end do consumidor usa a mesma porta.
Se a regra de encaminhamento do produtor usar várias portas, aplica-se o seguinte:
- Se a porta
443estiver incluída, o back-end do consumidor usa a porta443. - Se a porta
443não estiver incluída, o back-end do consumidor usa a primeira porta na lista, depois de a lista ser ordenada alfabeticamente. Por exemplo, se especificar a porta80e a porta1111, o back-end do consumidor usa a porta1111. A alteração das portas usadas pelos backends do produtor pode resultar numa interrupção do serviço para os consumidores.
Por exemplo, suponhamos que cria um serviço publicado com uma regra de encaminhamento que usa as portas
443e8443, e VMs de back-end que respondem nas portas443e8443. Quando um back-end do consumidor se liga a este serviço, usa a porta443para comunicação.Se alterar as VMs de back-end para responderem apenas na porta
8443, o back-end do consumidor deixa de conseguir alcançar o serviço publicado.
- Se a porta
Se a regra de encaminhamento do produtor usar todas as portas, o consumidor de serviços tem de especificar uma porta do produtor quando criar o NEG. Se não especificar uma porta, o back-end do consumidor usa a porta
1, que não funciona.
VPC partilhada
Os administradores do projeto de serviço podem criar associações de serviços em projetos de serviço de VPC partilhada que se ligam a recursos em redes de VPC partilhada.
A configuração é igual à de uma associação de serviço normal, exceto no seguinte:
- A regra de encaminhamento do equilibrador de carga do produtor está associada a um endereço IP da rede da VPC partilhada. A sub-rede da regra de encaminhamento tem de ser partilhada com o projeto de serviço.
- A associação de serviço usa uma sub-rede do Private Service Connect da rede da VPC partilhada. Esta sub-rede tem de ser partilhada com o projeto de serviço.
Registo
Pode ativar os registos de fluxo de VPC nas sub-redes que contêm as VMs de back-end. Os registos mostram fluxos entre as VMs de back-end e os endereços IP na sub-rede do Private Service Connect.
VPC Service Controls
Os VPC Service Controls e o Private Service Connect são compatíveis entre si. Se a rede VPC onde o ponto final do Private Service Connect está implementado estiver num perímetro do VPC Service Controls, o ponto final faz parte do mesmo perímetro. Todos os serviços suportados pelo VPC Service Controls que são acedidos através do ponto final estão sujeitos às políticas desse perímetro do VPC Service Controls.
Quando cria um ponto final, são feitas chamadas de API do plano de controlo entre os projetos de consumidor e produtor para estabelecer uma ligação do Private Service Connect. O estabelecimento de uma ligação do Private Service Connect entre projetos de consumidor e produtor que não estejam no mesmo perímetro do VPC Service Controls não requer autorização explícita com políticas de saída. A comunicação com os serviços suportados pelos VPC Service Controls através do ponto final está protegida pelo perímetro dos VPC Service Controls.
Visualizar informações de associação de consumidores
Por predefinição, o Private Service Connect traduz o endereço IP de origem do consumidor num endereço numa das sub-redes do Private Service Connect na rede VPC do produtor de serviços. Se quiser ver o endereço IP de origem do consumidor, pode ativar o protocolo PROXY quando publicar um serviço. O Private Service Connect suporta a versão 2 do protocolo PROXY.
Nem todos os serviços suportam o protocolo PROXY. Para mais informações, consulte Funcionalidades e compatibilidade.
Se o protocolo PROXY estiver ativado, pode
obter o endereço IP de origem do consumidor e o ID da ligação PSC (pscConnectionId)
a partir do cabeçalho do protocolo PROXY.
O formato dos cabeçalhos do protocolo PROXY depende da versão IP do ponto final do consumidor. Se o balanceador de carga da associação de serviço tiver um endereço IPv6, os consumidores podem estabelecer ligação com endereços IPv4 e IPv6. Configure a sua aplicação para receber e ler cabeçalhos do protocolo PROXY para a versão IP do tráfego que vai receber.
Para o tráfego de consumidores que flui através de uma ligação propagada, o endereço IP de origem do consumidor e o ID da ligação do PSC referem-se ao ponto final do Private Service Connect que é propagado.
Quando ativa o protocolo PROXY para uma associação de serviço, a alteração aplica-se apenas a novas ligações. As ligações existentes não incluem o cabeçalho do protocolo PROXY.
Se ativar o protocolo PROXY, consulte a documentação do software do servidor Web de back-end para obter informações sobre a análise e o processamento de cabeçalhos do protocolo PROXY recebidos nos payloads TCP da ligação do cliente. Se o protocolo PROXY estiver ativado no anexo de serviço, mas o servidor Web de back-end não estiver configurado para processar cabeçalhos do protocolo PROXY, os pedidos Web podem ter um formato incorreto. Se os pedidos tiverem um formato incorreto, o servidor não consegue interpretá-los.
O ID da ligação do Private Service Connect (pscConnectionId) está
codificado no cabeçalho do protocolo PROXY no
formato tipo-comprimento-valor (TLV).
| Campo | Comprimento do campo | Valor do campo |
|---|---|---|
| Tipo | 1 byte | 0xE0 (PP2_TYPE_GCP)
|
| Comprimento | 2 bytes | 0x8 (8 bytes) |
| Valor | 8 bytes | Os 8 bytes pscConnectionId na ordem da rede |
Pode ver o valor de 8 bytes da pscConnectionId regra de encaminhamento de consumidores ou do anexo do serviço de produtores.
O valor pscConnectionId é globalmente único para todas as associações ativas num determinado momento. No entanto, ao longo do tempo, um pscConnectionId pode ser reutilizado nestes cenários:
Numa determinada rede VPC, se eliminar um ponto final (regra de encaminhamento) e criar um novo ponto final com o mesmo endereço IP, pode ser usado o mesmo valor
pscConnectionId.Se eliminar uma rede VPC que contenha pontos finais (regras de encaminhamento), após um período de espera de sete dias, o valor
pscConnectionIdque foi usado para esses pontos finais pode ser usado para um ponto final diferente noutra rede VPC.
Pode usar valores pscConnectionId para a depuração e para rastrear as origens dos pacotes.
Um ID de associação do serviço do Private Service Connect de 16 bytes separado (pscServiceAttachmentId) está disponível na associação do serviço do produtor.
O valor pscServiceAttachmentId é um ID globalmente exclusivo que identifica uma associação do serviço do Private Service Connect. Pode usar o valor pscServiceAttachmentId para visibilidade e depuração. Este valor não está incluído no cabeçalho do protocolo PROXY.
Preços
Os preços do Private Service Connect estão descritos na página de preços da VPC.
Quotas
O número total de pontos finais do Private Service Connect e de
ligações propagadas, de qualquer consumidor, que podem aceder à sua rede VPC do produtor é controlado pela
PSC ILB consumer forwarding rules per producer VPC network quota.
Os pontos finais contribuem para esta quota até serem eliminados, mesmo que o anexo de serviço associado seja eliminado ou configurado para rejeitar a ligação. As associações propagadas contribuem para esta quota até que o ponto final associado seja eliminado, mesmo que a propagação de associações esteja desativada no hub do Network Connectivity Center ou o spoke da associação propagada seja eliminado.
Acesso nas instalações
Os serviços do Private Service Connect são disponibilizados através de pontos finais. Estes pontos finais podem ser acedidos a partir de anfitriões no local ligados suportados. Para mais informações, consulte o artigo Aceda ao ponto final a partir de anfitriões no local.
Limitações
Os serviços publicados têm as seguintes limitações:
- Os equilibradores de carga configurados com
vários protocolos (protocolo definido como
L3_DEFAULT) não são suportados. - A duplicação de pacotes não pode duplicar pacotes para o tráfego de serviços publicados do Private Service Connect.
- Tem de usar a CLI Google Cloud ou a API para criar uma associação de serviço que aponte para uma regra de encaminhamento usada para o encaminhamento de protocolo interno.
Para ver problemas e soluções, consulte os Problemas conhecidos.