Nesta página, mostramos como configurar e usar o Cloud Logging e o Cloud Monitoring para balanceadores de carga de rede proxy.
Recursos de monitoramento
A tabela a seguir especifica os nomes dos recursos dos balanceadores de carga.
Balanceador de carga de rede de proxy externo regional Balanceador de carga de rede de proxy interno regional Balanceador de carga de rede de proxy interno entre regiões Balanceador de carga de rede de proxy externo global |
Balanceador de carga de rede de proxy clássico | |
---|---|---|
Tipo de recurso monitorado no Logging | "Regra do balanceador de carga de rede de proxy"l4_proxy_rule |
"Regra do balanceador de carga de rede de proxy externo global"tcp_ssl_proxy_rule |
Tipo de recurso monitorado no Monitoring | "Regra do balanceador de carga de rede de proxy"l4_proxy_rule |
"Regra do balanceador de carga de rede de proxy externo global"tcp_ssl_proxy_rule |
Geração de registros para balanceadores de carga de rede proxy
Os registros fornecem informações úteis para solucionar problemas e monitorar balanceadores de carga. Os registros são agregados para cada conexão e fornecem insights sobre como cada conexão é roteada para os back-ends de exibição.
Não há cobranças extras pelo uso de registros. No entanto, dependendo de como você faz a importação de registros, é aplicado o preço padrão do Cloud Logging, do BigQuery ou do Pub/Sub. Além disso, a ativação de registros não afeta o desempenho do balanceador de carga.
Coleta e amostragem de registros
As conexões que saem e entram nas instâncias de máquina virtual (VM) do back-end do balanceador de carga são amostradas. Essas conexões são processadas para
gerar registros. Você controla a fração das conexões que são emitidas como entradas de registro de acordo com o parâmetro logConfig.sampleRate. Quando logConfig.sampleRate
é 1.0
(100%), isso significa que os registros
são gerados para todas as conexões e gravados no Cloud Logging.
Ativar a geração de registros em um novo serviço de back-end
gcloud
Use o
comando
gcloud compute backend-services create
.
Para balanceadores de carga de rede de proxy externo regional e balanceadores de carga de rede de proxy interno regional:
gcloud compute backend-services create BACKEND_SERVICE \ --region=REGION \ --enable-logging \ --logging-sample-rate=SAMPLE_RATE
Para balanceadores de carga de rede de proxy externo global, balanceador de carga de rede de proxy clássico ou balanceador de carga de rede de proxy interno entre regiões:
gcloud compute backend-services create BACKEND_SERVICE \ --global \ --enable-logging \ --logging-sample-rate=SAMPLE_RATE
Substitua:
BACKEND_SERVICE
: o nome do serviço de back-end.REGION
: a região do serviço de back-end a ser criado.SAMPLE_RATE
: este campo só poderá ser especificado se a geração de registros estiver ativada para este serviço de back-end.
O valor do campo precisa ser de
0.0 to 1.0
, em que0.0
significa que nenhum registro é informado e1.0
significa que todas as conexões são registradas. Ativar a geração de registros, mas definir a taxa de amostragem como0.0
, equivale a desativar a geração de registros. O valor padrão é1.0
.
API
Faça uma solicitação POST
ao
método regionBackendServices.insert
:
Para balanceadores de carga de rede de proxy interno regional:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "INTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
Para balanceadores de carga de rede de proxy externo regional:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
Para balanceadores de carga de rede de proxy externo regional:
Faça uma solicitação POST
ao
método backendServices.insert
:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
Para balanceadores de carga de rede de proxy clássicos:
Faça uma solicitação POST
ao
método backendServices.insert
:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
Para balanceadores de carga de rede de proxy interno entre regiões:
Faça uma solicitação POST
ao
método backendServices.insert
:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "INTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
Substitua:
BACKEND_SERVICE
: o nome do serviço de back-end.SAMPLE_RATE
: este campo só poderá ser especificado se a geração de registros estiver ativada para este serviço de back-end.
O valor do campo precisa ser de
0.0 to 1.0
, em que0.0
significa que nenhum registro é informado e1.0
significa que todas as conexões são registradas. Ativar a geração de registros, mas definir a taxa de amostragem como0.0
, equivale a desativar a geração de registros. O valor padrão é1.0
.
Ativar a geração de registros em um serviço de back-end
gcloud
Use o
comando gcloud
compute backend-services update
.
Para balanceadores de carga de rede de proxy externo regional e balanceadores de carga de rede de proxy interno regional:
gcloud compute backend-services update BACKEND_SERVICE \ --region=REGION \ --enable-logging \ --logging-sample-rate=SAMPLE_RATE
Para balanceadores de carga de rede de proxy externo global, balanceador de carga de rede de proxy clássico ou balanceador de carga de rede de proxy interno entre regiões:
gcloud compute backend-services update BACKEND_SERVICE \ --global \ --enable-logging \ --logging-sample-rate=SAMPLE_RATE
Substitua:
BACKEND_SERVICE
: o nome do serviço de back-end.REGION
: a região do serviço de back-end a ser criado.SAMPLE_RATE
: este campo só poderá ser especificado se a geração de registros estiver ativada para este serviço de back-end.
O valor do campo precisa ser de
0.0 to 1.0
, em que0.0
significa que nenhum registro é informado e1.0
significa que todas as conexões são registradas. Ativar a geração de registros, mas definir a taxa de amostragem como0.0
, equivale a desativar a geração de registros. O valor padrão é1.0
.
API
Faça uma solicitação PATCH
ao
método
regionBackendServices/patch
:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/backendServices/BACKEND_SERVICE
Para balanceadores de carga de rede de proxy interno regional:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "INTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
Para balanceadores de carga de rede de proxy externo regional:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
Para balanceadores de carga de rede de proxy externo regional:
Faça uma solicitação PATCH
ao
método
backendServices/patch
:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE { "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
Para balanceadores de carga de rede de proxy clássicos:
Faça uma solicitação PATCH
ao
método
backendServices/patch
:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE { "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
Para balanceadores de carga de rede de proxy interno entre regiões:
Faça uma solicitação PATCH
ao
método
backendServices/patch
:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE { "name": "BACKEND_SERVICE", "loadBalancingScheme": "INTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
Substitua:
PROJECT_ID
: o nome do projeto.BACKEND_SERVICE
: o nome do serviço de back-end.SAMPLE_RATE
: este campo só poderá ser especificado se a geração de registros estiver ativada para este serviço de back-end.
O valor do campo precisa ser de
0.0 to 1.0
, em que0.0
significa que nenhum registro é informado e1.0
significa que todas as conexões são registradas. Ativar a geração de registros, mas definir a taxa de amostragem como0.0
, equivale a desativar a geração de registros. O valor padrão é1.0
.
Ativar a geração de registros em um serviço de back-end
gcloud
Use o
comando gcloud compute backend-services update
.
Para balanceadores de carga de rede de proxy externo regional e balanceadores de carga de rede de proxy interno regional:
gcloud compute backend-services update BACKEND_SERVICE \ --region=REGION \ --no-enable-logging
Para balanceadores de carga de rede de proxy externo global, balanceador de carga de rede de proxy clássico ou balanceador de carga de rede de proxy interno entre regiões:
gcloud compute backend-services update BACKEND_SERVICE \ --global \ --no-enable-logging
Substitua:
BACKEND_SERVICE
: o nome do serviço de back-end.REGION
: a região do serviço de back-end.
API
Para balanceadores de carga de rede de proxy externo regional e balanceadores de carga de rede de proxy interno regional:
Faça uma solicitação PATCH
ao
método regionBackendServices/patch
:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/backendServices/BACKEND_SERVICE { "logConfig": { "enable": false } }
Para balanceadores de carga de rede de proxy externo global, balanceador de carga de rede de proxy clássico ou balanceador de carga de rede de proxy interno entre regiões:
Faça uma solicitação PATCH
ao
método backendServices/patch
:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE { "logConfig": { "enable": false } }
Substitua:
PROJECT_ID
: o nome do projeto.REGION
: a região do serviço de back-end.BACKEND_SERVICE
: o nome do serviço de back-end.
Ver registros
Quando os registros são ingeridos no Cloud Logging e não são excluídos por um coletor do roteador de registros, é possível ler os registros usando a API Cloud Logging e a Google Cloud CLI.
Para conferir todos os registros, siga as etapas abaixo.
Console
No console do Google Cloud, acesse a página do Explorador de registros.
Selecione o tipo de recurso Regra de balanceador de carga de rede de proxy.
Selecione o nome do registro loadbalancing.googleapis.com/connections.
Consulta do console
No console do Google Cloud, acesse a página do Explorador de registros.
Clique no botão de alternância Mostrar consulta.
Cole o código abaixo no campo "Consulta".
resource.type="LOG_RESOURCE_TYPE" logName="projects/PROJECT_ID/logs/loadbalancing.googleapis.com/connections"
Clique em Executar consulta.
Substitua:
LOG_RESOURCE_TYPE
: o tipo de recurso monitorado de geração de registros definido comol4_proxy_rule
outcp_ssl_proxy_rule
.PROJECT_ID
: o nome do projeto.
Ver registros de um serviço de back-end específico
Para conferir os registros de um serviço de back-end específico, siga as etapas abaixo.
Consulta do console
No console do Google Cloud, acesse a página do Explorador de registros.
Clique no botão de alternância Mostrar consulta.
Cole o código abaixo no campo "Consulta".
resource.type="LOG_RESOURCE_TYPE" logName="projects/PROJECT_ID/logs/loadbalancing.googleapis.com/connections" resource.labels.backend_service_name="BACKEND_SERVICE_NAME"
Clique em Executar consulta.
Substitua:
LOG_RESOURCE_TYPE
: o tipo de recurso monitorado de geração de registros definido comol4_proxy_rule
outcp_ssl_proxy_rule
.PROJECT_ID
: o nome do projeto.BACKEND_SERVICE_NAME
: o nome do serviço de back-end.
Ver registros de um grupo de instâncias de back-end
Para conferir os registros de um grupo específico de instâncias de back-end, conclua as etapas a seguir.
Consulta do console
No console do Google Cloud, acesse a página do Explorador de registros.
Clique no botão de alternância Mostrar consulta.
Cole o código abaixo no campo "Consulta".
resource.type="LOG_RESOURCE_TYPE" logName="projects/PROJECT_ID/logs/loadbalancing.googleapis.com/connections" resource.labels.backend_group_name="BACKEND_GROUP_NAME"
Clique em Executar consulta.
Substitua:
LOG_RESOURCE_TYPE
: o tipo de recurso monitorado de geração de registros definido comol4_proxy_rule
outcp_ssl_proxy_rule
.PROJECT_ID
: o nome do projeto.BACKEND_GROUP_NAME
: o nome do grupo de instâncias.
O que é registrado
As entradas de registro contêm informações úteis para monitorar e depurar o tráfego. Os registros contêm campos obrigatórios, que são os campos padrão de cada registro.
Campo | Formato do campo | Tipo de campo: obrigatório ou opcional | Descrição |
---|---|---|---|
severity timestamp receiveTimestamp insertID logName |
LogEntry | Obrigatório | Os campos gerais, conforme descrito em uma entrada de registro. |
resource | MonitoredResource | Obrigatório | O MonitoredResource é o tipo de recurso associado a uma entrada de registro. O MonitoredResourceDescriptor descreve o esquema de um objeto |
jsonPayload | object (Struct format) | Obrigatório | O payload da entrada de registro expresso como um objeto JSON. O objeto JSON contém os seguintes campos:
|
Campos de registro
Os registros contêm campos obrigatórios, que são os campos padrão de cada registro.
Alguns campos de registro contêm mais de um dado em um determinado campo. Esses campos estão em formato de vários campos. Por exemplo, o campo connection
é do
formato IpConnection
, que contém o endereço
IP, o protocolo e a porta de origem e destino em um único espaço. Esses campos
são descritos na tabela de formatos de registro a seguir.
A tabela a seguir lista todos os campos de registro obrigatórios para o recurso l4_proxy_rule.
Campo | Formato do campo | Descrição |
---|---|---|
conexão | IpConnection | Quíntuplo que descreve esta conexão. |
startTime | string | Carimbo de data/hora (formato de string de data RFC 3339) quando a conexão do cliente foi aceita pelo balanceador de carga. |
endTime | string | Carimbo de data/hora (formato de string de data RFC 3339) quando o cliente ou o back-end encerrou a conexão. |
bytesSent | int64 | Número de bytes enviados do servidor para o cliente. |
bytesReceived | int64 | Número de bytes recebidos pelo servidor do cliente. |
Formato do campo IpConnection
Campo | Tipo | Descrição |
---|---|---|
clientIp | string | Endereço IP do cliente |
clientPort | int32 | Porta do cliente. Definido apenas para conexões TCP e UDP. |
serverIp | string | Endereço IP do servidor (IP da regra de encaminhamento) |
serverPort | int32 | Porta do servidor. Definido apenas para conexões TCP e UDP. |
protocol | int32 | Número do protocolo IANA |
Campo de erro proxyStatus
O campo proxyStatus
contém uma string que especifica por que o balanceador de carga retornou um erro. Há duas partes no campo proxyStatus
, proxyStatus error
e proxyStatus details
.
Esta seção descreve as strings com suporte no campo
proxyStatus error
.
O campo de erro proxyStatus é aplicável aos seguintes balanceadores de carga:
- Balanceador de carga de rede de proxy externo global
- Balanceador de carga de rede de proxy externo regional
- Balanceador de carga de rede de proxy interno entre regiões
- Balanceador de carga de rede de proxy interno regional
Erro proxyStatus | Descrição | Códigos de resposta associados frequentes |
---|---|---|
destination_unavailable
|
O balanceador de carga considera o back-end indisponível. Por exemplo, tentativas recentes de comunicação com o back-end falharam ou uma verificação de integridade pode ter resultado em uma falha. | 500, 503 |
connection_timeout
|
A tentativa do balanceador de carga de abrir uma conexão com o back-end expirou. | 504 |
connection_terminated
|
A conexão do balanceador de carga com o back-end terminou antes do recebimento de uma resposta completa. Esse
|
0, 502, 503 |
connection_refused
|
A conexão do balanceador de carga com o back-end é recusada. | 502, 503 |
connection_limit_reached
|
O balanceador de carga está configurado para limitar o número de conexões com o back-end, e esse limite foi excedido. Esse
|
502, 503 |
destination_not_found
|
O balanceador de carga não pode determinar o back-end apropriado a ser usado para essa solicitação. Por exemplo, o back-end pode não estar configurado. | 500, 404 |
dns_error
|
O balanceador de carga encontrou um erro de DNS ao tentar encontrar um endereço IP para o nome do host do back-end. | 502, 503 |
proxy_configuration_error
|
O balanceador de carga encontrou um erro interno de configuração. | 500 |
proxy_internal_error
|
O balanceador de carga encontrou um erro interno. | 0, 500, 502 |
proxy_internal_response
|
O balanceador de carga gerou a resposta sem tentar se conectar ao back-end. | Qualquer código de resposta, dependendo do tipo de problema. Por exemplo, o
código de resposta 410 significa que o back-end está indisponível devido à
inadimplência de pagamento.
|
tls_protocol_error
|
O balanceador de carga encontrou um erro de TLS durante o handshake de TLS. | 0 |
tls_certificate_error
|
O balanceador de carga encontrou um erro no momento de verificar o certificado apresentado pelo servidor. | 0 |
tls_alert_received
|
O balanceador de carga encontrou um alerta TLS fatal durante o handshake de TLS. | 0 |
Campo de detalhes do proxyStatus
O campo proxyStatus
contém uma string que especifica por que o balanceador de carga retornou um erro. Há duas partes no campo proxyStatus
, proxyStatus error
e proxyStatus details
.
O campo proxyStatus details
é opcional e só é exibido quando há mais informações disponíveis.
Esta seção descreve as strings com suporte no campo
proxyStatus details
.
O campo de detalhes do proxyStatus é aplicável aos seguintes balanceadores de carga:
- Balanceador de carga de rede de proxy externo global
- Balanceador de carga de rede de proxy externo regional
- Balanceador de carga de rede de proxy interno regional
- Balanceador de carga de rede de proxy interno entre regiões
Detalhes do proxyStatus | Descrição | Códigos de resposta associados frequentes |
---|---|---|
client_disconnected_before_any_response
|
A conexão com o cliente foi interrompida antes de o balanceador de carga enviar uma resposta. | 0 |
backend_connection_closed
|
O back-end fechou inesperadamente sua conexão com o balanceador de carga. Isso poderá acontecer se o balanceador de carga estiver enviando tráfego para outra entidade, como um aplicativo de terceiros com um tempo limite TCP menor que o tempo limite de 10 minutos (600 segundos) do balanceador de carga. | 502 |
failed_to_connect_to_backend
|
O balanceador de carga falhou ao se conectar com o back-end. Essa falha inclui tempos limite durante a fase de conexão. | 503 |
failed_to_pick_backend
|
O balanceador de carga falhou ao escolher um back-end íntegro para administrar a solicitação. | 502 |
handled_by_identity_aware_proxy
|
Esta resposta foi gerada pelo Identity-Aware Proxy (IAP) durante a verificação da identidade do cliente antes de permitir o acesso. | 200, 302, 400, 401, 403, 500, 502 |
request_overall_timeout
|
O tempo limite total da solicitação foi excedido. | 408, 503, 504 |
tls_version_not_supported
|
A versão do protocolo TLS é reconhecida, mas não tem suporte. O erro resulta no fechamento da conexão TLS. | 0 |
unknown_psk_identity
|
Os servidores enviam esse erro quando o estabelecimento da chave PSK é necessário, mas o cliente não fornece uma identidade PSK aceitável. O erro resulta no fechamento da conexão TLS. | 0 |
no_application_protocol
|
Enviada por servidores quando uma extensão "application_layer_protocol_negotiation" do cliente anuncia somente protocolos não compatíveis com o servidor. Consulte Extensão de negociação do protocolo da camada de aplicativo TLS. O erro resulta no fechamento da conexão TLS. | 0 |
no_certificate
|
Nenhum certificado foi encontrado. O erro resulta no fechamento da conexão TLS. | 0 |
bad_certificate
|
Um certificado é inválido ou contém assinaturas que não puderam ser verificadas. O erro resulta no fechamento da conexão TLS. | 0 |
unsupported_certificate
|
O tipo de certificado não é compatível. O erro resulta no fechamento da conexão TLS. | 0 |
certificate_revoked
|
Um certificado foi revogado pelo signatário. O erro resulta no fechamento da conexão TLS. | 0 |
certificate_expired
|
Um certificado expirou ou não é válido. O erro resulta no fechamento da conexão TLS. | 0 |
certificate_unknown
|
Ocorreram alguns problemas não especificados durante o processamento do certificado, tornando-o inaceitável. O erro resulta no fechamento da conexão TLS. | 0 |
unknown_ca
|
Uma cadeia de certificados ou parcial válida foi recebida, mas o certificado não foi aceito porque o certificado de CA não pôde ser localizado ou combinado com uma âncora de confiança conhecida. O erro resulta no fechamento da conexão TLS. | 0 |
unexpected_message
|
Uma mensagem inadequada foi recebida, por exemplo, uma mensagem de handshake incorreta ou dados de aplicativo prematuros. O erro resulta no fechamento da conexão TLS. | 0 |
bad_record_mac
|
É recebido um registro que não pode ser desprotegido. O erro resulta no fechamento da conexão TLS. | 0 |
record_overflow
|
Um registro TLSCiphertext com duração superior a
214+256 bytes ou um registro foi descriptografado para um
registro TLSPlaintext com mais de 214 bytes (ou algum outro limite negociado). O erro resulta no fechamento da conexão TLS.
|
0 |
handshake_failure
|
Não é possível negociar um conjunto aceitável de parâmetros de segurança com as opções disponíveis. O erro resulta no fechamento da conexão TLS. | 0 |
illegal_parameter
|
Um campo no handshake estava incorreto ou era inconsistente com outros campos. O erro resulta no fechamento da conexão TLS. | 0 |
access_denied
|
Um certificado válido ou PSK foi recebido, mas quando o controle de acesso foi aplicado, o cliente não prosseguiu com a negociação. O erro resulta no fechamento da conexão TLS. | 0 |
decode_error
|
Não foi possível decodificar uma mensagem porque alguns campos estavam fora do intervalo especificado ou o tamanho da mensagem estava incorreto. O erro resulta em uma conexão TLS fechada. | 0 |
decrypt_error
|
Uma operação criptográfica de handshake (não da camada de registro) falhou, incluindo a incapacidade de verificar corretamente uma assinatura ou validar uma mensagem concluída ou um vinculador PSK. O erro resulta no fechamento da conexão TLS. | 0 |
insufficient_security
|
Uma negociação falhou especificamente porque o servidor exige parâmetros mais seguros do que aqueles aceitos pelo cliente. O erro resulta em uma conexão TLS fechada. | 0 |
inappropriate_fallback
|
Enviado por um servidor em resposta a uma tentativa inválida de nova tentativa de conexão de um cliente. O erro resulta no fechamento da conexão TLS. | 0 |
user_cancelled
|
O usuário cancela o handshake por algum motivo não relacionado a uma falha de protocolo. O erro resulta no fechamento da conexão TLS. | 0 |
missing_extension
|
Enviado por endpoints que recebem uma mensagem de handshake sem uma extensão obrigatória para a versão do TLS oferecida ou para outros parâmetros negociados. O erro resulta no fechamento da conexão TLS. | 0 |
unsupported_extension
|
Enviado por endpoints que recebem qualquer mensagem de handshake contendo uma extensão conhecida por ser proibida para inclusão na mensagem de handshake ou incluir qualquer extensão em ServerHello ou Certificate que não tenha sido oferecida primeiro no
ClientHello ou no CertificateRequest correspondente.
O erro resulta no fechamento da conexão TLS.
|
0 |
unrecognized_name
|
Enviado por servidores quando não há servidor que possa ser identificado pelo nome fornecido pelo cliente com a extensão "server_name". Consulte Definições de extensão TLS. | 0 |
bad_certificate_status_response
|
Enviada por clientes quando uma resposta OCSP inválida ou inaceitável é fornecida pelo servidor com a extensão "status_request". Consulte Definições de extensão TLS. O erro resulta no fechamento da conexão TLS. | 0 |
load_balancer_configured_resource_limits_reached
|
O balanceador de carga atingiu os limites de recursos configurados, como o número máximo de conexões. | 400, 500, 503 |
Entradas de registro de conexão TLS com falha
Quando a conexão TLS entre o cliente e o balanceador de carga falha antes
da seleção de qualquer back-end, as entradas de registro registram os erros. É possível configurar os
serviços de back-end com diferentes taxas de amostragem de registros. Quando uma conexão TLS falha,
a taxa de amostragem do registro de conexão TLS com falha é a taxa de amostragem mais alta para qualquer
serviço de back-end. Por exemplo, se você configurou dois serviços de back-end com
a taxa de amostragem de geração de registros como 0.3
e 0.5
, a taxa de amostragem do registro de conexão TLS com falha
será 0.5
.
Verifique os detalhes da entrada de registro a seguir para identificar as conexões TLS com falha:
- O tipo de erro proxyStatus é
tls_alert_received
,tls_certificate_error
,tls_protocol_error
ouconnection_terminated
. - Não há informações de back-end.
O exemplo a seguir mostra uma entrada de registro TLS com falha com o
campo proxyStatus error
:
json_payload: { @type: "type.googleapis.com/google.cloud.loadbalancing.type.LoadBalancerLogEntry" proxyStatus: "error="tls_alert_received"; details="server_to_client: handshake_failure"" log_name: "projects/529254013417/logs/mockservice.googleapis.com%20name" } http_request { latency { nanos: 12412000 } protocol: "HTTP/1.0" remote_ip: "127.0.0.2" } resource { type: "mock_internal_http_lb_rule" labels { backend_name: "" backend_scope: "" backend_scope_type: "UNKNOWN" backend_target_name: "" backend_target_type: "UNKNOWN" backend_type: "UNKNOWN" forwarding_rule_name: "l7-ilb-https-forwarding-rule-dev" matched_url_path_rule: "UNKNOWN" network_name: "lb-network" region: "REGION" target_proxy_name: "l7-ilb-https-proxy-dev" url_map_name: "" } } timestamp: "2023-08-15T16:49:30.850785Z"
Rótulos de recursos
A tabela a seguir lista os identificadores para o tipo de recurso
l4_proxy_rule
.
Campo | Tipo | Descrição |
---|---|---|
network_name | string | O nome da rede VPC do balanceador de carga. |
project_id | string | O identificador do projeto do Google Cloud associado a esse recurso. |
region | string | A região em que o balanceador de carga está definido. |
target_proxy_name | string | O nome do objeto do proxy de destino referenciado pela regra de encaminhamento. |
forwarding_rule_name | string | O nome do objeto da regra de encaminhamento. |
loadbalancing_scheme_name | string | Um atributo na regra de encaminhamento e no serviço de back-end de um balanceador de carga que indica se ele pode ser usado para tráfego interno ou externo. |
backend_target_name | string | O nome do back-end selecionado para processar a solicitação. |
backend_target_type | string | O tipo de (BACKEND_SERVICE / UNKNOWN) de destino de back-end. |
backend_name | string | O nome do grupo de instâncias de back-end ou grupo de endpoints de rede (NEG). |
backend_type | string | O tipo de back-end, um grupo de instâncias, um NEG ou desconhecido. O Cloud Logging registra solicitações quando o backend_type é |
backend_scope | string | O escopo do back-end (um nome de zona ou de região). Poderá ser
UNKNOWN sempre que backend_name for desconhecido. |
backend_scope_type | string | O escopo do back-end (REGION/ZONE ).
Poderá ser UNKNOWN sempre que backend_name for
desconhecido. |
Monitoramento
Os balanceadores de carga de rede de proxy exportam dados de monitoramento para o Cloud Monitoring.
As métricas de monitoramento podem ser usadas para fazer o seguinte:
- avaliar a configuração, o uso e o desempenho de um balanceador de carga;
- resolver problemas;
- melhorar a utilização de recursos e a experiência do usuário.
Além dos painéis predefinidos no Monitoring, é possível criar painéis personalizados, configurar alertas e consultar as métricas usando a API Cloud Monitoring.
Ver painéis do Monitoring
No Console do Google Cloud, acesse a página Monitoring.
Se a opção Recursos aparecer no painel de navegação, clique nela e depois selecione Balanceadores de carga do Google Cloud. Outra opção é clicar em Painéis e selecionar o painel Balanceadores de carga do Google Cloud.
Clique no nome do balanceador de carga.
No painel esquerdo, há vários detalhes do balanceador de carga. No painel à direita, há gráficos de séries temporais. Para ver detalhes específicos, clique em Detalhamento.
Frequência e retenção de relatórios de métricas
As métricas dos balanceadores de carga são exportadas para o Monitoring em lotes de granularidade de um minuto. Os dados de monitoramento são retidos por seis semanas. As métricas são baseadas no tráfego de amostragem (a taxa de amostragem é dinâmica e não pode ser ajustada).
O painel fornece análise de dados em intervalos padrão de 1H (uma hora), 6H (seis horas), 1D (um dia), 1W (uma semana) e 6W (seis semanas). É possível solicitar a análise manualmente em qualquer intervalo, de seis semanas a um minuto.
Métricas para balanceadores de carga de rede de proxy clássico
As métricas a seguir para balanceadores de carga de rede de proxy clássico são informadas no Monitoring.
Métrica | Nome | Descrição |
---|---|---|
Tráfego de entrada | tcp_ssl_proxy/ingress_bytes_count |
O número de bytes enviados de endpoints externos para back-ends configurados pelo Google Front End (GFE), em bytes por segundo. |
Tráfego de saída | tcp_ssl_proxy/egress_bytes_count |
O número de bytes enviados de back-ends configurados para endpoints externos por meio do GFE, em bytes por segundo. |
Conexões abertas | tcp_ssl_proxy/open_connections |
O número de conexões abre em um determinado momento. As amostras são extraídas com um minuto de diferença. |
Novas conexões por segundo | tcp_ssl_proxy/new_connections |
O número de conexões que foram criadas (cliente conectado com sucesso ao back-end). A contagem tem granularidade por minuto, mas os gráficos são ajustados para mostrar valores por segundo. Para obter mais informações, consulte a documentação do Monitoring. |
Conexões encerradas por segundo | tcp_ssl_proxy/closed_connections |
O número de conexões que foram encerradas. A contagem tem granularidade por minuto, mas os gráficos são ajustados para mostrar valores por segundo. Para obter mais informações, consulte a documentação do Monitoring. |
RTT do front-end | tcp_ssl_proxy/frontend_tcp_rtt |
Uma distribuição do tempo de retorno suavizado (RTT, na sigla em inglês) medida para cada conexão entre o cliente e o GFE (medida pela pilha TCP do GFE) sempre que os bytes da camada do aplicativo são transmitidos do GFE para o cliente. O RTT suavizado é um algoritmo que lida com variações e anomalias que podem ocorrer em medições de RTT. |
Métricas para outros balanceadores de carga
As métricas a seguir para balanceadores de carga de rede de proxy interno regional, balanceadores de carga de rede de proxy externo regional, balanceador de carga de rede de proxy interno entre regiões e balanceadores de carga de rede de proxy externo global são informadas no Monitoring.
Métrica | Nome | Descrição |
---|---|---|
Tráfego de entrada | l4_proxy/ingress_bytes_count |
O número de bytes enviados do cliente para a VM de back-end usando o proxy. Amostras coletadas a cada 60 segundos. Após a amostragem, os dados não são visíveis por até 210 segundos. |
Tráfego de saída | l4_proxy/egress_bytes_count |
O número de bytes enviados da VM de back-end para o cliente usando o proxy. Amostras coletadas a cada 60 segundos. Após a amostragem, os dados não são visíveis por até 210 segundos. |
Conexões encerradas por segundo | l4_proxy/tcp/closed_connections_count |
O número de conexões que foram encerradas usando uma mensagem TCP RST ou TCP FIN. Amostras coletadas a cada 60 segundos. Após a amostragem, os dados não são visíveis por até 210 segundos. |
Como filtrar dimensões para métricas
As métricas são agregadas para cada balanceador de carga. As métricas podem ser detalhadas nas seguintes dimensões.
Propriedade | Descrição |
---|---|
ESCOPO DO BACK-END | O escopo, região ou zona, do grupo de instâncias que serviu a conexão. |
ZONA DO BACK-END | A zona do grupo de instâncias que serviu a conexão, em caso de grupo do tipo zonal. |
REGIÃO DO BACK-END | A região do grupo de instâncias que serviu a conexão, em caso de grupo do tipo regional. |
CONTINENTE DO PROXY | O continente do GFE que encerrou a conexão TCP/SSL
do usuário, por exemplo, America ,
Europe , Asia .
|
GRUPO DE INSTÂNCIAS | O nome do grupo de instâncias que recebeu a conexão do usuário. |
REGRA DE ENCAMINHAMENTO | O nome da regra de encaminhamento usada para se conectar ao GFE. |
PAÍS DO CLIENTE | O nome do país do usuário. |
A seguir
- Para saber como as políticas de SSL funcionam, consulte a Visão geral das políticas de SSL.
- Para saber como os balanceadores de carga de rede de proxy externo funcionam, consulte esta página.
- Para saber como os balanceadores de carga de rede de proxy interno funcionam, consulte esta página.