Como usar proxies de destino

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

Os proxies de destino são referenciados por uma ou mais regras de encaminhamento. Os proxies de destino encerram conexões do cliente e criam novas conexões com os back-ends.

É possível criar um proxy de destino para os seguintes balanceadores de carga:

  • Balanceador de carga HTTP(S) externo global
  • Balanceador de carga HTTP(S) externo global (clássico)
  • Balanceador de carga HTTP(S) externo regional
  • Balanceador de carga HTTP(S) interno
  • Balanceador de carga de proxy SSL externo
  • Balanceador de carga de proxy TCP externo
  • Balanceador de carga do proxy TCP regional interno

No caso de balanceadores de carga HTTP(S) externos e balanceadores de carga HTTP(S) internos, os proxies encaminham as solicitações recebidas para um Mapa de URL.

No caso de balanceadores de carga de proxy SSL externo, balanceadores de carga de proxy TCP externo e balanceadores de carga de proxy TCP regional interno, os proxies de destino encaminham solicitações recebidas diretamente para serviços de back-end.

Criar um proxy de destino

As seções a seguir mostram como criar um proxy de destino para os diferentes balanceadores de carga.

Para balanceador de carga HTTP(S) externo global

O balanceador de carga HTTP(S) externo global é compatível apenas com o nível Premium e usa um proxy HTTP(S) de destino global. O balanceador de carga HTTP(S) externo global (clássico) pode ser implantado no nível Premium ou Standard. No entanto, ele exige um proxy de destino global, independentemente dos níveis de serviço de rede. No nível Standard, uma regra de encaminhamento regional aponta para um proxy de destino global.

Para criar um proxy HTTP(S) de destino global, execute as seguintes etapas:

Console: HTTP(S)

Crie um proxy HTTP(S) de destino global usando o console do Google Cloud ao criar ou atualizar um balanceador de carga, conforme mostrado em Como configurar os recursos de balanceamento de carga.

gcloud: HTTP

gcloud compute target-http-proxies create HTTP_PROXY_NAME \
  --global \
  --url-map URL_MAP \
  --global-url-map \
  [--description DESCRIPTION]

gcloud: HTTPS

Antes de executar este comando, é necessário criar um recurso de certificado SSL para cada certificado.

 gcloud compute target-https-proxies create HTTPS_PROXY_NAME \
   --global \
   --url-map URL_MAP \
   --global-url-map \
   --ssl-certificates SSL_CERT_1[,SSL_CERT_2,...] \
   --global-ssl-certificates \
   [--ssl-policy POLICY_NAME] \
   [--quic-override=ENABLE|DISABLE|NONE]

API: HTTP

POST https://www.googleapis.com/v1/compute/projects/PROJECT_ID/global/targetHttpProxies

{
  "name": HTTP_PROXY_NAME,
  "urlMap": /projects/PROJECT_ID/global/urlMaps/URL_MAP_NAME
}

API: HTTPS

POST https://www.googleapis.com/v1/compute/projects/PROJECT_ID/global/targetHttpsProxies

{
  "name": HTTPS_PROXY_NAME,
  "urlMap": /projects/PROJECT_ID/global/urlMaps/URL_MAP_NAME,
  "sslCertificates": /projects/PROJECT_ID/global/sslCertificates/SSL_CERT_NAME
}

Para balanceadores de carga HTTP(S) externos regionais e internos

Para balanceadores de carga HTTP(S) externos regionais e internos, é necessário um proxy de destino regional.

Para criar um proxy HTTP(S) de destino regional, execute as seguintes etapas:

Console

Crie um proxy HTTP(S) de destino regional usando o console do Google Cloud ao criar ou atualizar um balanceador de carga, conforme mostrado em Como configurar o balanceador de carga HTTP(S) interno ou Como configurar o balanceador de carga HTTP(S) regional.

gcloud: HTTP

gcloud compute target-http-proxies create HTTP_PROXY_NAME \
    --url-map URL_MAP \
    --url-map-region REGION \
    --region REGION \
    [--description DESCRIPTION]

gcloud: HTTPS

Antes de executar este comando, é necessário criar um recurso de certificado SSL para cada certificado.

 gcloud compute target-https-proxies create HTTPS_PROXY_NAME \
     --url-map URL_MAP \
     --url-map-region REGION \
     --region REGION \
     --ssl-certificates SSL_CERT_NAME \
     --ssl-certificates-region REGION

API: HTTP

POST https://www.googleapis.com/v1/compute/projects/PROJECT_ID/regions/REGION/targetHttpProxies

