Acceder a los registros de flujo

En esta página se describe cómo acceder a los registros de flujo mediante Cloud Logging.

Acceder a registros de flujo en el explorador de registros

VPC Flow Logs escribe los registros en el Google Cloud proyecto del reportero de registros. Puedes ver los registros de flujo en el explorador de registros. VPC Flow Logs usa los siguientes registros para recoger entradas de registro:

  • El registro compute.googleapis.com/vpc_flows recoge las entradas de registro de las subredes. Consulta este registro si has habilitado los registros de flujo de VPC mediante la API Compute Engine.
  • Para ver el resto de las configuraciones de Registros de flujo de VPC, consulta el networkmanagement.googleapis.com/vpc_flowsregistro. Este registro recoge entradas de registro de redes de nube privada virtual (VPC) (vista previa), subredes (vista previa), vinculaciones de VLAN de Cloud Interconnect y túneles de Cloud VPN.

Configurar IAM

Para configurar el control de acceso para el registro, consulta la guía de control de acceso para Logging.

Ver registros de flujo mediante filtros de recursos

Para ver los registros de flujo de un Google Cloud proyecto mediante filtros de recursos, consulta las secciones siguientes. También puedes ver estos registros mediante consultas del Explorador de registros, tal como se describe en Filtrar registros de flujo mediante consultas.

Ver los registros de flujo de todas las subredes (compute.googleapis.com/vpc_flows)

  1. En la Google Cloud consola, ve a la página Explorador de registros.

    Ir a Explorador de registros

  2. Haz clic en Todos los recursos.

  3. En la lista Seleccionar recurso, haz clic en Subred y, a continuación, en Aplicar.

  4. Haga clic en Todos los nombres de registro.

  5. En la lista Seleccionar nombres de registro, busca Compute Engine, haz clic en vpc_flows y, a continuación, en Aplicar.

Ver los registros de flujo de una subred específica (compute.googleapis.com/vpc_flows)

  1. En la Google Cloud consola, ve a la página Explorador de registros.

    Ir a Explorador de registros

  2. Haz clic en Todos los recursos.

  3. En la lista Seleccionar recurso, haz clic en Subred.

  4. En la lista ID de subred, selecciona la subred y, a continuación, haz clic en Aplicar.

  5. Haga clic en Todos los nombres de registro.

  6. En la lista Seleccionar nombres de registro, busca Compute Engine, haz clic en vpc_flows y, a continuación, en Aplicar.

Ver los registros de flujo de todos los recursos (networkmanagement.googleapis.com/vpc_flows)

  1. En la Google Cloud consola, ve a la página Explorador de registros.

    Ir a Explorador de registros

  2. Haz clic en Todos los recursos.

  3. En la lista Seleccionar recurso, haga clic en Configuración de registros de flujo de VPC y, a continuación, en Aplicar.

Ver los registros de flujo de una configuración específica (networkmanagement.googleapis.com/vpc_flows)

  1. En la Google Cloud consola, ve a la página Explorador de registros.

    Ir a Explorador de registros

  2. Haz clic en Todos los recursos.

  3. En la lista Seleccionar recurso, haz clic en Configuración de registros de flujo de VPC y selecciona la configuración que quieras ver.

  4. Haz clic en Aplicar.

Filtrar registros de flujo mediante consultas

  1. En la Google Cloud consola, ve a la página Explorador de registros.

    Ir a Explorador de registros

  2. Si no ves el campo del editor de consultas en el panel Consulta, haz clic en el interruptor Mostrar consulta.

  3. En el campo del editor de consultas, escribe una consulta:

    • Si has habilitado los registros de flujo de VPC de una subred mediante la API Compute Engine, para ver los registros de flujo, la consulta debe dirigirse a compute.googleapis.com. Por ejemplo, introduce la siguiente consulta y sustituye PROJECT_ID por el ID de tu proyecto y SUBNET_NAME por tu subred: Google Cloud

      resource.type="gce_subnetwork"
      logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows"
      resource.labels.subnetwork_name="SUBNET_NAME"
      
    • En el resto de las consultas, se debe especificar networkmanagement.googleapis.com. Por ejemplo, para ver los registros de flujo de un túnel de Cloud VPN de origen específico, introduce la siguiente consulta:

      resource.type="vpc_flow_logs_config"
      logName="projects/PROJECT_ID/logs/networkmanagement.googleapis.com%2Fvpc_flows"
      jsonPayload.reporter="src_gateway"
      labels.target_resource_name="projects/PROJECT_ID/regions/REGION/vpnTunnels/NAME"
      

      Haz los cambios siguientes:

      • PROJECT_ID: el ID del proyecto Google Cloud
      • REGION: la región del túnel de Cloud VPN
      • NAME: el nombre del túnel de Cloud VPN

      Para ver más ejemplos de consultas que puedes ejecutar para ver tus registros de flujo, consulta Ejemplos de consultas del Explorador de registros para registros de flujo de VPCs.

  4. Haz clic en Realizar una consulta.

