Google Kubernetes Engine

Información general

Google Kubernetes Engine (GKE) es un potente gestor de clústeres y un sistema de orquestación para la ejecución de tus contenedores Docker.

Obtén métricas de Google Kubernetes Engine para:

  • Visualizar el rendimiento de tus contenedores GKE y del plano de control GKE.
  • Correlacionar el rendimiento de tus contenedores GKE con tus aplicaciones.

Esta integración viene con dos dashboards preconfigurados separados:

  • El dashboard estándar de GKE presenta métricas de GKE y del plano de control GKE recopiladas de la integración Google.
  • El dashboard mejorado de GKE presenta métricas de la integración Kubernetes basada en el Agent de Datadog junto con las métricas del plano de control GKE recopiladas de la integración Google.

El dashboard estándar ofrece observabilidad en GKE con una simple configuración. El dashboard mejorado requiere pasos de configuración adicionales, pero proporciona más métricas de Kubernetes en tiempo real y a menudo es un mejor punto de partida al clonar y personalizar un dashboard para la monitorización de cargas de trabajo en producción.

A diferencia de los clústeres Kubernetes autoalojados, el plano de control GKE es gestionado por Google y no es accesible por un Datadog Agent que se ejecuta en el clúster. Por lo tanto, la observabilidad en el plano de control GKE requiere la integración Google, incluso si utilizas principalmente el Datadog Agent para monitorizar tus clústeres.

Configuración

Recopilación de métricas

Instalación

  1. Si aún no lo has hecho, configura primero la integración de Google Cloud Platform. No es necesario realizar ningún otro paso de instalación para las métricas estándar y el dashboard predefinido.

  2. Para rellenar el dashboard mejorado y activar el rastreo APM, la generación de logs, los perfiles, la seguridad y otros servicios de Datadog, instala el Datadog Agent en tu clúster GKE.

  3. Para rellenar las métricas del plano de control, debes activar las métricas del plano de control GKE. Las métricas del plano de control te ofrecen una visibilidad del funcionamiento del plano de control Kubernetes, gestionado por Google en GKE.

Recopilación de logs

Los logs de Google Kubernetes Engine se recopilan con Google Cloud Logging y se envían a un trabajo de Dataflow a través de un tema Cloud Pub/Sub. Si aún no lo has hecho, configura la generación de logs con la plantilla Datadog Dataflow.

Una vez hecho esto, exporta tus logs de Google Kubernetes Engine desde Google Cloud Logging al tema Pub/Sub:

  1. Ve a la página del Explorador de logs GCP y filtra logs de Kubernetes y GKE.

  2. Haz clic en Create sink (Crear sumidero) y asigna al sumidero el nombre correspondiente.

  3. Elige “Cloud Pub/Sub” como destino y selecciona el tema Pub/Sub creado para tal fin. Nota: El tema Pub/Sub puede encontrarse en un proyecto diferente.

    Exportar logs de Google Cloud Pub/Sub a Pub Sub
  4. Haz clic en Create (Crear) y espera a que aparezca el mensaje de confirmación.

Datos recopilados

Métricas