{
  "name": HTTP_PROXY_NAME,
  "urlMap": /projects/PROJECT_ID/regions/REGION/urlMaps/URL_MAP_NAME,
  "region": REGION
}

API: HTTPS

POST https://www.googleapis.com/v1/compute/projects/PROJECT_ID/region/REGION/targetHttpsProxies

{
  "name": HTTPS_PROXY_NAME,
  "urlMap": /projects/PROJECT_ID/regions/REGION/urlMaps/URL_MAP_NAME,
  "region": REGION
  "sslCertificates": /projects/PROJECT_ID/regions/REGION/sslCertificates/SSL_CERT_NAME
}

Para um balanceador de carga do proxy SSL externo

Para balanceadores de carga de proxy SSL externos, um proxy de destino global é necessário para os níveis Padrão e Premium. Isso significa que, no nível Standard, uma regra de encaminhamento regional aponta para um proxy de destino global.

Para criar um proxy SSL de destino global, execute as etapas a seguir:

Console

Crie um proxy SSL de destino global usando o console do Google Cloud ao criar ou atualizar um balanceador de carga, conforme mostrado em Como configurar o balanceador de carga do proxy SSL externo.

gcloud

Antes de executar este comando, é necessário criar um recurso de certificado SSL para cada certificado.

 gcloud compute target-ssl-proxies create SSL_PROXY_NAME \
   --backend-service BACKEND_SERVICE \
   --ssl-certificates SSL_CERT_1[,SSL_CERT_2,...] \
   [--ssl-policy POLICY_NAME] \
   [--quic-override=ENABLE|DISABLE|NONE] \
   [--proxy-header=(NONE | PROXY_V1)]

API

POST https://www.googleapis.com/v1/compute/projects/PROJECT_ID/global/targetSslProxies

{
  "name": SSL_PROXY_NAME,
  "proxyHeader": ("NONE" | "PROXY_V1"),
  "service": "projects/PROJECT/global/backendServices/BACKEND_SERVICE"
  "sslCertificates": /projects/PROJECT_ID/global/sslCertificates/SSL_CERT_NAME
}

Para um balanceador de carga do proxy TCP externo

Para criar um proxy TCP de destino global, execute as etapas a seguir:

Console

Crie um proxy TCP de destino global usando o console do Google Cloud ao criar ou atualizar um balanceador de carga, conforme mostrado em Como configurar o balanceador de carga do proxy TCP externo.

gcloud

 gcloud compute target-tcp-proxies create TCP_PROXY_NAME \
   --backend-service BACKEND_SERVICE \
   --proxy-header=(NONE | PROXY_V1)

API

POST https://www.googleapis.com/v1/compute/projects/PROJECT_ID/global/targetTcpProxies

{
  "name": TCP_PROXY_NAME,
  "proxyHeader": ("NONE" | "PROXY_V1"),
  "service": "projects/PROJECT/global/backendServices/BACKEND_SERVICE"
}

Para um balanceador de carga de proxy TCP regional interno

Para criar um proxy TCP de destino regional, execute as seguintes etapas:

Console

É possível criar um proxy TCP de destino regional usando o console do Google Cloud ao criar ou atualizar um balanceador de carga, conforme mostrado em Como configurar o balanceador de carga de proxy TCP regional interno.

gcloud

 gcloud compute target-tcp-proxies create TCP_PROXY_NAME \
   --backend-service BACKEND_SERVICE \
   --region REGION \
   --proxy-header=(NONE | PROXY_V1)

API

POST https://www.googleapis.com/v1/compute/projects/PROJECT_ID/regions/REGION/targetTcpProxies

{
  "name": TCP_PROXY_NAME,
  "proxyHeader": ("NONE" | "PROXY_V1"),
  "region": REGION,
  "service": "projects/PROJECT/regions/REGION/backendServices/BACKEND_SERVICE"
}

Como listar proxies de destino

Para listar proxies de destino, execute as etapas a seguir.

Para balanceador de carga HTTP(S) externo global

Console

No Console do Google Cloud, acesse a página Proxys de destino.

Acesse proxies de destino

gcloud: HTTP

gcloud compute target-http-proxies list --global

gcloud: HTTPS

gcloud compute target-https-proxies list --global

API: HTTP

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetHttpProxies

API: HTTPS

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetHttpsProxies

Para balanceadores de carga HTTP(S) externos regionais e internos

Console

No Console do Google Cloud, acesse a página Proxys de destino.

Acesse proxies de destino

gcloud: HTTP