Ejemplos de consultas del explorador de registros para registros de flujo de VPC

En la siguiente tabla se muestran ejemplos de consultas del Explorador de registros que puede ejecutar para ver los registros de flujo de un Google Cloud proyecto.

En los ejemplos de la sección Consultas de networkmanagement.googleapis.com/vpc_flows se da por hecho que cada recurso se registra en una sola configuración de registros de flujo de VPC. Si usas varias configuraciones de registros de flujo de VPC por recurso, especifica la configuración que quieras consultar para excluir los registros duplicados de los resultados de la consulta. También puedes especificar varias configuraciones en una consulta.

Registros que quieras ver Consulta
Todos los registros de flujo
resource.type=("gce_subnetwork" OR "vpc_flow_logs_config")
logName=("projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows" OR
"projects/PROJECT_ID/logs/networkmanagement.googleapis.com%2Fvpc_flows")
Consultas del registro compute.googleapis.com/vpc_flows
Registros de todas las subredes
resource.type="gce_subnetwork"
logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows"
Registros de una subred específica
resource.type="gce_subnetwork"
logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows"
resource.labels.subnetwork_name="SUBNET_NAME"
Registros de una instancia de máquina virtual (VM) específica
resource.type="gce_subnetwork"
logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows"
(jsonPayload.src_instance.vm_name="VM_NAME" OR
jsonPayload.dest_instance.vm_name="VM_NAME")
Registros del tráfico a un intervalo de subredes específico
resource.type="gce_subnetwork"
logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows"
ip_in_net(jsonPayload.connection.dest_ip, SUBNET_RANGE)
Registros de un clúster de Google Kubernetes Engine (GKE) específico
resource.type="gce_subnetwork"
logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows"
(jsonPayload.src_gke_details.cluster.cluster_name="CLUSTER_NAME" OR
jsonPayload.dest_gke_details.cluster.cluster_name="CLUSTER_NAME")
Registros de solo tráfico de salida de una subred
resource.type="gce_subnetwork"
logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows" AND
jsonPayload.reporter="SRC" AND
jsonPayload.src_vpc.subnetwork_name="SUBNET_NAME" AND
(jsonPayload.dest_vpc.subnetwork_name!="SUBNET_NAME"
 OR NOT jsonPayload.dest_vpc.subnetwork_name:*)
Registros de todo el tráfico de salida de una red de nube privada virtual (VPC)
resource.type="gce_subnetwork"
logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows" AND
jsonPayload.reporter="SRC" AND
jsonPayload.src_vpc.vpc_name="VPC_NAME" AND
(jsonPayload.dest_vpc.vpc_name!="VPC_NAME" OR NOT jsonPayload.dest_vpc:*)
Registros de un puerto de destino concreto
resource.type="gce_subnetwork"
logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows"
jsonPayload.connection.dest_port=PORT
jsonPayload.connection.protocol=PROTOCOL
Registros de varios puertos de destino
resource.type="gce_subnetwork"
logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Fvpc_flows"
jsonPayload.connection.dest_port=(PORT1 OR PORT2)
jsonPayload.connection.protocol=PROTOCOL
Consultas del registro networkmanagement.googleapis.com/vpc_flows
Registros de todas las configuraciones de registros de flujo de VPC
resource.type="vpc_flow_logs_config"
logName="projects/PROJECT_ID/logs/networkmanagement.googleapis.com%2Fvpc_flows"
Registros de una configuración específica de registros de flujo de VPC
resource.type="vpc_flow_logs_config"
logName="projects/PROJECT_ID/logs/networkmanagement.googleapis.com%2Fvpc_flows"
resource.labels.name="CONFIG_NAME"
Registros de un túnel de Cloud VPN de origen específico
resource.type="vpc_flow_logs_config"
logName="projects/PROJECT_ID/logs/networkmanagement.googleapis.com%2Fvpc_flows"
jsonPayload.reporter="src_gateway"
labels.target_resource_name="projects/PROJECT_ID/regions/REGION/vpnTunnels/NAME"
Registros de todas las vinculaciones de VLAN de destino
resource.type="vpc_flow_logs_config"
logName="projects/PROJECT_ID/logs/networkmanagement.googleapis.com%2Fvpc_flows"
jsonPayload.reporter="dest_gateway"
jsonPayload.dest_gateway.type="INTERCONNECT_ATTACHMENT"
Registros de todas las vinculaciones de VLAN de destino de una región específica
resource.type="vpc_flow_logs_config"
logName="projects/PROJECT_ID/logs/networkmanagement.googleapis.com%2Fvpc_flows"
jsonPayload.reporter="dest_gateway"
jsonPayload.dest_gateway.type="INTERCONNECT_ATTACHMENT"
jsonPayload.dest_gateway.location="REGION"

