Use back-ends externos (também conhecidos como origens personalizadas) para o Cloud CDN (Rede de fornecimento de conteúdo) quando o conteúdo estiver hospedado no local ou em outra nuvem e você quiser exibi-lo usando a infraestrutura de alto desempenho de armazenamento em cache de borda distribuída do Google.
Terminologia
Às vezes, os termos a seguir são usados de maneira intercambiável porque têm significados iguais ou semelhantes:
- Back-end externo: um back-end que reside fora do Google Cloud e pode ser acessado pela Internet. O endpoint em um NEG da Internet.
- Origem personalizada: igual a um back-end externo. Na CDN, origem é o termo padrão do setor para uma instância de back-end que exibe conteúdo da web.
- Grupo de endpoints da rede na Internet (NEG): o recurso da API Google Cloud usado para especificar um back-end externo.
- Endpoint externo: igual a um back-end externo.
Para manter a consistência com a documentação de balanceamento de carga, este documento usa o termo back-end externo, exceto ao se referir ao recurso de API NEG da Internet.
Tipos de back-end compatíveis com o Cloud CDN
O Cloud CDN funciona com balanceamento de carga HTTP(S) para enviar conteúdo aos seus usuários. O balanceador de carga HTTP(S) externo fornece os endereços IP de front-end e as portas que recebem solicitações. O conteúdo do Cloud CDN pode ser proveniente de vários tipos de back-ends:
- Grupos de instâncias
- Grupos de endpoints de rede (NEGs) zonais
- NEGs sem servidor: um ou mais serviços do App Engine, do Cloud Run ou do Cloud Functions
- NEGs da Internet para back-ends externos
- Buckets no Cloud Storage
Os back-ends externos podem ser hospedados em uma infraestrutura local ou origens fornecidas por provedores de terceiros. As seções a seguir discutem os back-ends externos em mais detalhes.
Arquiteturas híbridas e de várias nuvens
Talvez seja necessário mover seus serviços do Google Cloud em fases. Às vezes, determinados conteúdos não podem ser movidos imediatamente para um ambiente de nuvem e precisam permanecer no local. Em outros casos, o conteúdo pode ser hospedado em outra nuvem. O suporte do Cloud CDN para back-ends externos permite que você use a infraestrutura de armazenamento em cache próximo dos usuários finais globalmente distribuída do Google para esse conteúdo.
No diagrama, o conteúdo images
reside no Google Cloud, enquanto video
reside em um data center de Tóquio, que pode estar no local ou em outra nuvem.
Com back-ends externos, as origens no data center de Tóquio podem ser a origem de back-end do conteúdo video
com Cloud CDN e balanceamento de carga HTTP(S) entregando o conteúdo aos usuários.
Usando mapas de URL, essa implantação pode
direcionar solicitações de envio de origem para o tráfego de vídeo para o back-end externo em Tóquio.
Esse mapeamento é determinado com base no URL de solicitação: /video
.
Para imagens (determinadas com base no URL de solicitação: /images
), o conteúdo é originado do Google Cloud e fornecido pela infraestrutura de borda do Cloud CDN.
Como especificar um back-end externo
Assim como a configuração do Cloud CDN com seus endpoints implantados no Google Cloud, é possível usar a API de grupos de endpoints de rede (NEGs) para adicionar o servidor como o back-end externo do Cloud CDN.
Para especificar o back-end externo, use um NEG de Internet. Um NEG de Internet tem um dos tipos de endpoint mostrados na tabela a seguir.
Endereço do endpoint | Tipo | Definição | Quando usar |
---|---|---|---|
Nome do host e uma porta opcional | INTERNET_FQDN_PORT |
Um nome de domínio totalmente qualificado (FQDN, na sigla em inglês) que pode ser resolvido publicamente e uma
porta opcional. Por exemplo, backend.example.com:443 (portas padrão:
80 para HTTP e 443 para HTTPS). |
Use esse endpoint quando seu endpoint externo puder ser resolvida usando um FQDN com DNS público. |
Endereço IP e uma porta opcional | INTERNET_IP_PORT |
Um endereço IP que pode ser acessado publicamente e uma porta opcional.
Por exemplo, 192.0.2.8 ou 192.0.2.8:443 (portas padrão:
80 para HTTP e 443 para HTTPS). |
Use este endpoint para especificar um endereço IP que pode ser acessado publicamente e uma porta para se conectar. |
A prática recomendada é criar o NEG de Internet com o tipo de endpoint INTERNET_FQDN_PORT
e um valor de FQDN como um valor de nome de host de origem. Isso isola a configuração do Cloud CDN das alterações de endereço IP na infraestrutura de origem. Os endpoints de rede definidos com FQDNs são resolvidos por meio de DNS público. Verifique se o FQDN configurado pode ser resolvido por meio do DNS público do Google.
Depois de criar o NEG de Internet, não é possível mudar o tipo entre INTERNET_FQDN_PORT
e INTERNET_IP_PORT
. É preciso criar um novo NEG de Internet e alterar seu serviço de back-end para usá-lo.
Ao usar um back-end externo que espera um valor específico para o cabeçalho Host
da solicitação
HTTP, configure o serviço de back-end para definir o
cabeçalho Host
com esse valor esperado. Se você não configurar um cabeçalho de solicitação definido pelo usuário, um serviço de back-end preservará o cabeçalho Host
usado pelo cliente para se conectar ao balanceador de carga HTTP(S) externo do Google Cloud. Para informações gerais sobre cabeçalhos de solicitação definidos pelo usuário, consulte Como criar cabeçalhos de solicitação definidos pelo usuário.
Para ver um exemplo específico, consulte Como configurar o Cloud CDN com um back-end
externo.
Como usar back-ends externos e origens baseadas no Google Cloud
A figura a seguir mostra um NEG de Internet usado para implantar um back-end externo com balanceamento de carga HTTP(S) e Cloud CDN.
A seguir
- Para saber mais sobre qual conteúdo é armazenado em cache, consulte a Visão geral do armazenamento em cache.
- Para resolver problemas, consulte a Solução de problemas de back-end e NEG da Internet.