gcloud compute target-http-proxies list \
    --filter="region:(COMMA_DELIMITED_LIST_OF_REGIONS)"

gcloud: HTTPS

gcloud compute target-https-proxies list \
   --filter="region:(COMMA_DELIMITED_LIST_OF_REGIONS)"

API: HTTP

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/targetHttpProxies

API: HTTPS

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/targetHttpsProxies

Para um balanceador de carga do proxy SSL externo

Console

No Console do Google Cloud, acesse a página Proxys de destino.

Acesse proxies de destino

gcloud

gcloud compute target-ssl-proxies list

API

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetSslProxies

Para um balanceador de carga do proxy TCP externo

Console

No Console do Google Cloud, acesse a página Proxys de destino.

Acesse proxies de destino

gcloud

gcloud compute target-tcp-proxies list

API

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetTcpProxies

Para um balanceador de carga de proxy TCP regional interno

Console

Não é possível usar o console do Google Cloud para criar ou manter o balanceador de carga de proxy TCP regional interno. Use a CLI gcloud ou a API REST.

gcloud

gcloud compute target-tcp-proxies list \
    --filter="region:(COMMA_DELIMITED_LIST_OF_REGIONS)"

API

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/targetTcpProxies

Como conseguir informações sobre um proxy de destino

Para receber informações sobre um único proxy de destino HTTP ou HTTPS, execute as etapas a seguir.

Para balanceador de carga HTTP(S) externo global

Console

  1. No Console do Google Cloud, acesse a página Proxys de destino.

    Acesse proxies de destino

  2. Selecionar um Nome

  3. Veja a página Detalhes do proxy de destino. Para retornar à página Balanceamento de carga, clique na seta para a esquerda na parte superior da página.

gcloud: HTTP

gcloud compute target-http-proxies describe HTTP_PROXY_NAME \
   --global

gcloud: HTTPS

gcloud compute target-https-proxies describe HTTPS_PROXY_NAME \
   --global

API: HTTP

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetHttpProxies/HTTP_PROXY_NAME

API: HTTPS

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetHttpsProxies/HTTPS_PROXY_NAME

Para balanceadores de carga HTTP(S) externos regionais e internos

Console

  1. No Console do Google Cloud, acesse a página Proxys de destino.

    Acesse proxies de destino

  2. Selecionar um Nome

  3. Veja a página Detalhes do proxy de destino. Para retornar à página Balanceamento de carga, clique na seta para a esquerda na parte superior da página.

gcloud: HTTP

gcloud compute target-http-proxies describe HTTP_PROXY_NAME \
   --region=REGION

gcloud: HTTPS

gcloud compute target-https-proxies describe HTTPS_PROXY_NAME \
   --region=REGION

API: HTTP

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/targetHttpProxies/HTTP_PROXY_NAME

API: HTTPS

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/targetHttpsProxies/HTTPS_PROXY_NAME

Para um balanceador de carga do proxy SSL externo

Console

  1. No Console do Google Cloud, acesse a página Proxys de destino.

    Acesse proxies de destino

  2. Selecionar um Nome

  3. Veja a página Detalhes do proxy de destino. Para retornar à página Balanceamento de carga, clique na seta para a esquerda na parte superior da página.

gcloud

gcloud compute target-ssl-proxies describe SSL_PROXY_NAME

API

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetSslProxies/SSL_PROXY_NAME

Para um balanceador de carga do proxy TCP externo

Console

  1. No Console do Google Cloud, acesse a página Proxys de destino.

    Acesse proxies de destino

  2. Selecionar um Nome

  3. Veja a página Detalhes do proxy de destino. Para retornar à página Balanceamento de carga, clique na seta para a esquerda na parte superior da página.

gcloud

gcloud compute target-tcp-proxies describe TCP_PROXY_NAME

API

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetTcpProxies/TCP_PROXY_NAME

Para um balanceador de carga de proxy TCP regional interno

Console

Não é possível usar o console do Google Cloud para criar ou manter o balanceador de carga de proxy TCP regional interno. Use a CLI gcloud ou a API REST.

gcloud

gcloud compute target-tcp-proxies describe TCP_PROXY_NAME \
    --region=REGION

API

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/targetTcpProxies/TCP_PROXY_NAME

Como atualizar o proxy de destino para apontar para um mapa de URLs diferente

Para atualizar o proxy de destino para apontar para um mapa de URL diferente, execute as etapas a seguir.

Para balanceador de carga HTTP(S) externo global