gcp.gke.container.accelerator.duty_cycle
(gauge)
Porcentaje de tiempo durante el último periodo de muestreo durante el cual el acelerador estuvo procesando activamente.
Se muestra como porcentaje
gcp.gke.container.accelerator.memory_total
(gauge)
Memoria total del acelerador.
Se muestra en bytes
gcp.gke.container.accelerator.memory_used
(gauge)
Memoria total del acelerador asignada.
Se muestra en bytes
gcp.gke.container.accelerator.request
(gauge)
Número de dispositivos aceleradores solicitados por el contenedor.
Se muestra como dispositivo
gcp.gke.container.cpu.core_usage_time
(count)
Uso acumulado de CPU en todos los núcleos utilizados por el contenedor.
Se muestra en segundos
gcp.gke.container.cpu.limit_cores
(gauge)
Límite de núcleos de CPU del contenedor.
Se muestra como núcleo
gcp.gke.container.cpu.limit_utilization
(gauge)
Fracción del límite de CPU que está actualmente en uso en la instancia.
Se muestra como fracción
gcp.gke.container.cpu.request_cores
(gauge)
Número de núcleos de CPU solicitados por el contenedor.
Se muestra como núcleo
gcp.gke.container.cpu.request_utilization
(gauge)
Fracción de CPU solicitada que está actualmente en uso en la instancia.
Se muestra como fracción
gcp.gke.container.ephemeral_storage.limit_bytes
(gauge)
Límite de almacenamiento efímero local.
Se muestra en bytes
gcp.gke.container.ephemeral_storage.request_bytes
(gauge)
Solicitud de almacenamiento efímero local.
Se muestra en bytes
gcp.gke.container.ephemeral_storage.used_bytes
(gauge)
Uso de almacenamiento efímero local.
Se muestra en bytes
gcp.gke.container.memory.limit_bytes
(gauge)
Límite de memoria del contenedor.
Se muestra en bytes
gcp.gke.container.memory.limit_utlization
(gauge)
Fracción del límite de memoria que está actualmente en uso en la instancia.
Se muestra como fracción
gcp.gke.container.memory.page_fault_count
(count)
Número de fallos de página desglosados por tipo.
Se muestra como fallo
gcp.gke.container.memory.request_bytes
(gauge)
Solicitud de memoria del contenedor.
Se muestra en bytes
gcp.gke.container.memory.request_utilization
(gauge)
Fracción de la memoria solicitada que está actualmente en uso en la instancia.
Se muestra como fracción
gcp.gke.container.memory.used_bytes
(gauge)
Uso de memoria del contenedor.
Se muestra en bytes
gcp.gke.container.restart_count
(count)
Número de veces que se ha reiniciado el contenedor.
Se muestra como evento
gcp.gke.container.uptime
(gauge)
Tiempo en segundos que el contenedor ha estado funcionando.
Se muestra en segundos
gcp.gke.node.cpu.allocatable_cores
(gauge)
Número de núcleos de CPU asignables en el nodo.
Se muestra como núcleo
gcp.gke.node.cpu.allocatable_utilization
(gauge)
Fracción de la CPU asignable que está actualmente en uso en la instancia.
Se muestra como fracción
gcp.gke.node.cpu.core_usage_time
(count)
Uso acumulado de CPU en todos los núcleos utilizados en el nodo.
Se muestra en segundos
gcp.gke.node.cpu.total_cores
(gauge)
Número total de núcleos de CPU en el nodo.
Se muestra como núcleo
gcp.gke.node.ephemeral_storage.allocatable_bytes
(gauge)
Bytes de almacenamiento efímero local asignables en el nodo.
Se muestra en bytes
gcp.gke.node.ephemeral_storage.inodes_free
(gauge)
Número libre de inodos en el almacenamiento efímero local.
gcp.gke.node.ephemeral_storage.inodes_total
(gauge)
Número total de inodos en el almacenamiento efímero local.
gcp.gke.node.ephemeral_storage.total_bytes
(gauge)
Total de bytes de almacenamiento efímero en el nodo.
Se muestra en bytes
gcp.gke.node.ephemeral_storage.used_bytes
(gauge)
Bytes de almacenamiento efímero local utilizados por el nodo.
Se muestra en bytes
gcp.gke.node.memory.allocatable_bytes
(gauge)
Bytes de memoria acumulados utilizados por el nodo.
Se muestra en bytes
gcp.gke.node.memory.allocatable_utilization
(gauge)
Fracción de la memoria asignable que está actualmente en uso en la instancia.
Se muestra como fracción
gcp.gke.node.memory.total_bytes
(gauge)
Número de bytes de memoria asignables en el nodo.
Se muestra en bytes
gcp.gke.node.memory.used_bytes
(gauge)
Bytes de memoria acumulados utilizados por el nodo.
Se muestra en bytes
gcp.gke.node.network.received_bytes_count
(count)
Número acumulado de bytes recibidos por el nodo a través de la red.
Se muestra en bytes
gcp.gke.node.network.sent_bytes_count
(count)
Número acumulado de bytes transmitidos por el nodo a través de la red.
Se muestra en bytes
gcp.gke.node.pid_limit
(gauge)
PID máximo del SO en el nodo.
gcp.gke.node.pid_used
(gauge)
Número de procesos en ejecución en el SO del nodo.
gcp.gke.node_daemon.cpu.core_usage_time
(count)
Uso acumulativo de CPU en todos los núcleos utilizados por el daemon del sistema a nivel de nodo.
Se muestra en segundos
gcp.gke.node_daemon.memory.used_bytes
(gauge)
Uso de memoria por el daemon del sistema.
Se muestra en bytes
gcp.gke.pod.network.received_bytes_count
(count)
Número acumulado de bytes recibidos por el pod a través de la red.
Se muestra en bytes
gcp.gke.pod.network.sent_bytes_count
(count)
Número acumulado de bytes transmitidos por el pod a través de la red.
Se muestra en bytes
gcp.gke.pod.volume.total_bytes
(gauge)
Número total de bytes de disco disponibles para el pod.
Se muestra en bytes
gcp.gke.pod.volume.used_bytes
(gauge)
Número de bytes de disco utilizados por el pod.
Se muestra en bytes
gcp.gke.pod.volume.utilization
(gauge)
Fracción del volumen que está siendo utilizado actualmente por la instancia.
Se muestra como fracción
gcp.gke.control_plane.apiserver.admission_controller_admission_duration_seconds
(gauge)
Histograma de latencia del controlador de admisión en segundos, identificado por nombre y desglosado para cada operación, y recurso de API y tipo (validar o admitir).
Se muestra en segundos
gcp.gke.control_plane.apiserver.admission_step_admission_duration_seconds
(gauge)
Histograma de latencia del subpaso de admisión en segundos, desglosado para cada operación, y recurso y tipo de paso (validar o admitir).
Se muestra en segundos
gcp.gke.control_plane.apiserver.admission_webhook_admission_duration_seconds
(gauge)
Histograma de latencia del webhook de admisión en segundos, identificado por nombre y desglosado para cada operación, y recurso y tipo de API (validar o admitir).
Se muestra en segundos
gcp.gke.control_plane.apiserver.current_inflight_requests
(gauge)
Número máximo de límite de solicitudes de entrada utilizadas actualmente por este servidor de API por tipo de solicitud.
Se muestra como solicitud
gcp.gke.control_plane.apiserver.request_duration_seconds
(gauge)
Distribución de la latencia de respuesta en segundos para cada verbo, valor de ejecución manual, grupo, versión, recurso, subrecurso, contexto y componente.
Se muestra en segundos
gcp.gke.control_plane.apiserver.request_total
(gauge)
Contador de solicitudes de servidor de API desglosadas por cada verbo, valor de ejecución manual, grupo, versión, recurso, contexto, componente y código de respuesta HTTP.
Se muestra como solicitud
gcp.gke.control_plane.apiserver.response_sizes
(gauge)
Distribución del tamaño de la respuesta en bytes para cada grupo, versión, verbo, recurso, subrecurso, contexto y componente.
Se muestra en bytes
gcp.gke.control_plane.apiserver.storage_objects
(gauge)
Número de objetos almacenados en el momento de la última comprobación dividida por tipo.
Se muestra como objeto
gcp.gke.control_plane.controller_manager.node_collector_evictions_number
(count)
Número de desalojos de nodo que se han producido desde que se inició la instancia actual de NodeController.
Se muestra como evento
gcp.gke.control_plane.scheduler.pending_pods
(gauge)
Número de pods pendientes, por tipo de cola.
Se muestra como evento
gcp.gke.control_plane.scheduler.pod_scheduling_duration_seconds
(gauge)
Latencia de extremo a extremo de un pod que se está programando
Se muestra en segundos
gcp.gke.control_plane.scheduler.preemption_attempts_total
(count)
Total de intentos de preempción en el clúster hasta ahora
Se muestra como intento
gcp.gke.control_plane.scheduler.preemption_victims
(gauge)
Número de víctimas de preempción seleccionadas
Se muestra como evento
gcp.gke.control_plane.scheduler.scheduling_attempt_duration_seconds
(gauge)
Latencia del intento de programación en segundos
Se muestra en segundos
gcp.gke.control_plane.scheduler.schedule_attempts_total
(gauge)
Número de intentos de programación de pods.
Se muestra como intento
gcp.gke.control_plane.apiserver.aggregator_unavailable_apiservice
(gauge)
(Obsoleto)
gcp.gke.control_plane.apiserver.audit_event_total
(gauge)
(Obsoleto) Número acumulado de eventos de auditoría generados y enviados al backend de auditoría
Se muestra como evento
gcp.gke.control_plane.apiserver.audit_level_total
(gauge)
(Obsoleto)
gcp.gke.control_plane.apiserver.audit_requests_rejected_total
(gauge)
(Obsoleto)
Se muestra como solicitud
gcp.gke.control_plane.apiserver.client_certificate_expiration_seconds
(gauge)
(Obsoleto)
Se muestra en segundos
gcp.gke.control_plane.apiserver.etcd_object_counts
(gauge)
(Obsoleto) Número de objetos almacenados divididos por tipo.
Se muestra como objeto
gcp.gke.control_plane.apiserver.etcd_request_duration_seconds
(gauge)
(Obsoleto)
Se muestra en segundos
gcp.gke.control_plane.apiserver.init_events_total
(gauge)
(Obsoleto)
Se muestra como evento
gcp.gke.control_plane.apiserver.longrunning_gauge
(gauge)
(Obsoleto) Indicador de todas las solicitudes de servidor de API activas de larga duración.
Se muestra como solicitud
gcp.gke.control_plane.apiserver.registered_watchers
(gauge)
(Obsoleto) Número de observadores registrados actualmente para un recurso determinado.
Se muestra como objeto
gcp.gke.control_plane.apiserver.workqueue_adds_total
(count)
(Obsoleto)
gcp.gke.control_plane.apiserver.workqueue_depth
(gauge)
(Obsoleto)
gcp.gke.control_plane.apiserver.workqueue_longest_running_processor_seconds
(gauge)
(Obsoleto) Número de segundos que ha estado funcionando el procesador de más larga duración.
Se muestra en segundos
gcp.gke.control_plane.apiserver.workqueue_queue_duration_seconds
(gauge)
(Obsoleto)
Se muestra en segundos
gcp.gke.control_plane.apiserver.workqueue_retries_total
(count)
(Obsoleto)
gcp.gke.control_plane.apiserver.workqueue_unfinished_work_seconds
(gauge)
(Obsoleto)
Se muestra en segundos
gcp.gke.control_plane.apiserver.workqueue_work_duration_seconds
(gauge)
(Obsoleto)
Se muestra en segundos
gcp.gke.control_plane.controller_manager.cloudprovider_gce_api_request_duration_seconds
(gauge)
(Obsoleto)
Se muestra en segundos
gcp.gke.control_plane.controller_manager.cronjob_controller_rate_limiter_use
(gauge)
(Obsoleto) Uso del limitador de frecuencia por el controlador de tareas cron
gcp.gke.control_plane.controller_manager.daemon_controller_rate_limiter_use
(gauge)
(Obsoleto) Uso del limitador de frecuencia por el controlador de daemons
gcp.gke.control_plane.controller_manager.deployment_controller_rate_limiter_use
(gauge)
(Obsoleto) Uso del limitador de frecuencia por el controlador de desarrollo
gcp.gke.control_plane.controller_manager.endpoint_controller_rate_limiter_use
(gauge)
(Obsoleto) Uso del limitador de frecuencia por el controlador de endpoints
gcp.gke.control_plane.controller_manager.gc_controller_rate_limiter_use
(gauge)
(Obsoleto) Uso del limitador de frecuencia por el controlador de recolección de basura
gcp.gke.control_plane.controller_manager.job_controller_rate_limiter_use
(gauge)
(Obsoleto) Uso del limitador de frecuencia por el controlador de tareas
gcp.gke.control_plane.controller_manager.leader_election_master_status
(gauge)
(Obsoleto)
gcp.gke.control_plane.controller_manager.namespace_controller_rate_limiter_use
(gauge)
(Obsoleto) Uso del limitador de frecuencia por el controlador de espacios de nombre
gcp.gke.control_plane.controller_manager.node_collector_evictions_number
(count)
(Obsoleto) Recuento de eventos de desalojo de nodos.
gcp.gke.control_plane.controller_manager.node_collector_unhealthy_nodes_in_zone
(gauge)
(Obsoleto) Número de nodos no saludables
gcp.gke.control_plane.controller_manager.node_collector_zone_health
(gauge)
(Obsoleto)
gcp.gke.control_plane.controller_manager.node_collector_zone_size
(gauge)
(Obsoleto)
gcp.gke.control_plane.controller_manager.node_ipam_controller_rate_limiter_use
(gauge)
(Obsoleto) Uso del limitador de frecuencia por el controlador de gestión de direcciones IP
gcp.gke.control_plane.controller_manager.node_lifecycle_controller_rate_limiter_use
(gauge)
(Obsoleto) Uso del limitador de frecuencia por el controlador de ciclos de vida
gcp.gke.control_plane.controller_manager.persistentvolume_protection_controller_rate_limiter_use
(gauge)
(Obsoleto) Uso del limitador de frecuencia por el controlador de protección de volúmenes persistentes
gcp.gke.control_plane.controller_manager.persistentvolumeclaim_protection_controller_rate_limiter_use
(gauge)
(Obsoleto) Uso del limitador de frecuencia por el controlador de protección de afirmaciones de volúmenes persistentes
gcp.gke.control_plane.controller_manager.replicaset_controller_rate_limiter_use
(gauge)
(Obsoleto) Uso del limitador de frecuencia por el controlador de ReplicaSet
gcp.gke.control_plane.controller_manager.replication_controller_rate_limiter_use
(gauge)
(Obsoleto) Uso del limitador de frecuencia por el controlador de replicación
gcp.gke.control_plane.controller_manager.route_controller_rate_limiter_use
(gauge)
(Obsoleto) Uso del limitador de frecuencia por el controlador de rutas
gcp.gke.control_plane.controller_manager.service_controller_rate_limiter_use
(gauge)
(Obsoleto) Uso del limitador de frecuencia por el controlador de servicios
gcp.gke.control_plane.controller_manager.serviceaccount_controller_rate_limiter_use
(gauge)
(Obsoleto) Uso del limitador de frecuencia por el controlador de cuentas de servicios
gcp.gke.control_plane.controller_manager.serviceaccount_tokens_controller_rate_limiter_use
(gauge)
(Obsoleto) Uso del limitador de frecuencia por el controlador de tokens de cuentas de servicios
gcp.gke.control_plane.controller_manager.workqueue_adds_total
(count)
(Obsoleto)
gcp.gke.control_plane.controller_manager.workqueue_depth
(gauge)
(Obsoleto)
gcp.gke.control_plane.controller_manager.workqueue_longest_running_processor_seconds
(gauge)
(Obsoleto) Número de segundos que ha estado funcionando el procesador de más larga duración.
Se muestra en segundos
gcp.gke.control_plane.controller_manager.workqueue_queue_duration_seconds
(gauge)
(Obsoleto)
Se muestra en segundos
gcp.gke.control_plane.controller_manager.workqueue_retries_total
(count)
(Obsoleto)
gcp.gke.control_plane.controller_manager.workqueue_unfinished_work_seconds
(gauge)
(Obsoleto)
Se muestra en segundos
gcp.gke.control_plane.controller_manager.workqueue_work_duration_seconds
(gauge)
(Obsoleto)
Se muestra en segundos
gcp.gke.control_plane.scheduler.binding_duration_seconds
(gauge)
(Obsoleto) Número de latencia en segundos.
Se muestra en segundos
gcp.gke.control_plane.scheduler.e2e_scheduling_duration_seconds
(gauge)
(Obsoleto) Latencia total de programación de extremo a extremo.
Se muestra en segundos
gcp.gke.control_plane.scheduler.framework_extension_point_duration_seconds
(gauge)
(Obsoleto)
Se muestra en segundos
gcp.gke.control_plane.scheduler.leader_election_master_status
(gauge)
(Obsoleto)
gcp.gke.control_plane.scheduler.scheduling_algorithm_duration_seconds
(gauge)
(Obsoleto) Latencia total del algoritmo de programación.
Se muestra en segundos
gcp.gke.control_plane.scheduler.scheduling_algorithm_preemption_evaluation_seconds
(gauge)
(Obsoleto)
Se muestra en segundos

Eventos

La integración Google Kubernetes Engine no incluye eventos.

Checks de servicio

La integración Google Kubernetes Engine no incluye checks de servicio.

Solucionar problemas

¿Necesitas ayuda? Ponte en contacto con el servicio de asistencia de Datadog.