Balanceo de cargas de red de Monitoring

En este documento, se proporciona la información que necesitas para comprender el balanceo de cargas de red de Cloud Monitoring.

El balanceo de cargas de red exporta las métricas clave a Monitoring.

Se pueden usar las métricas de Monitoring para los siguientes fines:

  • Evaluar la configuración, el uso y el rendimiento de un balanceador de cargas
  • Solucionar problemas
  • Mejorar el uso de recursos y la experiencia del usuario

Puedes crear paneles personalizados, configurar alertas y consultar métricas a través de Monitoring.

Configura la supervisión y las alertas con Cloud Console

Consulta Tipos de recursos y métricas para obtener una lista de las métricas recopiladas. Si deseas ver las listas de atributos que puedes usar para filtrar resultados, consulta Filtros.

Define los paneles personalizados de Monitoring

Puedes crear paneles personalizados de Monitoring a través de las métricas de balanceo de cargas de red.

  1. En Google Cloud Console, ve a Monitoring.
    Ir a Monitoring
  2. Selecciona Paneles > Crear panel.
  3. Haz clic en Agregar gráfico.
  4. Ponle un título al gráfico.
  5. Selecciona métricas y filtros.
    Para encontrar las métricas de balanceo de cargas de red, busca el prefijo loadbalancing.googleapis.com/l3/external.
  6. Haga clic en Save.

Define alertas de Monitoring

Puedes definir alertas de Monitoring a través de varias métricas de balanceo de cargas de red:

  1. En Google Cloud Console, ve a Monitoring.
    Ir a Monitoring
  2. Selecciona Alertas > Crear una política.
  3. Selecciona los tipos de recursos y métricas.
    Para encontrar tipos de recursos y métricas de balanceo de cargas de red, busca loadbalancing.googleapis.com/l3/external en el campo Buscar tipo de recurso y métrica.
  4. Especifica una Configuración para establecer cuándo se debe activar una alerta.
  5. Si lo deseas, agrega Filtros.
  6. Haz clic en Guardar.

Frecuencia y retención de informes de métricas

Se exportan las métricas de los balanceadores de cargas de red a Monitoring en lotes con un nivel de detalle de 1 minuto. Los datos de Monitoring se conservan durante seis (6) semanas. El panel proporciona un análisis de datos en intervalos predeterminados de 1 hora (una hora), 6 horas (seis horas), 1 día (un día), 1 semana (una semana) y 6 semanas (seis semanas). Puedes solicitar el análisis de forma manual en cualquier intervalo de seis semanas (6 semanas) a sesenta segundos (60 segundos).

Tipos de recursos y métricas

Métricas

Las siguientes métricas para los balanceadores de cargas de red se informan a Monitoring. Puedes usar estos nombres de métricas cuando realices solicitudes a la API.

metric_name Tipo Descripción
loadbalancing.googleapis.com/l3/external/ingress_bytes_count contador La cantidad de bytes enviados de un cliente a un backend del balanceador de cargas de red. Para los flujos TCP, solo se cuentan los bytes presentes en la transmisión de la aplicación. Se tomaron muestras cada 60 segundos. Después del muestreo, los datos no se podrán ver durante un máximo de 150 segundos.
loadbalancing.googleapis.com/l3/external/ingress_packets_count contador La cantidad de paquetes enviados de un cliente a un backend del balanceador de cargas de red. Se tomaron muestras cada 60 segundos. Después del muestreo, los datos no se podrán ver durante un máximo de 150 segundos.
loadbalancing.googleapis.com/l3/external/egress_bytes_count contador La cantidad de bytes enviados de un backend del balanceador de cargas de red a un cliente. Para los flujos TCP, solo se cuentan los bytes presentes en la transmisión de la aplicación. Se tomaron muestras cada 60 segundos. Después del muestreo, los datos no se podrán ver durante un máximo de 150 segundos.
loadbalancing.googleapis.com/l3/external/egress_packets_count contador La cantidad de paquetes enviados desde un backend del balanceador de cargas de red a un cliente. Se tomaron muestras cada 60 segundos. Después del muestreo, los datos no se podrán ver durante un máximo de 150 segundos.
loadbalancing.googleapis.com/l3/external/rtt_latencies