Para atualizar o mapa de URLs associado a um proxy de destino, execute as seguintes etapas:

Console

Não é possível editar proxies HTTP(S) no console do Google Cloud. É possível editar o proxy de destino usando a CLI gcloud ou a API.

gcloud: HTTP

gcloud compute target-http-proxies update HTTP_PROXY_NAME \
    --url-map URL_MAP \
    --global \
    --global-url-map

gcloud: HTTPS

gcloud compute target-https-proxies update HTTPS_PROXY_NAME \
    --url-map URL_MAP \
    --global \
    --global-url-map

API: HTTP

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetHttpProxies/HTTP_PROXY_NAME/setUrlMap

{
  "urlMap": /projects/PROJECT_ID/global/urlMaps/URL_MAP_NAME
}

API: HTTPS

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetHttpsProxies/HTTPS_PROXY_NAME/setUrlMap

{
  "urlMap": "urlMap": /projects/PROJECT_ID/global/urlMaps/URL_MAP_NAME
}

Para balanceadores de carga HTTP(S) externos regionais e internos

Para atualizar o mapa de URLs associado a um proxy de destino, execute as seguintes etapas:

Console

Não é possível editar proxies HTTP(S) no console do Google Cloud. É possível editar o proxy de destino usando a CLI gcloud ou a API.

gcloud: HTTP

gcloud compute target-http-proxies update HTTP_PROXY_NAME \
    --url-map URL_MAP \
    --region=REGION \
    --url-map-region=REGION

gcloud: HTTPS

gcloud compute target-https-proxies update HTTPS_PROXY_NAME \
    --url-map URL_MAP \
    --region=REGION \
    --url-map-region=REGION

API: HTTP

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/targetHttpProxies/HTTP_PROXY_NAME/setUrlMap

{
  "urlMap": /projects/PROJECT_ID/regions/REGIONurlMaps/URL_MAP_NAME
}

API: HTTPS

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/targetHttpsProxies/HTTPS_PROXY_NAME/setUrlMap

{
  "urlMap": /projects/PROJECT_ID/regions/REGION/urlMaps/URL_MAP_NAME
}

Como atualizar o recurso de certificado SSL para o proxy HTTPS de destino

Use este procedimento para substituir o certificado SSL no proxy HTTPS. Você já terá criado outros recursos de certificado SSL necessários.

Console

  1. No Console do Google Cloud, acesse a página Balanceamento de carga.

    Acessar o "Balanceamento de carga"

  2. Clique em Editar ao lado do seu balanceador de carga.

  3. Clique em Configuração de front-end.

  4. No menu suspenso Certificado, selecione o novo certificado.

  5. Clique em Add certificate se precisar adicionar mais certificados.

  6. Clique em Concluído.

gcloud

É possível configurar o número documentado de certificados SSL por proxy HTTPS de destino.

gcloud compute target-https-proxies update PROXY_NAME \
    --ssl-certificates=SSL_CERT_1,SSL_CERT_2,...

API: HTTPS

É possível usar a chamada de API a seguir para substituir o certificado SSL do proxy HTTPS.

POST [https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/targetHttpsProxies/HTTPS_PROXY_NAME/setSslCertificates]

O corpo da solicitação contém dados com a seguinte estrutura:

{
  "sslCertificates": [
    "SSL_CERT_URL"
  ]
}

Substitua:

  • PROJECT_ID: o ID do projeto dessa solicitação.
  • HTTPS_PROXY_NAME: nome do recurso de proxy HTTPS de destino em que o recurso de certificado SSL está sendo atualizado.
  • SSL_CERT_URL: URL definido pelo servidor (selfLink) para o recurso de certificado SSL

Como excluir um proxy de destino

Para excluir um proxy de destino, primeiro é preciso excluir quaisquer regras de encaminhamento global que o referenciam.

Para excluir um proxy de destino, siga as etapas abaixo.

Para balanceador de carga HTTP(S) externo global

Console

  1. No Console do Google Cloud, acesse a página Proxys de destino.

    Acesse proxies de destino

  2. Selecione Proxies de destino.

  3. Clique na caixa de seleção do Nome a ser excluído.

  4. Clique em Excluir.

gcloud: HTTP

gcloud compute target-http-proxies delete HTTP_PROXY_NAME \
   --global

gcloud: HTTPS

gcloud compute target-https-proxies delete HTTPS_PROXY_NAME \
   --global

API: HTTP

DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetHttpProxies/HTTP_PROXY_NAME

API: HTTPS

DELETE https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetHttpsProxies/HTTPS_PROXY_NAME

