Neste documento, você verá as informações necessárias para entender o balanceamento de carga de rede no Cloud Monitoring.
O balanceamento de carga de rede exporta as métricas chave para o Monitoring.
É possível usar as métricas de monitoramento para:
- 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
É possível criar painéis personalizados, configurar alertas e consultar métricas por meio do Monitoring.
Como configurar o monitoramento e os alertas com o Console do Cloud
Consulte Tipos de métricas e recursos para ver uma lista das métricas coletadas. Consulte Filtros para ver listas de atributos que podem ser usados para filtrar os resultados.
Como definir painéis personalizados do Monitoring
É possível criar painéis personalizados do Monitoring com métricas de balanceamento de carga de rede.
- Acesse o Monitoring no Console do Google Cloud.
Acessar "Monitoramento" - Selecione Painéis > Criar painel.
- Clique em Adicionar gráfico.
- Dê um título ao gráfico.
- Selecione as métricas e os filtros.
É possível encontrar métricas de balanceamento de carga de rede pesquisando o prefixoloadbalancing.googleapis.com/l3/external
. - Clique em Save.
Como definir alertas do Monitoring
É possível definir os Alertas do Monitoring com várias métricas de balanceamento de carga de rede:
- Acesse o Monitoring no Console do Google Cloud.
Acessar "Monitoramento" - Selecione Alertas > Criar uma política.
- Selecione os tipos de recursos e métricas.
É possível encontrar os tipos de recursos e métricas de balanceamento de carga de rede pesquisandoloadbalancing.googleapis.com/l3/external
no campo Localizar tipo de recurso e métrica. - Especifique uma configuração para definir quando um alerta deve ser acionado.
- Adicione Filtros, se desejar.
- Clique em Salvar.
Frequência e retenção de relatórios de métricas
As métricas dos balanceadores de carga da rede são exportadas para o Monitoring em lotes de granularidade de 1 minuto. Os dados de monitoramento são armazenados por seis semanas. O painel analisa os 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 (6W) a 60 segundos (60s).
Tipos de métricas e recursos
Métrica
As seguintes métricas para balanceadores de carga da rede são relatadas para o Monitoring. É possível usar esses nomes de métrica ao criar solicitações de API.
metric_name | Tipo | Descrição |
---|---|---|
loadbalancing.googleapis.com/l3/external/ingress_bytes_count | Contador | O número de bytes enviados de um cliente para um back-end de balanceador de carga de rede. Nos fluxos TCP, somente os bytes no fluxo do aplicativo são contados. Amostras coletadas a cada 60 segundos. Após a amostragem, os dados não são visíveis por até 150 segundos. |
loadbalancing.googleapis.com/l3/external/ingress_packets_count | Contador | O número de pacotes enviados de um cliente para um back-end do balanceador de carga de rede. Amostras coletadas a cada 60 segundos. Após a amostragem, os dados não são visíveis por até 150 segundos. |
loadbalancing.googleapis.com/l3/external/egress_bytes_count | Contador | O número de bytes enviados de um back-end do balanceador de carga de rede para um cliente. Nos fluxos TCP, apenas bytes no fluxo do aplicativo são contados. Amostras coletadas a cada 60 segundos. Após a amostragem, os dados não são visíveis por até 150 segundos. |
loadbalancing.googleapis.com/l3/external/egress_packets_count | Contador | O número de pacotes enviados de um back-end do balanceador de carga de rede para um cliente. Amostras coletadas a cada 60 segundos. Após a amostragem, os dados não são visíveis por até 150 segundos. |
loadbalancing.googleapis.com/l3/external/rtt_latencies Disponível apenas para tráfego TCP. |
Distribuição | Uma distribuição de RTT medida em conexões TCP para fluxos do balanceador de carga de rede. Amostras coletadas a cada 60 segundos. Após a amostragem, os dados não são visíveis por até 150 segundos. |
Tipos de recurso
resource.type = tcp_lb_rule
ou udp_lb_rule
Um balanceador de carga de rede é compatível com tráfego TCP e UDP. É possível especificar o tipo de recurso para limitar os dados a balanceadores de carga TCP ou UDP.
Filters
Rótulos de recursos
É possível restringir a consulta por recurso. Também é possível agrupar os resultados por esses valores.
resource.label.<var>label_key</var>:
label_key | Tipo | Descrição |
---|---|---|
projeto | string | O identificador do projeto do Google Cloud associado a esse recurso, como "my-project". |
load_balancer_name | string | O nome do balanceador de carga. |
region | string | A região em que a instância de back-end do balanceador de carga está localizada: us-central1 , europe-west1 , asia-east1 |
network_name | string | A rede VPC na qual o back-end do balanceador de carga reside. |
backend_target_type | string | O tipo do destino do back-end que processou a conexão. O único valor é "target_pool". |
backend_target_name | string | O nome do pool de destino do balanceador de carga. |
forwarding_rule_name | string | O nome da regra de encaminhamento usada pelo cliente para se conectar ao balanceador de carga de rede. |
forwarding_rule_network_tier | string | O nível de rede da regra de encaminhamento. |
backend_name | string | O nome do back-end que processou a conexão. |
backend_type | string | O tipo de back-end que processou a conexão. |
backend_scope | string | O escopo (zona ou região) do grupo de back-end que processou a conexão. Este campo não é compatível com pools de destino. Para um balanceador de carga de rede, o campo sempre diria UNSUPPORTED_FOR_TARGET_POOL . |
backend_scope_type | string | O tipo do escopo do grupo de back-end que processou a conexão. Os valores válidos são "zone" e "region".
Este campo não é compatível com pools de destino. Para um balanceador de carga de rede, o campo sempre diria UNSUPPORTED_FOR_TARGET_POOL . |
backend_failover_configuration | string | O estado configurado do pool de destino que processou a conexão. |
backend_subnetwork_name | string | O nome da sub-rede da instância que recebeu a conexão. |
endpoint_zone | string | A zona da instância que processou a conexão. |
Rótulos de métrica
É possível restringir sua consulta por rótulo de métrica. Também é possível agrupar os resultados por esses valores.
metric.label.<var>label_key</var>:
label_key | Tipo | Descrição |
---|---|---|
client_country | string | País do cliente que iniciou a conexão com o balanceador de carga da rede. |
client_continent | string | Continente do cliente que iniciou a conexão com o balanceador de carga da rede. |
Solicitações da API Monitoring
É possível criar consultas arbitrárias sobre as métricas de balanceamento de carga de rede usando a solicitação projects.timeSeries.list v3 da API Monitoring. A estrutura exata das várias definições segue a semântica dos filtros de monitoramento genéricos.
Exemplos de solicitações da API
- Receber todos os bytes enviados de todos os balanceadores de carga da rede no projeto, entre 12:00 e 12:02 UTC, em 01/07/2019, com agregados de 1 minuto:
Parâmetros timeSeries.list:
- name: projects/
PROJECT_ID
- Filter: resource.type = "tcp_lb_rule" E metric.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
- Receber a mediana da RTT de todos os balanceadores de carga de rede no projeto, entre 12:19 e 12:20 UTC, em 01/07/2019, divididos por país do cliente:
Parâmetros timeSeries.list:
- name: projects/
PROJECT_ID
- Filter: resource.type = "tcp_lb_rule" E metric.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
- Receber o total de bytes de um balanceador de carga de rede específico entre 12:19 e 12:20 UTC, em 01/07/2019, dividido por endpoint_zone e continente do cliente:
Parâmetros timeSeries.list:
- name: projects/
PROJECT_ID
- Filter: resource.type = "tcp_lb_rule" E resource.label.load_balancer_name = "netlb-bs-1" E metric.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
A seguir
- Leia informações conceituais sobre o balanceamento de carga de rede
- Como configurar o balanceamento de carga de rede
- Leia sobre Métricas, séries temporais e recursos do Monitoring
- Leia sobre as regras de encaminhamento