Este documento mostra como configurar e usar o Cloud Logging e o Cloud Monitoring para equilibradores de carga de rede de encaminhamento externo.
Os balanceadores de carga de rede de encaminhamento externo baseados em serviços de back-end suportam o registo e a monitorização. No entanto, os balanceadores de carga de rede de encaminhamento externo baseados em conjunto de destino só suportam a monitorização.
Registo
Os registos fornecem informações úteis para resolver problemas e monitorizar o seu Network Load Balancer de encaminhamento externo baseado em serviços de back-end. Os registos são agregados por ligação e exportados quase em tempo real. Os registos são gerados para os fluxos de TCP, UDP, ESP, GRE, ICMP e ICMPv6 de cada instância com balanceamento de carga para o tráfego de entrada e saída. Para mais informações sobre os campos fornecidos na entrada do registo, consulte o artigo Campos de registo.
Não existem custos adicionais pela utilização de registos. Com base na forma como importa os registos, aplicam-se os preços padrão do Cloud Logging, do BigQuery ou do Pub/Sub. A ativação dos registos não afeta o desempenho do equilibrador de carga.
O registo oferece as seguintes vantagens:
Monitorização do tráfego do Network Load Balancer de passagem externo. O registo por ligação dá-lhe informações sobre como cada ligação é encaminhada para os back-ends de publicação.
Resolução de problemas de rede. Pode usar registos do balanceador de carga de rede de encaminhamento externo para resolução de problemas. Para mais informações, consulte o artigo Resolva problemas de equilibradores de carga de rede de encaminhamento externo.
Formato de registo de exemplo para um cliente externo para fluxos de VMs
O diagrama seguinte mostra o tráfego de entrada e de saída para um cliente externo (203.0.113.7), um Network Load Balancer de encaminhamento externo (198.51.100.99) e uma instância de back-end (10.240.0.2).
Os registos do balanceador de carga de rede de encaminhamento externo para ligações do cliente à instância de back-end são formatados da seguinte forma:
connection.clientIp
: 203.0.113.7connection.serverIp
: 198.51.100.99bytesSent
: 1256bytesReceived
: 4521
Amostragem e recolha de registos
Google Cloud faz a amostragem dos pacotes que saem e entram nas VMs de back-end do balanceador de carga. Esses pacotes de amostra são processados para gerar registos.
Nem todos os pacotes são amostrados. Google Cloud Amostra um subconjunto variável de pacotes consoante a quantidade de tráfego no anfitrião físico. A taxa de amostragem mais baixa possível é de um em cada 1024 pacotes. A taxa de amostragem é controlada dinamicamente por Google Cloud. Não pode ajustar a taxa de amostragem.
A amostragem de pacotes interage com as regras de firewall das seguintes formas:
- Os pacotes são amostrados antes de serem aplicadas as regras de firewall de saída.
- Os pacotes são amostrados após a aplicação das regras de firewall de entrada.
Após a amostragem de pacotes, Google Cloud processa os pacotes amostrados de acordo com o seguinte procedimento:
Agregação: os pacotes de amostras são agregados num intervalo de cinco segundos para produzir uma única entrada de fluxo.
Amostragem de registos configurável (secundária): este é um segundo processo de amostragem que faz a amostragem dos fluxos. Controla a fração das entradas de fluxo que são emitidas como entradas de registo de acordo com o parâmetro logConfig.sampleRate. Quando
logConfig.sampleRate
é1.0
(100%), significa que todos os pacotes de amostra são processados.Escrever no registo: as entradas de registo são escritas no Cloud Logging.
Campos opcionais
Os registos de registo contêm campos obrigatórios e campos opcionais. A secção Campos de registo indica que campos são opcionais e quais são obrigatórios. Todos os campos obrigatórios estão sempre incluídos. Pode personalizar os campos opcionais que mantém.
Se selecionar incluir todos os campos opcionais, todos os campos opcionais no formato de registo são incluídos nos registos de fluxo. Quando são adicionados novos campos opcionais ao formato de registo, os registos de fluxo incluem automaticamente os novos campos.
Se selecionar excluir tudo o que é opcional, omite todos os campos opcionais.
Se selecionar personalizado, pode especificar os campos opcionais que quer incluir pelo campo principal, como
serverInstance
, ou pelos respetivos nomes completos, comoserverInstance.vm
.
Quando são adicionados novos campos opcionais ao formato de registo, os registos não incluem estes campos, a menos que sejam um novo campo num campo principal que especificou para inclusão.
Se especificar um campo opcional personalizado através de campos principais, quando forem adicionados novos campos opcionais ao formato de registo nesse campo principal, os registos incluem automaticamente os novos campos. Por exemplo, se optar por incluir optionalFieldA
, é adicionado automaticamente um novo campo aos registos com o nome optionalFieldA.subField1
.
Para ver instruções sobre a personalização de campos opcionais, consulte o artigo Ative o registo num novo serviço de back-end.
Requisitos do endereço IP de origem do pacote de resposta
O registo recolhe amostras dos pacotes de resposta das VMs de back-end apenas se o endereço IP de origem desses pacotes corresponder ao endereço IP da regra de encaminhamento do balanceador de carga. Para ligações TCP, os pacotes de resposta têm sempre de ter origens que correspondam ao destino do pacote de pedido. No entanto, para outros protocolos, é possível que os pacotes de resposta usem um endereço IP de origem diferente. Para mais informações, consulte o artigo Endereços IP para pacotes de pedidos e de retorno.
O processo de amostragem de pacotes usado pelo registo do Network Load Balancer de passagem externa omite todos os pacotes de resposta de VMs de back-end se esses pacotes de resposta tiverem origens que não correspondam a um endereço IP de uma regra de encaminhamento para um Network Load Balancer de passagem externa.
Ative o registo num novo serviço de back-end
Consola
Na Google Cloud consola, aceda à página Equilíbrio de carga.
- Clique no nome do balanceador de carga.
- Clique em Editar e, de seguida, clique em Configuração de back-end.
- Selecione Criar um serviço de back-end e, de seguida, preencha os campos obrigatórios do serviço de back-end.
- Na secção Registo, selecione a caixa de verificação Ativar registo.
- Defina uma fração da Taxa de amostragem. Pode definir uma tarifa para
0.0
através de1.0
(predefinição). - Opcional: para incluir todos os campos opcionais nos registos, na secção Campos opcionais, clique em Incluir todos os campos opcionais.
- Para terminar a edição do serviço de back-end, clique em Atualizar.
- Para terminar a edição do equilibrador de carga, clique em Atualizar.
gcloud
Crie o serviço de back-end para ativar o registo com o comando
gcloud compute backend-services create
.
gcloud compute backend-services create BACKEND_SERVICE \ --region=REGION \ --enable-logging \ --logging-sample-rate=SAMPLE_RATE \ --logging-optional=LOGGING_OPTIONAL \ --logging-optional-fields=OPTIONAL_FIELDS
Substitua o seguinte:
BACKEND_SERVICE
: o nome do serviço de back-end.REGION
: a região do serviço de back-end a criar.SAMPLE_RATE
: este campo só pode ser especificado se o registo estiver ativado para este serviço de back-end.
O valor do campo tem de ser de
0.0 to 1.0
, onde0.0
significa que não são gerados registos e1.0
significa que são gerados registos para todos os pacotes de amostra. A ativação do registo, mas a definição da taxa de amostragem para0.0
, é equivalente à desativação do registo. O valor predefinido é1.0
.LOGGING_OPTIONAL
: os campos opcionais que quer incluir nos registos:INCLUDE_ALL_OPTIONAL
para incluir todos os campos opcionais.EXCLUDE_ALL_OPTIONAL
(predefinição) para excluir todos os campos opcionais.CUSTOM
para incluir uma lista personalizada de campos opcionais que especifica emOPTIONAL_FIELDS
.
OPTIONAL_FIELDS
: uma lista separada por vírgulas de campos opcionais que quer incluir nos registos.Por exemplo,
serverInstance.vm,serverGkeDetails
. Só pode ser definido seLOGGING_OPTIONAL
estiver definido comoCUSTOM
.
API
Faça um pedido POST
ao método
regionBackendServices.insert
.
POST https://compute.googleapis.com/compute/v1/projects/`PROJECT_ID`/regions/`REGION`/backendServices
Exclua todos os campos opcionais
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
Inclua todos os campos opcionais
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE, "optionalMode": "INCLUDE_ALL_OPTIONAL" } }
Inclua uma lista personalizada de campos opcionais
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE, "optionalMode": "CUSTOM", "optionalFields": ["field1","field2",...] } }
Ative o registo num serviço de back-end existente
Consola
Na Google Cloud consola, aceda à página Equilíbrio de carga.
- Clique no nome do balanceador de carga.
- Clique em Editar e, de seguida, clique em Configuração de back-end.
- Junto ao seu serviço de back-end, clique em Editar.
- Na secção Registo, selecione a caixa de verificação Ativar registo.
- Defina uma fração da Taxa de amostragem. Pode definir uma tarifa para
0.0
através de1.0
(predefinição). - Opcional: para incluir todos os campos opcionais nos registos, na secção Campos opcionais, clique em Incluir todos os campos opcionais.
- Para terminar a edição do serviço de back-end, clique em Atualizar.
- Para terminar a edição do equilibrador de carga, clique em Atualizar.
gcloud
Ative o registo num serviço de back-end existente com o comando
gcloud compute backend-services update
.
gcloud compute backend-services update BACKEND_SERVICE \ --region=REGION \ --enable-logging \ --logging-sample-rate=SAMPLE_RATE \ --logging-optional=LOGGING_OPTIONAL \ --logging-optional-fields=OPTIONAL_FIELDS
Substitua o seguinte:
BACKEND_SERVICE
: o nome do serviço de back-end.REGION
: a região do serviço de back-end a criar.SAMPLE_RATE
: este campo só pode ser especificado se o registo estiver ativado para este serviço de back-end.
O valor do campo tem de estar entre
0.0 to 1.0
, em que0.0
significa que não são comunicados registos e1.0
significa que são gerados registos para todos os pacotes amostrados. A ativação do registo, mas a definição da taxa de amostragem para0.0
, é equivalente à desativação do registo. O valor predefinido é1.0
.LOGGING_OPTIONAL
: os campos opcionais que quer incluir nos registos:INCLUDE_ALL_OPTIONAL
para incluir todos os campos opcionais.EXCLUDE_ALL_OPTIONAL
(predefinição) para excluir todos os campos opcionais.CUSTOM
para incluir uma lista personalizada de campos opcionais que especifica emOPTIONAL_FIELDS
.
OPTIONAL_FIELDS
: uma lista separada por vírgulas de campos opcionais que quer incluir nos registos.Por exemplo,
serverInstance.vm,serverGkeDetails
. Só pode ser definido seLOGGING_OPTIONAL
estiver definido comoCUSTOM
.
API
Faça um pedido PATCH
ao método
regionBackendServices/patch
.
PATCH https://compute.googleapis.com/compute/v1/projects/`PROJECT_ID`/regions/`REGION`/backendServices/`BACKEND_SERVICE`
Exclua todos os campos opcionais
"logConfig": { "enable": true, "sampleRate": SAMPLE_RATE, "optionalMode": "EXCLUDE_ALL_OPTIONAL" }
Inclua todos os campos opcionais
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE, "optionalMode": "INCLUDE_ALL_OPTIONAL" } }
Inclua uma lista personalizada de campos opcionais
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE, "optionalMode": "CUSTOM", "optionalFields": ["field1","field2",...] } }
Desative o registo num serviço de back-end existente
Consola
Na Google Cloud consola, aceda à página Equilíbrio de carga.
Clique no nome do balanceador de carga.
Clique em
Editar e, de seguida, em Configuração de back-end.Para desativar completamente o registo, na secção Registo, desmarque a caixa de verificação Ativar registo.
Se deixar o registo ativado, pode definir uma fração de taxa de amostragem diferente. Pode definir a taxa para
0.0
através de1.0
(predefinição). Para gerar apenas registos para 20% dos pacotes de amostra, defina o valor como0.2
.Para terminar a edição do serviço de back-end, clique em Atualizar.
Para terminar a edição do equilibrador de carga, clique em Atualizar.
gcloud
Desative o registo no serviço de back-end com o comando gcloud compute backend-services update
.
gcloud compute backend-services update BACKEND_SERVICE \ --region=REGION \ --no-enable-logging
Substitua o seguinte:
BACKEND_SERVICE
: o nome do serviço de back-end.REGION
: a região do serviço de back-end.
API
Faça um pedido PATCH
ao método
regionBackendServices/patch
.
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID
/regions/REGION
/backendServices/BACKEND_SERVICE
{ "logConfig": { "enable": false } }
Ver registos
Quando os registos são carregados para o Cloud Logging e não são excluídos através de um destino do Router de registos, pode ler os registos através da API Cloud Logging e da CLI Google Cloud.
Para ver todos os registos do balanceador de carga de rede de encaminhamento externo:
Consola
Na Google Cloud consola, aceda à página Explorador de registos.
Selecione o tipo de recurso Regra do balanceador de carga de rede de encaminhamento externo.
Selecione o nome do registo loadbalancing.googleapis.com/flows.
Consulta da consola
Na Google Cloud consola, aceda à página Explorador de registos.
Clique no botão Mostrar consulta.
Cole o seguinte no campo de consulta. Substitua
PROJECT_ID
pelo ID do seu projeto.resource.type="loadbalancing.googleapis.com/ExternalNetworkLoadBalancerRule" logName="projects/PROJECT_ID/logs/loadbalancing.googleapis.com%2Fflows"
Clique em Executar consulta.
Veja registos de um serviço de back-end específico
Para ver os registos do Network Load Balancer de passagem externo de um serviço de back-end específico:
Consulta da consola
Na Google Cloud consola, aceda à página Explorador de registos.
Clique no botão Mostrar consulta.
Cole o seguinte no campo de consulta. Substitua
PROJECT_ID
pelo ID do projeto eBACKEND_SERVICE_NAME
pelo nome do serviço de back-end.resource.type="loadbalancing.googleapis.com/ExternalNetworkLoadBalancerRule" logName="projects/PROJECT_ID/logs/loadbalancing.googleapis.com%2Fflows" resource.labels.backend_service_name="BACKEND_SERVICE_NAME"
Clique em Executar consulta.
Veja os registos de um grupo de instâncias de back-end
Para ver os registos do Network Load Balancer de encaminhamento externo de um grupo de instâncias de back-end específico:
Consulta da consola
Na Google Cloud consola, aceda à página Explorador de registos.
Clique no botão Mostrar consulta.
Cole o seguinte no campo de consulta. Substitua
PROJECT_ID
pelo ID do projeto eBACKEND_GROUP_NAME
pelo nome do grupo de instâncias.resource.type="loadbalancing.googleapis.com/ExternalNetworkLoadBalancerRule" logName="projects/PROJECT_ID/logs/loadbalancing.googleapis.com%2Fflows" resource.labels.backend_group_name="BACKEND_GROUP_NAME"
Clique em Executar consulta.
Campos de registo
Os registos de registo contêm campos obrigatórios, que são os campos predefinidos de todos os registos de registo, e campos opcionais que adicionam informações adicionais. Os campos opcionais podem ser omitidos para poupar custos de armazenamento.
Alguns campos de registo estão num formato de vários campos, com mais do que um elemento de dados num determinado campo. Por exemplo, o campo connection
está no formato IpConnection
, que contém o endereço IP e a porta de origem e destino, além do protocolo, num único campo. Estes campos de vários campos estão descritos na tabela de formato de registo seguinte.
O recurso monitorizado é loadbalancing.googleapis.com/ExternalNetworkLoadBalancerRule.
Campo | Formato do campo | Tipo de campo: obrigatório ou opcional | Descrição |
---|---|---|---|
ligação | IpConnection | Obrigatória | 5-Tuple que descreve esta ligação. |
startTime | de string | Obrigatória | Data/hora (formato de string de data RFC 3339) do primeiro pacote observado durante o intervalo de tempo agregado. |
endTime | de string | Obrigatória | Data/hora (formato de string de data RFC 3339) do último pacote observado durante o intervalo de tempo agregado. |
bytesSent | int64 | Obrigatória | Número de bytes enviados do servidor para o cliente. |
bytesReceived | int64 | Obrigatória | Número de bytes recebidos pelo servidor do cliente. |
packetsSent | int64 | Obrigatória | Número de pacotes enviados do servidor para o cliente. |
packetsReceived | int64 | Obrigatória | Número de pacotes recebidos pelo servidor do cliente. |
rtt | de string | Obrigatória | A latência é medida apenas para ligações TCP. A latência é a soma do tempo de resposta de rede (RTT) estimado, mais o tempo consumido no processamento do pacote no sistema operativo do cliente. Para pacotes amostrados, o RTT é calculado na perspetiva de um back-end com equilíbrio de carga através da medição das diferenças de tempo entre o back-end que envia um segmento TCP e o back-end que recebe uma confirmação TCP para o número de sequência do segmento enviado. A latência é formatada como uma string que começa com o número de segundos e termina com "s" para indicar segundos. Os nanossegundos são expressos como segundos fracionários.Por exemplo, a latência de 250 milissegundos é formatada como "0,250000000 s". |
serverInstance | InstanceDetails | Opcional | Os detalhes da instância de VM de back-end. |
clientLocation | GeographicDetails | Opcional | Os metadados de localização disponíveis do cliente. |
serverGkeDetails | GkeDetails | Opcional | Metadados do GKE para o back-end do servidor. Disponível apenas se o back-end for um ponto final do GKE. |
networkTier | NetworkTierDetails | Opcional | Nível de rede para ligações externas, preenchido apenas quando o cliente não está dentro de Google Cloud. |
Formato do campo IpConnection
Campo | Tipo | Descrição |
---|---|---|
clientIp | de string | Endereço IP do cliente |
clientPort | int32 | Porta do cliente. Definido apenas para ligações TCP e UDP. |
serverIp | de string | Endereço IP do servidor (IP da regra de encaminhamento) |
serverPort | int32 | Porta do servidor. Definido apenas para ligações TCP e UDP. |
protocol | int32 | Número do protocolo da IANA |
Formato do campo InstanceDetails
Campo | Tipo | Descrição |
---|---|---|
projectId | de string | ID do projeto que contém a VM |
vm | de string | Nome da instância da VM |
região | de string | Região da VM |
zona | de string | Zona da VM |
vmIp | de string | Endereço IPv4 interno principal da interface de rede que publicou a ligação |
Formato do campo GeographicDetails
Campo | Tipo | Descrição |
---|---|---|
continent | de string | Nome do continente |
regionCode | de string | Um código de região CLDR Unicode, como US ou
FR . Para a maioria dos países, estes códigos correspondem diretamente aos
códigos ISO-3166-2. |
subRegion | de string | Um ID de subdivisão CLDR Unicode, por exemplo, uma província ou um estado do país, como
USCA ou CAON . Estes códigos Unicode são derivados das subdivisões definidas pela
norma ISO-3166-2.
|
city | de string | Nome da cidade, por exemplo, Mountain View para
Mountain View, Califórnia. Não existe uma lista canónica de valores válidos para esta variável. Os nomes das cidades podem conter letras US-ASCII,
números, espaços e os seguintes carateres: !#$%&'*+-.^_`|~ . |
asn | int32 | O número do sistema autónomo (ASN) da rede externa à qual este ponto final pertence. |
Formato do campo GkeDetails
Campo | Tipo | Descrição |
---|---|---|
cluster | ClusterDetails | Metadados do cluster do GKE |
pod | PodDetails | Metadados do GKE Pod, preenchidos quando a origem ou o destino do tráfego é um Pod |
serviço | ServiceDetails | Metadados do serviço GKE, preenchidos apenas nos pontos finais do serviço. O registo contém até dois serviços. Se existirem mais de dois serviços relevantes, este campo contém um único serviço com um marcador especial MANY_SERVICES. |
Formato do campo ClusterDetails
Campo | Tipo | Descrição |
---|---|---|
cluster | de string | Nome do cluster do GKE |
clusterLocation | de string | Localização do cluster. A localização do cluster pode ser uma zona ou uma região. |
Formato do campo PodDetails
Campo | Tipo | Descrição |
---|---|---|
pod | de string | Nome do agrupamento |
podNamespace | de string | Espaço de nomes do agrupamento |
Formato do campo ServiceDetails
Campo | Tipo | Descrição |
---|---|---|
serviço | de string | Nome do serviço. Se existirem mais de dois serviços relevantes, o campo é definido como um marcador especial MANY_SERVICES. |
serviceNamespace | de string | Espaço de nomes do serviço |
Formato do campo NetworkTierDetails
Campo | Tipo | Descrição |
---|---|---|
networkTier | de string | NetworkTier usado na ligação, um de [PREMIUM, STANDARD, FIXED_STANDARD, UNKNOWN]. |
Monitorização
Os balanceadores de carga de rede de encaminhamento externo exportam métricas importantes para o Cloud Monitoring.
As métricas de monitorização podem ser usadas para os seguintes fins:
- Avalie a configuração, a utilização e o desempenho de um balanceador de carga
- Resolva problemas
- Melhore a utilização de recursos e a experiência do utilizador
Além dos painéis de controlo predefinidos na monitorização, pode criar painéis de controlo personalizados, configurar alertas e consultar as métricas através da API Monitoring.
Veja os painéis de controlo de monitorização
Consola
Na Google Cloud consola, aceda à página Monitorização.
No painel de navegação, selecione Painéis de controlo.
Selecione o painel de controlo Equilibradores de carga do Google Cloud. São apresentados todos os balanceadores de carga.
Selecione o nome do balanceador de carga na lista de balanceadores de carga.
No painel Detalhes do balanceador de carga de rede de encaminhamento externo, pode ver vários detalhes do balanceador de carga selecionado. Este painel apresenta as suas configurações atuais.
No painel Principais métricas, pode ver gráficos para cada métrica principal. Para ver discriminações específicas, clique em Discriminações. Este painel apresenta dados baseados em configurações do histórico, enquanto o painel Detalhes do equilibrador de carga de passagem externo apenas apresenta as configurações atuais. Para mais informações, consulte o artigo Painéis de controlo e gráficos.
Defina painéis de controlo personalizados de monitorização
Pode criar painéis de controlo de monitorização personalizados com base em métricas do Network Load Balancer de encaminhamento externo.
Consulte o artigo Métricas e tipos de recursos para ver uma lista das métricas recolhidas. Consulte a secção Filtros para ver listas de atributos que pode usar para filtrar os resultados.
Consola
Na Google Cloud consola, aceda à página Monitorização.
Selecione Painéis de controlo > Criar painel de controlo.
Clique em Adicionar gráfico.
Atribua um título ao gráfico.
Selecione métricas e filtros.
Para encontrar métricas do balanceador de carga de rede de encaminhamento externo, pesquise o prefixo
loadbalancing.googleapis.com/l3/external
.Clique em Guardar.
Defina alertas de monitorização
Pode definir alertas de monitorização em várias métricas de encaminhamento externo do balanceador de carga de rede:
Consola
Na Google Cloud consola, aceda à página Monitorização.
Selecione Alertas > Criar uma política.
Selecione tipos de recursos e métricas.
Para encontrar tipos de recursos e métricas do Network Load Balancer de encaminhamento externo, pesquise
loadbalancing.googleapis.com/l3/external
no campo Encontre o tipo de recurso e a métrica.Especifique uma configuração para definir quando um alerta deve ser acionado.
Adicione Filtros, se necessário.
Clique em Guardar.
Frequência e retenção dos relatórios de métricas
As métricas dos balanceadores de carga de rede de encaminhamento externo são exportadas para o Monitoring em lotes de granularidade de um minuto. Os dados de monitorização são retidos durante seis semanas. As métricas baseiam-se no tráfego de amostragem (a taxa de amostragem é dinâmica e não pode ser ajustada). O painel de controlo fornece a análise de dados em intervalos predefinidos de 1 hora (1H), 6 horas (6H), 1 dia (1D), 1 semana (1W) e 6 semanas (6W). Pode pedir manualmente a análise em qualquer intervalo de seis semanas a sessenta segundos.
Métricas e tipos de recursos
Esta secção descreve as métricas e os tipos de recursos para balanceadores de carga de rede de encaminhamento externo.
Métrica
As seguintes métricas para balanceadores de carga de rede de encaminhamento externo são comunicadas na monitorização. Pode usar estes nomes de métricas quando fizer pedidos à API.
metric_name | Tipo | Descrição |
---|---|---|
loadbalancing.googleapis.com/l3/external/ingress_bytes_count |
contrapropor | O número de bytes enviados de um cliente para um back-end de Network Load Balancer de passagem externo. Para fluxos TCP, apenas são contabilizados os bytes no fluxo da aplicação. |
loadbalancing.googleapis.com/l3/external/ingress_packets_count |
contrapropor | O número de pacotes enviados de um cliente para um back-end de balanceador de carga de passagem externo. |
loadbalancing.googleapis.com/l3/external/egress_bytes_count |
contrapropor | O número de bytes enviados de um back-end do Network Load Balancer de passagem externo para um cliente. Para fluxos TCP, apenas são contabilizados os bytes no fluxo da aplicação. |
loadbalancing.googleapis.com/l3/external/egress_packets_count |
contrapropor | O número de pacotes enviados de um back-end do Network Load Balancer de encaminhamento externo para um cliente. |
loadbalancing.googleapis.com/l3/external/rtt_latencies |
distribuição | Uma distribuição do RTT medido através de ligações TCP para fluxos do balanceador de carga de rede de encaminhamento externo. Disponível apenas para tráfego TCP. |
Tipos de recursos
Os balanceadores de carga de rede de encaminhamento externo usam os seguintes tipos de recursos:
tcp_lb_rule
udp_lb_rule
loadbalancing.googleapis.com/ExternalNetworkLoadBalancerRule
Um balanceador de carga de rede de encaminhamento externo pode suportar tráfego TCP, UDP, ESP, GRE, ICMP e ICMPv6.
Pode especificar o tipo de recurso como
tcp_lb_rule
ou
udp_lb_rule
para limitar
os dados monitorizados aos protocolos TCP ou UDP.
Pode especificar o tipo de recurso como
loadbalancing.googleapis.com/ExternalNetworkLoadBalancerRule
para monitorizar todos os protocolos suportados, incluindo os protocolos
TCP, UDP, ESP, GRE, ICMP e ICMPv6.
Filtros
As métricas são agregadas para cada balanceador de carga de rede de encaminhamento externo. Pode filtrar métricas agregadas pelas seguintes dimensões.
Etiquetas de recursos para tcp_lb_rule
ou udp_lb_rule
Pode restringir a consulta por recurso. Também pode agrupar os resultados por estes valores.
resource.label.<var>LABEL_KEY</var>:
label_key | Tipo | Descrição |
---|---|---|
project |
de string | O identificador do Google Cloud projeto associado a este recurso. |
load_balancer_name |
de string | O nome do balanceador de carga. |
region |
de string | A região
onde se encontra o back-end do balanceador de carga, por exemplo,
us-central1 , europe-west1 ,
asia-east1 . |
network_name |
de string | A rede VPC na qual reside o back-end do balanceador de carga. |
backend_target_type |
de string | Indica se o balanceador de carga de rede de passagem externo é baseado em pool de destino ou em serviço de back-end. Os valores válidos são BACKEND_SERVICE ou
TARGET_POOL . |
backend_target_name |
de string | Para balanceadores de carga de rede de encaminhamento externo baseados em grupos de destino, o nome do grupo de destino. Para balanceadores de carga de rede de encaminhamento externo baseados em serviços de back-end, o nome do serviço de back-end. |
forwarding_rule_name |
de string | O nome da regra de encaminhamento. |
forwarding_rule_network_tier |
de string | O nível da rede da regra de encaminhamento. |
backend_name |
de string | O nome do back-end que processou a associação. Para um balanceador de carga de rede de encaminhamento externo baseado num serviço de back-end, o valor é o nome do grupo de instâncias de back-end ou do grupo de pontos finais da rede (NEG) que processou a ligação. Para um Network Load Balancer de encaminhamento externo baseado em pool de destino, o valor é o nome do pool de destino. |
backend_type |
de string | O tipo de back-end que processou a ligação. Para um balanceador de carga de rede de encaminhamento externo baseado em serviços de back-end,
o valor pode ser Para um balanceador de carga de rede de encaminhamento externo baseado em pool alvo, o valor é |
backend_scope |
de string | Para um balanceador de carga de rede de encaminhamento externo baseado num serviço de back-end, a zona ou a região do grupo de instâncias de back-end ou do NEG. Para um equilibrador de carga de rede baseado em conjunto de destino, o valor é |
backend_scope_type |
de string | O tipo de âmbito do grupo de back-end que processou a ligação. Os valores válidos são Para um equilibrador de carga de rede baseado em conjunto de destino, o valor é
|
backend_failover_configuration |
de string | A configuração de comutação por falha do grupo de back-end que
processou a ligação. Os valores válidos são PRIMARY ,
BACKUP ou UNKNOWN . |
backend_subnetwork_name |
de string | O nome da sub-rede do back-end que recebeu a ligação. |
endpoint_zone |
de string | A zona da VM de back-end que processou a ligação. |
Etiquetas de recursos para loadbalancing.googleapis.com/ExternalNetworkLoadBalancerRule
Pode restringir a consulta por recurso. Também pode agrupar os resultados por estes valores.
resource.label.<var>LABEL_KEY</var>:
label_key | Tipo | Descrição |
---|---|---|
project |
de string | O identificador do Google Cloud projeto associado a este recurso. |
region |
de string | A região
onde se encontra o back-end do balanceador de carga, por exemplo,
us-central1 , europe-west1 ,
asia-east1 . |
backend_network_name |
de string | A rede VPC na qual reside o back-end do balanceador de carga. |
backend_target_type |
de string | O tipo de destino de back-end que processou a ligação. Os valores válidos
são BACKEND_SERVICE ou TARGET_POOL . |
backend_service_name |
de string | O nome do serviço de back-end que processou a ligação. Se o
backend_target_type for TARGET_POOL , o valor é
UNSUPPORTED_FOR_TARGET_POOL . |
primary_target_pool |
de string | O nome do conjunto de alvos principal. Se backend_target_type
for BACKEND_SERVICE , o valor é
UNSUPPORTED_FOR_BACKEND_SERVICE . |
target_pool |
de string | O nome do grupo de alvos. Se backend_target_type for
BACKEND_SERVICE , o valor é
UNSUPPORTED_FOR_BACKEND_SERVICE . |
forwarding_rule_name |
de string | O nome da regra de encaminhamento do balanceador de carga de rede de passagem externo. |
backend_group_name |
de string | O nome do grupo de back-end que processou a ligação.
Se backend_target_type for TARGET_POOL , o valor é UNSUPPORTED_FOR_TARGET_POOL . |
backend_group_type |
de string | O tipo de grupo de back-end que processou a ligação. Se o valor Se |
backend_group_scope |
de string | O âmbito do grupo de back-end (nome da zona ou região) que processou a ligação. Se backend_target_type for TARGET_POOL ,
o valor é UNSUPPORTED_FOR_TARGET_POOL . |
backend_subnetwork_name |
de string | O nome da sub-rede do back-end que recebeu a ligação. |
backend_zone |
de string | A zona da VM de back-end que processou a ligação. |
Etiquetas de métricas
Pode restringir a consulta pela etiqueta de métrica. Também pode agrupar os resultados por estes valores.
metric.label.<var>LABEL_KEY</var>:
label_key | Tipo | Descrição |
---|---|---|
client_country |
de string | O país do cliente que iniciou a ligação ao balanceador de carga de encaminhamento externo. |
client_continent |
de string | O continente do cliente que iniciou a ligação ao balanceador de carga de encaminhamento externo. |
protocol |
de string | O protocolo na ligação para o recurso Este campo fica em branco para os recursos
|
Monitorização de pedidos de API
Pode criar consultas arbitrárias sobre métricas de Network Load Balancer de encaminhamento externo usando o pedido projects.timeSeries.list da API Monitoring v3. A estrutura exata das várias definições segue a semântica genérica dos filtros de monitorização.
Exemplos de pedidos de API
Obtenha todos os bytes enviados de todos os equilibradores de carga de rede de encaminhamento externo no projeto durante as 12:00-12:02 UTC a 01-07-2019 com agregações de 1 m.
Parâmetros de timeSeries.list:
- name: projects/
PROJECT_ID
- Filtro:
resource.type = "tcp_lb_rule"
Emetric.name="loadbalancing.googleapis.com/l3/external/egress_bytes_count"
- interval.start_time:
2019-07-01T12:00:00Z
- interval.end_time:
2019-07-01T12:02:00Z
- aggregation.alignmentPeriod:
60s
- aggregation.crossSeriesReducer:
REDUCE_SUM
- aggregation.perSeriesAligner:
ALIGN_SUM
- name: projects/
Obtenha a medição do RTT mediano em todos os equilibradores de carga de encaminhamento externo no projeto durante o período de 12:19 a 12:20 UTC a 01/07/2019, discriminada por país do cliente.
Parâmetros de timeSeries.list:
- name: projects/
PROJECT_ID
- Filtro:
resource.type = "tcp_lb_rule"
Emetric.name="loadbalancing.googleapis.com/l3/external/rtt_latencies"
- interval.start_time:
2019-07-01T12:19:00Z
- interval.end_time:
2019-07-01T12:20:00Z
- aggregation.alignmentPeriod:
60s
- aggregation.crossSeriesReducer:
REDUCE_SUM
- aggregation.groupByFields:
metric.label.client_country
- aggregation.perSeriesAligner:
ALIGN_PERCENTILE_50
- name: projects/
Obtenha o total de bytes de um Network Load Balancer de encaminhamento específico externo durante o período de 01/07/2019 das 12:19 às 12:20 (UTC), discriminado por zona do ponto final e continente do cliente.
Parâmetros de timeSeries.list:
- name: projects/
PROJECT_ID
- Filtro:
resource.type = "tcp_lb_rule"
Eresource.label.load_balancer_name = "netlb-bs-1"
Emetric.name="loadbalancing.googleapis.com/l3/external/ingress_bytes_count"
- interval.start_time:
2019-07-01T12:19:00Z
- interval.end_time:
2017-07-01T12:20:00Z
- aggregation.alignmentPeriod:
60s
- aggregation.crossSeriesReducer:
REDUCE_SUM
- aggregation.groupByFields:
metric.label.client_continent
- aggregation.groupByFields:
resource.label.endpoint_zone
- aggregation.perSeriesAligner:
ALIGN_SUM
- name: projects/
O que se segue?
- Leia informações conceptuais sobre os balanceadores de carga de rede de encaminhamento direto externos
- Configure um Network Load Balancer de encaminhamento externo
- Leia acerca da monitorização de métricas, séries cronológicas e recursos
- Leia acerca das regras de encaminhamento
- Leia sobre a resolução de problemas de registo