Para balanceadores de carga HTTP(S) externos regionais e internos

Console

  1. No Console do Google Cloud, acesse a página Proxys de destino.

    Acesse proxies de destino

  2. Selecione Proxies de destino.

  3. Clique na caixa de seleção do Nome a ser excluído.

  4. Clique em Excluir.

gcloud: HTTP

gcloud compute target-http-proxies delete HTTP_PROXY_NAME \
   --region=REGION

gcloud: HTTPS

gcloud compute target-https-proxies delete HTTPS_PROXY_NAME \
   --region=REGION

API: HTTP

DELETE https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/targetHttpProxies/HTTP_PROXY_NAME

API: HTTPS

DELETE https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/targetHttpsProxies/HTTPS_PROXY_NAME

Para um balanceador de carga do proxy SSL externo

Console

  1. No Console do Google Cloud, acesse a página Proxys de destino.

    Acesse proxies de destino

  2. Selecione Proxies de destino.

  3. Clique na caixa de seleção do Nome a ser excluído.

  4. Clique em Excluir.

gcloud

gcloud compute target-ssl-proxies delete SSL_PROXY_NAME

API

DELETE https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetSslProxies/SSL_PROXY_NAME

Para um balanceador de carga do proxy TCP externo

Console

  1. No Console do Google Cloud, acesse a página Proxys de destino.

    Acesse proxies de destino

  2. Selecione Proxies de destino.

  3. Clique na caixa de seleção do Nome a ser excluído.

  4. Clique em Excluir.

gcloud

gcloud compute target-tcp-proxies delete TCP_PROXY_NAME

API

DELETE https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetTcpProxies/TCP_PROXY_NAME

Para um balanceador de carga de proxy TCP regional interno

Console

  1. No Console do Google Cloud, acesse a página Proxys de destino.

    Acesse proxies de destino

  2. Selecione Proxies de destino.

  3. Clique na caixa de seleção do Nome a ser excluído.

  4. Clique em Excluir.

gcloud

gcloud compute target-tcp-proxies delete TCP_PROXY_NAME \
    --region=REGION

API

DELETE https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/targetTcpProxies/TCP_PROXY_NAME

Como atualizar a configuração do protocolo QUIC

Os proxies HTTPS de destino são compatíveis com o uso do protocolo de transporte QUIC com a sinalização opcional --quic-override.

Console: HTTPS

É possível usar o console do Google Cloud para configurar o QUIC ao configurar um novo balanceador de carga, conforme mostrado em Como configurar os recursos de balanceamento de carga.

gcloud: HTTPS

Antes de executar este comando, é necessário criar um recurso de certificado SSL para cada certificado.

 gcloud compute target-https-proxies create HTTPS_PROXY_NAME \
   --global \
   --quic-override=QUIC_SETTING

em que QUIC_SETTING é um dos seguintes:

  • NONE (padrão) permite que o Google controle quando o QUIC é negociado. Atualmente, quando você seleciona NONE, o QUIC está desativado. Ao selecionar essa opção, você permite que o Google ative automaticamente as negociações do QUIC e o HTTP/3 no futuro para este balanceador de carga. No console do Google Cloud, essa opção é chamada de Automática (padrão).
  • ENABLED permite que o balanceador de carga negocie o QUIC com os clientes.
  • DISABLED Impede que o balanceador de carga negocie o QUIC com os clientes.

API: HTTPS

POST https://www.googleapis.com/v1/compute/projects/PROJECT_ID/global/targetHttpsProxies/TARGET_PROXY_NAME/setQuicOverride

{
  "quicOverride": QUIC_SETTING
}

em que QUIC_SETTING é um dos seguintes:

  • NONE (padrão) permite que o Google controle quando o QUIC é negociado. Atualmente, quando você seleciona NONE, o QUIC está desativado. Ao selecionar essa opção, você permite que o Google ative automaticamente as negociações do QUIC e o HTTP/3 no futuro para este balanceador de carga. No console do Google Cloud, essa opção é chamada de Automática (padrão).
  • ENABLED permite que o balanceador de carga negocie o QUIC com os clientes.
  • DISABLED Impede que o balanceador de carga negocie o QUIC com os clientes.

API e referência gcloud

Para descrições das propriedades e dos métodos disponíveis ao trabalhar com proxies de destino por meio da API REST, consulte as seguintes páginas:

Para descrições das propriedades e dos métodos disponíveis ao trabalhar com proxies de destino usando a Google Cloud CLI, consulte as seguintes páginas:

A seguir