Registro y supervisión

Google Distributed Cloud (solo software) para VMware incluye varias opciones de registro y supervisión de clústeres, incluidos los servicios administrados basados en la nube, las herramientas de código abierto y la compatibilidad validada con soluciones comerciales de terceros. En este documento, se explican estas opciones y se proporciona una orientación básica sobre cómo elegir la solución adecuada para tu entorno.

Opciones para Google Distributed Cloud

Tienes varias opciones de registro y supervisión para tu Google Distributed Cloud:

Cloud Logging y Cloud Monitoring

Google Cloud Observability (antes llamado Stackdriver) es la solución de observabilidad integrada paraGoogle Cloud. Ofrece una solución de registro completamente administrada, recopilación de métricas, supervisión, paneles y alertas. Cloud Monitoring supervisa los clústeres de Google Distributed Cloud de manera similar a como supervisa los clústeres de GKE basados en la nube.

Puedes configurar los agentes en el clúster para el alcance de la supervisión y el registro, así como el nivel de las métricas recopiladas:

  • El permiso de registro y supervisión se puede establecer solo en los componentes del sistema (predeterminado) o en componentes y aplicaciones del sistema.
  • El nivel de métricas recopiladas se puede configurar para un conjunto optimizado de métricas o métricas completas.

Consulta Configura agentes de registro y supervisión para Google Distributed Cloud en este documento para obtener más información.

Cloud Logging y Cloud Monitoring proporcionan una solución ideal para los clientes que buscan una única solución de observabilidad basada en la nube que sea potente y fácil de configurar. Recomendamos usar Logging y Monitoring cuando se ejecutan cargas de trabajo solo en Google Distributed Cloud, o en GKE y Google Distributed Cloud. En el caso de las aplicaciones con componentes en ejecución en Google Distributed Cloud y en la infraestructura local tradicional, puedes considerar otras soluciones para obtener una vista de extremo a extremo de esas aplicaciones.

Soluciones de terceros

Google trabajó con varios proveedores de soluciones de registro y supervisión de terceros para ayudar a que sus productos funcionen bien con Google Distributed Cloud. Entre estos, se incluyen Datadog, Elastic y Splunk. En el futuro, se agregarán más proveedores validados.

Para obtener más información sobre el uso de soluciones de terceros con Google Distributed Cloud, consulta los siguientes vínculos:

Cómo funcionan el registro y la supervisión de Google Distributed Cloud

Los agentes de Logging y Monitoring están instalados y activados en cada clúster cuando creas un nuevo administrador o clúster de usuario. Los agentes recopilan datos sobre los componentes del sistema, cuyo alcance puedes configurar.

Para ver los datos recopilados en la Google Cloud consola, debes configurar el proyecto Google Cloud que almacena los registros y las métricas que deseas ver.

Los agentes de Logging y Monitoring en cada clúster incluyen lo siguiente:

  • Agente de métricas de GKE (gke-metrics-agent). Un DaemonSet que envía métricas a la API de Cloud Monitoring.

  • Servidor de reenvío de registros (stackdriver-log-forwarder). Un DaemonSet de Fluent Bit que reenvía los registros de cada máquina a Cloud Logging. El servidor de reenvío de registros almacena en búfer las entradas de registro del nodo de forma local y las reenvía por hasta cuatro horas. Si el búfer se llena o si el servidor de reenvío de registros no puede llegar a la API de Cloud Logging durante más de cuatro horas, se descartan los registros.

  • Agente global de métricas de GKE (gke-metrics-agent-global). Una implementación que envía métricas a la API de Cloud Monitoring.

  • Recopilador de metadatos (stackdriver-metadata-agent): Es una implementación que envía metadatos de recursos de Kubernetes, como pods, implementaciones o nodos, a la API de metadatos de recursos de Stackdriver. Estos datos se usan para enriquecer las consultas de métricas, ya que te permite realizar consultas por nombre de implementación, de nodo o incluso de servicio de Kubernetes.

  • kube-state-metrics: es una implementación que escucha el servidor de la API y genera métricas sobre los estados de los objetos.

  • node-exporter: un DaemonSet que genera métricas de hardware y SO.

Puedes ver todos los agentes de Deployment si ejecutas el siguiente comando:

  kubectl --kubeconfig CLUSTER_KUBECONFIG get deployments -l "managed-by=stackdriver" --all-namespaces

donde CLUSTER_KUBECONFIG es la ruta de acceso a tu archivo kubeconfig del clúster.

El resultado de este comando es similar al siguiente:

gke-metrics-agent-global                      1/1     Running   0   4h31m
stackdriver-metadata-agent-cluster-level      1/1     Running   0   4h31m

Puedes ver todos los agentes si ejecutas el siguiente comando:

  kubectl --kubeconfig CLUSTER_KUBECONFIG get daemonsets -l "managed-by=stackdriver" --all-namespaces

El resultado de este comando es similar al siguiente:

gke-metrics-agent                             1/1     Running   0   4h31m
stackdriver-log-forwarder                     1/1     Running   0   4h31m

Configura agentes de registro y supervisión para Google Distributed Cloud

Los agentes instalados con Google Distributed Cloud recopilan datos sobre los componentes del sistema, sujetos a tu configuración, con el propósito de mantener y solucionar problemas de tus clústeres.

Solo componentes del sistema (alcance predeterminado)

Durante la instalación, los agentes recopilan registros y métricas, incluidos los detalles de rendimiento (por ejemplo, el uso de la CPU y la memoria) y metadatos similares para los componentes del sistema que proporciona Google. Estos incluyen todas las cargas de trabajo en el clúster del administrador y, en el caso de los clústeres de los usuarios, las cargas de trabajo en los espacios de nombres kube-system, gke-system, gke-connect, istio-system y config-management-system. Puedes configurar o inhabilitar los agentes como se describe en las secciones siguientes.

El permiso de los registros y las métricas recopilados también se puede expandir para incluir aplicaciones. Si deseas obtener instrucciones para habilitar la supervisión y el registro de aplicaciones, consulta Habilita Logging y Monitoring para las aplicaciones de usuario.

Métricas optimizadas (métricas predeterminadas)

De forma predeterminada, los agentes de métricas que se ejecutan en el clúster recopilan y crean informes de un conjunto optimizado de métricas de contenedores, kubelet y kube-state-metrics para Google Cloud Observability (antes conocido como Stackdriver).

Se necesitan menos recursos para recopilar este conjunto optimizado de métricas, lo que mejora el rendimiento general y la escalabilidad. Esto es muy importante para las métricas a nivel de contenedor y de kube, debido a la gran cantidad de objetos que se deben supervisar.

Para inhabilitar las métricas optimizadas de kube-state-metrics (no recomendado), configura el campo optimizedMetrics como false en tu recurso personalizado de Stackdriver. Si deseas obtener más información sobre cómo cambiar los recursos personalizados de Stackdriver, consulta Configura los recursos del componente de Stackdriver. Todas las métricas de Google Distributed Cloud, incluidas las excluidas de forma predeterminada, se describen en Métricas de Google Distributed Cloud.

Inhabilita y habilita Stackdriver

Puedes habilitar o inhabilitar por completo los agentes de registro y supervisión si habilitas o inhabilitas el recurso personalizado de Stackdriver. Esta función está en vista previa.

Antes de inhabilitar los agentes de registro y supervisión, consulta la página de asistencia para obtener detalles sobre cómo esto afecta a los ANS de Google Cloud Support.

Los agentes de Logging y Monitoring capturan datos almacenados de forma local, que están sujetos a la configuración de almacenamiento y retención. Los datos se replican en el proyecto Google Cloudespecificado en la instalación mediante una cuenta de servicio autorizada para escribir datos en ese proyecto. Puedes inhabilitar estos agentes en cualquier momento, como se describió antes.

También puedes administrar y borrar los datos que los agentes de Logging y Monitoring enviaron a Cloud Logging y Cloud Monitoring. Para obtener más información, consulta la documentación de Cloud Monitoring.

Requisitos de configuración para Logging y Monitoring

Para ver los datos de Cloud Logging y Cloud Monitoring, debes configurar el proyecto Google Cloud que almacena los registros y las métricas que deseas ver. Este proyecto Google Cloud se denomina tu proyecto de supervisión y registro.

  1. Habilita las siguientes API en tu proyecto de supervisión y registro:

  2. Otorga las siguientes funciones de IAM a tu cuenta de servicio de supervisión y registro en tu proyecto de supervisión y registro.

    • logging.logWriter
    • monitoring.metricWriter
    • stackdriver.resourceMetadata.writer
    • monitoring.dashboardEditor
    • opsconfigmonitoring.resourceMetadata.writer

Etiquetas de registro

Muchos registros de Google Distributed Cloud tienen una etiqueta de F:

logtag: "F"

Esta etiqueta significa que la entrada de registro está completa o llena. Para obtener más información sobre esta etiqueta, consulta Formato de registro en las propuestas de diseño de Kubernetes en GitHub.

¿Qué sigue?