Como usar proxies de destino

Os proxies de destino são referenciados por uma ou mais regras de encaminhamento. 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 do proxy SSL; e balanceadores de carga do proxy TCP., os proxies de destino encaminham solicitações recebidas diretamente para serviços de back-end .

Propriedades do proxy de destino

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 por meio da ferramenta de linha de comando gcloud, consulte as seguintes páginas:

Como adicionar um proxy de destino

Você pode adicionar um proxy de destino para os seguintes tipos de balanceamento de carga:

  • Balanceamento de carga HTTP(S) externo
  • Balanceamento de carga HTTP(S) interno
  • Balanceamento de carga de proxy SSL
  • Balanceamento de carga de proxy TCP

Para um balanceador de carga HTTP(S) externo

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

Console: HTTP

  1. Acesse a página "Proxies de destino".
    Acessar a página "Proxies de destino"
  2. Clique em Criar proxy de destino.
  3. Digite um Nome.
  4. (Opcional) Digite uma Descrição.
  5. Selecione o Tipo HTTP Proxy.
  6. Selecione um Mapa de URL.
  7. Clique em Criar.

Console: HTTPS

  1. Acesse a página "Proxies de destino".
    Acessar a página "Proxies de destino"
  2. Clique em Criar proxy de destino.
  3. Digite um Nome.
  4. (Opcional) Digite uma Descrição.
  5. Selecione o Tipo HTTPS Proxy.
  6. Se você já tem um recurso de certificado SSL que quer usar como certificado SSL principal, selecione-o no menu suspenso Certificado. Caso contrário, selecione Criar um novo certificado.
    1. Digite um Nome.
    2. Faça upload (recomendado) dos arquivos a seguir ou copie e cole o conteúdo deles nos campos apropriados:
      • Certificado de chave pública (arquivo .crt)
      • Cadeia de certificados (arquivo .csr)
      • Chave privada (arquivo .key)
  7. Adicione certificados adicionais repetindo a etapa anterior.
  8. Selecione um Mapa de URL.
  9. Clique em Criar

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 um balanceador de carga HTTP(S) interno

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

Console

Não é possível usar o Console do Cloud para criar um proxy HTTP de destino regional independente.

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

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

Console

  1. Acesse a página "Proxies de destino".
    Acessar a página "Proxies de destino"
  2. Clique em Criar proxy de destino.
  3. Digite um Nome.
  4. (Opcional) Digite uma Descrição.
  5. Selecione o Tipo SSL Proxy.
  6. Se você já tem um recurso de certificado SSL que quer usar como certificado SSL principal, selecione-o no menu suspenso Certificado. Caso contrário, selecione Criar um novo certificado.
    1. Digite um Nome.
    2. Faça upload (recomendado) dos arquivos a seguir ou copie e cole o conteúdo deles nos campos apropriados:
      • Certificado de chave pública (arquivo .crt)
      • Cadeia de certificados (arquivo .csr)
      • Chave privada (arquivo .key)
  7. Adicione certificados adicionais repetindo a etapa anterior.
  8. Selecione um serviço de back-end.
  9. Opcional: ative o protocolo de proxy.
  10. Clique em Criar

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 de proxy TCP

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

Console

  1. Acesse a página "Proxies de destino".
    Acessar a página "Proxies de destino"
  2. Clique em Criar proxy de destino.
  3. Digite um Nome.
  4. (Opcional) Digite uma Descrição.
  5. Selecione o Tipo TCP Proxy.
  6. Selecione um serviço de back-end.
  7. Opcional: ative o protocolo de proxy.
  8. Clique em Criar

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"
}

Como listar proxies de destino

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

Para um balanceador de carga HTTP(S) externo

Console

Acesse a página "Proxies de destino".
Acessar a página "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 um balanceador de carga HTTP(S) interno

Console

Acesse a página "Proxies de destino".
Acessar a página "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

Console

Acesse a página "Proxies de destino".
Acessar a página "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 de proxy TCP

Console

Acesse a página "Proxies de destino".
Acessar a página "Proxies de destino"

gcloud

gcloud compute target-tcp-proxies list

API

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/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 um balanceador de carga HTTP(S) externo

Console

  1. Acesse a página "Proxies de destino".
    Acessar a página "Proxies de destino"
  2. Selecione um Nome de destino.
  3. Veja a tela Detalhes de destino. Para retornar à tela "Balanceamento de carga", clique na seta para a esquerda na parte superior da tela.

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 um balanceador de carga HTTP(S) interno

Console

  1. Acesse a página "Proxies de destino".
    Acessar a página "Proxies de destino"
  2. Selecione um Nome de destino.
  3. Veja a tela Detalhes de destino. Para retornar à tela "Balanceamento de carga", clique na seta para a esquerda na parte superior da tela.

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

Console

  1. Acesse a página "Proxies de destino".
    Acessar a página "Proxies de destino"
  2. Selecione um Nome de destino.
  3. Veja a tela Detalhes de destino. Para retornar à tela "Balanceamento de carga", clique na seta para a esquerda na parte superior da tela.

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 de proxy TCP

Console

  1. Acesse a página "Proxies de destino".
    Acessar a página "Proxies de destino"
  2. Selecione um Nome de destino.
  3. Veja a tela Detalhes de destino. Para retornar à tela "Balanceamento de carga", clique na seta para a esquerda na parte superior da tela.

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

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 um balanceador de carga HTTP(S) externo

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

Console

Os proxies HTTP(S) não podem ser editados no Console do Cloud. Em vez disso, exclua o proxy de destino e adicione-o novamente. Como alternativa, é possível editar o proxy de destino usando 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 um balanceador de carga HTTP(S) interno

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

Console

Os proxies HTTP(S) não podem ser editados no Console do Cloud. Em vez disso, exclua o proxy de destino e adicione-o novamente. Como alternativa, é possível editar o proxy de destino usando 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. Acesse a página "Balanceamento de carga" no Console do Google Cloud.

    Acessar a página "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 set-ssl-certificates PROXY_NAME \
    --ssl-certificates=SSL_CERT_1,SSL_CERT_2,...

API: HTTPS

DELETE [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetHttpsProxies/HTTPS_PROXY_NAME]
POST [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/targetHttpsProxies]
{
  "name": HTTPS_PROXY_NAME,
  "sslCertificates": [
    SSL_CERT_1,SSL_CERT_2
  ]
}

Como excluir um proxy de destino

Para excluir um proxy HTTP ou HTTPS de destino, execute as etapas a seguir.

Para um balanceador de carga HTTP(S) externo

Console

  1. Acesse a página "Proxies de destino".
    Acessar a página "Proxies de destino"
  2. Selecione Proxies de destino.
  3. Clique na caixa de seleção do Nome do destino 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 um balanceador de carga HTTP(S) interno

Console

  1. Acesse a página "Proxies de destino".
    Acessar a página "Proxies de destino"
  2. Selecione Proxies de destino.
  3. Clique na caixa de seleção do Nome do destino 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

Console

  1. Acesse a página "Proxies de destino".
    Acessar a página "Proxies de destino"
  2. Selecione Proxies de destino.
  3. Clique na caixa de seleção do Nome do destino 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 de proxy TCP

Console

  1. Acesse a página "Proxies de destino".
    Acessar a página "Proxies de destino"
  2. Selecione Proxies de destino.
  3. Clique na caixa de seleção do Nome do destino 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

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

No momento, a configuração da negociação do QUIC não é compatível com a página "Proxies de destino". É possível usar o Console do 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 Cloud, essa opção é chamada de Automático (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 Cloud, essa opção é chamada de Automático (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.

A seguir