Disponible solo para el tráfico TCP.
distribución Una distribución del RTT medida a través de conexiones TCP para los flujos del balanceador de cargas de red. Se tomaron muestras cada 60 segundos. Después del muestreo, los datos no se podrán ver durante un máximo de 150 segundos.

Tipos de recursos

resource.type = tcp_lb_rule o udp_lb_rule

Un balanceador de cargas de red puede admitir tráfico TCP o UDP. Puedes especificar el tipo de recurso para limitar los datos a balanceadores de cargas de TCP o UDP.

Filtros

Etiquetas de recursos

Puedes restringir tu búsqueda por recurso. También puedes agrupar los resultados según estos valores.

resource.label.<var>label_key</var>:
label_key Tipo Descripción
project string El identificador del proyecto de Google Cloud asociado a este recurso, como my-project.
load_balancer_name string El nombre del balanceador de cargas.
region string La región donde se encuentra la instancia de backend del balanceador de cargas: us-central1, europe-west1, asia-east1.
network_name string La red de VPC en la que reside el backend del balanceador de cargas.
backend_target_type string El tipo de destino de backend que controló la conexión. Los valores válidos son BACKEND_SERVICE y TARGET_POOL.
backend_target_name string El nombre del destino de backend configurado para este balanceador de cargas de red.
forwarding_rule_name string El nombre de la regla de reenvío que utiliza el cliente para conectarse al balanceador de cargas de red.
forwarding_rule_network_tier string El nivel de red de la regla de reenvío.
backend_name string El nombre del grupo de instancias de backend que controló la conexión. Disponible solo para balanceadores de cargas de red basados en servicios de backend.
backend_type string El tipo de backend que controló la conexión. Disponible solo para los balanceadores de cargas de red basados en servicios de backend. El único valor válido es INSTANCE_GROUP. Para un balanceador de cargas de red basado en grupos de destino, el campo se configura como UNSUPPORTED_FOR_TARGET_POOL.
backend_scope string El permiso del grupo de backend (nombre de la zona o región) que controló la conexión.
backend_scope_type string El tipo de permiso del grupo de backend que controló la conexión. Los valores válidos son ZONE y REGION.
backend_failover_configuration string Configuración de conmutación por error del grupo de backend que controló la conexión Los valores válidos son PRIMARY, BACKUP o UNKNOWN.
backend_subnetwork_name string El nombre de la subred de la instancia que recibió la conexión.
endpoint_zone string Zona del extremo (instancia de Compute Engine/GKE) que controló la conexión.

Etiquetas de métrica

Puedes restringir tu búsqueda por etiqueta de métrica. También puedes agrupar los resultados según estos valores.

metric.label.<var>label_key</var>:
label_key Tipo Descripción
client_country string País del cliente que inició la conexión con el balanceador de cargas de red.
client_continent string Continente del cliente que inició la conexión con el balanceador de cargas de red.

Solicitudes a la API de Monitoring

Puedes crear búsquedas arbitrarias a través de las métricas de balanceo de cargas de red con la solicitud v3 projects.timeSeries.list de la API de Monitoring. La estructura exacta de las diversas definiciones respeta la semántica genérica de los filtros de supervisión.

Ejemplos de solicitudes a la API

  1. Obtén todos los bytes enviados desde todos los balanceadores de cargas de red del proyecto, entre las 12:00 y las 12:02 p.m. UTC del 1 de julio de 2019, con agregados de 1 m:

Parámetros de timeSeries.list:

  • Nombre: projects/PROJECT_ID
  • Filtro: resource.type = “tcp_lb_rule” Y 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
  1. Obtén una medición de la mediana del RTT en todos los balanceadores de cargas de red del proyecto, entre las 12:19 y las 12:20 p.m. UTC del 1 de julio de 2019, que se desglosa por país del cliente:

Parámetros de timeSeries.list:

  • Nombre: projects/PROJECT_ID
  • Filtro: resource.type = “tcp_lb_rule” Y 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
  1. Obtén el total de bytes de un balanceador de cargas de red específico entre las 12:19 y 12:20 p.m. UTC del 1 de julio de 2019, que se desglosa por endpoint_zone y el continente del cliente:

Parámetros de timeSeries.list:

  • Nombre: projects/PROJECT_ID
  • Filtro: resource.type = “tcp_lb_rule” Y resource.label.load_balancer_name = ”netlb-bs-1” Y 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

¿Qué sigue?