Haz los cambios siguientes:

  • PROJECT_ID: el ID del proyecto
  • SUBNET_NAME: el nombre de la subred
  • VM_NAME: el nombre de la VM
  • SUBNET_RANGE: un intervalo CIDR, como 192.168.1.0/24
  • CLUSTER_NAME: el nombre del clúster de GKE
  • VPC_NAME: el nombre de la red de VPC
  • PORT1 y PORT2: los puertos de destino
  • PROTOCOL: el protocolo de comunicación
  • CONFIG_NAME: el nombre de la configuración de los registros de flujo de VPC
  • REGION: la región de la vinculación de VLAN o del túnel de Cloud VPN
  • NAME: el nombre del túnel de Cloud VPN

Enrutar registros a BigQuery, Pub/Sub y destinos personalizados

Puedes enrutar los registros de flujo de Logging a un destino de tu elección, tal como se describe en la descripción general del enrutamiento y el almacenamiento de la documentación de Logging. En la sección anterior se muestran algunos ejemplos de filtros.

Solución de problemas

No aparece ningún vpc_flows en Logging para el recurso gce_subnetwork

  • Confirma que el registro está habilitado en la subred indicada.
  • Los flujos de VPC solo se admiten en redes de VPC. Si tienes una red antigua, no verás ningún registro.
  • En las redes de VPC compartida, los registros solo aparecen en el proyecto host, no en los proyectos de servicio. Asegúrese de buscar los registros en el proyecto host.
  • Los filtros de exclusión de registros bloquean los registros especificados. Asegúrate de que no haya reglas de exclusión que descarten los registros de flujo de VPC:
    1. Ve a Enrutador de registros.
    2. En el menú Más acciones de tu segmento de registro, haz clic en Ver detalles del receptor.
    3. Asegúrate de que no haya reglas de exclusión que puedan descartar los registros de flujo de VPC.
  • Usa la CLI de Google Cloud o la API para determinar si una configuración de filtrado de registros está filtrando todo el tráfico de una subred determinada. Por ejemplo, si filterExpr está configurado como false, no verás ningún registro.

No hay valores de RTT ni de bytes en algunos de los registros

  • Es posible que falten mediciones de RTT si no se han muestreado suficientes paquetes para capturar el RTT. Es más probable que esto ocurra en conexiones de bajo volumen.
  • Los valores de RTT solo están disponibles para los flujos TCP registrados en máquinas virtuales.
  • Algunos paquetes se envían sin carga útil. Si se muestrearon paquetes que solo contenían encabezados, el valor de bytes será 0.

Faltan algunos flujos

  • Los paquetes de entrada se muestrean después de las reglas de cortafuegos de VPC de entrada. Asegúrate de que no haya ninguna regla de cortafuegos de entrada que deniegue los paquetes que quieres que se registren. Si no sabes si las reglas de cortafuegos de VPC están bloqueando los paquetes de entrada, puedes habilitar el almacenamiento de registros de reglas de cortafuegos e inspeccionar los registros.
  • Solo se admiten los protocolos TCP, UDP, ICMP, ESP y GRE. Registros de flujo de VPC no admite ningún otro protocolo.
  • Los registros se muestrean. Es posible que se pierdan algunos paquetes en flujos de volumen muy bajo.

Faltan anotaciones de GKE en algunos registros

Asegúrate de que tu clúster de GKE tenga una versión compatible.

Faltan registros de algunos flujos de GKE

Asegúrate de que la opción Visibilidad intranodo esté habilitada en el clúster. De lo contrario, no se registrarán los flujos entre los pods del mismo nodo.

Siguientes pasos