Google Distributed Cloud (solo software) para VMware incluye varias opciones para el registro y la monitorización de clústeres, como servicios gestionados basados en la nube, herramientas de código abierto y compatibilidad validada con soluciones comerciales de terceros. En este documento se explican estas opciones y se ofrecen algunas directrices básicas sobre cómo seleccionar la solución adecuada para tu entorno.
Opciones de Google Distributed Cloud
Tienes varias opciones de registro y monitorización para tu Google Distributed Cloud:
- Cloud Logging y Cloud Monitoring
- Google Cloud Managed Service para Prometheus (vista previa)
- Configuraciones validadas con soluciones de terceros.
Cloud Logging y Cloud Monitoring
Google Cloud Observability (antes Stackdriver) es la solución de observabilidad integrada deGoogle Cloud. Ofrece una solución de registro totalmente gestionada, recogida de métricas, monitorización, creación de paneles y alertas. Cloud Monitoring monitoriza los clústeres de Google Distributed Cloud de forma similar a los clústeres de GKE basados en la nube.
Puede configurar los agentes del clúster para el ámbito de la monitorización y el registro, así como el nivel de las métricas recogidas:
- El ámbito del registro y la monitorización se puede definir solo para los componentes del sistema (opción predeterminada) o para los componentes del sistema y las aplicaciones.
- El nivel de métricas recogidas se puede configurar para un conjunto optimizado de métricas o para métricas completas.
Para obtener más información, consulta el artículo sobre cómo configurar agentes de registro y monitorización para Google Distributed Cloud.
Cloud Logging y Cloud Monitoring ofrecen una solución ideal para los clientes que buscan una solución de observabilidad basada en la nube única, potente y fácil de configurar. Recomendamos encarecidamente Logging y Monitoring cuando se ejecuten cargas de trabajo solo en Google Distributed Cloud o cargas de trabajo en GKE y Google Distributed Cloud. En el caso de las aplicaciones con componentes que se ejecutan en Google Distributed Cloud y en la infraestructura tradicional local, puede que te interese usar otras soluciones para obtener una vista integral de esas aplicaciones.
Para obtener información sobre la arquitectura, la configuración y los datos que se replican en tu proyecto de Google Cloud de forma predeterminada para Google Distributed Cloud, consulta la sección Cómo funcionan los registros y la monitorización de Google Distributed Cloud.
Para obtener más información sobre Cloud Logging, consulta la documentación de Cloud Logging.
Para obtener más información sobre Cloud Monitoring, consulta la documentación de Cloud Monitoring.
Soluciones de terceros
Google ha colaborado con varios proveedores de soluciones de registro y monitorización de terceros para que sus productos funcionen correctamente con Google Distributed Cloud. Entre ellos se incluyen Datadog, Elastic y Splunk. En el futuro, se añadirán más terceros validados.
Para obtener más información sobre cómo usar soluciones de terceros con Google Distributed Cloud, consulta lo siguiente:
- Recopilar registros en Google Distributed Cloud con Splunk Connect
- Ampliar las funciones de Elastic con análisis históricos, copias de seguridad y monitorización multicloud en Google Cloud Platform
Cómo funcionan el almacenamiento de registros y la monitorización de Google Distributed Cloud
Los agentes de registro y monitorización se instalan y activan en cada clúster cuando creas un clúster de administrador o de usuario. Los agentes recogen datos sobre los componentes del sistema, cuyo alcance puedes configurar.
Para ver los datos recogidos en la consola Google Cloud , debe configurar el proyecto Google Cloud que almacena los registros y las métricas que quiere ver.
Los agentes de almacenamiento de registros y monitorización de 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.Reenviador de registros (
stackdriver-log-forwarder
). Un DaemonSet de Fluent Bit que reenvía registros de cada máquina a Cloud Logging. El reenviador de registros almacena en búfer las entradas de registro en el nodo localmente y las reenvía durante un máximo de cuatro horas. Si el búfer se llena o si el reenviador de registros no puede acceder a la API de Cloud Logging durante más de cuatro horas, los registros se descartarán.Agente de métricas de GKE global (
gke-metrics-agent-global
). Una implementación que envía métricas a la API Cloud Monitoring.Agente de metadatos (
stackdriver-metadata-agent
). 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 permiten consultar por nombre de implementación, nombre de nodo o incluso nombre de servicio de Kubernetes.kube-state-metrics: 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.
Para ver todos los agentes de implementación, ejecuta el siguiente comando:
kubectl --kubeconfig CLUSTER_KUBECONFIG get deployments -l "managed-by=stackdriver" --all-namespaces
donde CLUSTER_KUBECONFIG es la ruta al archivo kubeconfig del clúster.
El resultado debe ser similar al siguiente:
gke-metrics-agent-global 1/1 Running 0 4h31m stackdriver-metadata-agent-cluster-level 1/1 Running 0 4h31m
Para ver todos los agentes de DaemonSet, ejecuta el siguiente comando:
kubectl --kubeconfig CLUSTER_KUBECONFIG get daemonsets -l "managed-by=stackdriver" --all-namespaces
El resultado debe ser similar al siguiente:
gke-metrics-agent 1/1 Running 0 4h31m stackdriver-log-forwarder 1/1 Running 0 4h31m
Configurar agentes de registro y monitorización para Google Distributed Cloud
Los agentes instalados con Google Distributed Cloud recogen datos sobre los componentes del sistema, de acuerdo con tus ajustes y configuración, para mantener y solucionar problemas con tus clústeres.
Solo componentes del sistema (ámbito predeterminado)
Tras la instalación, los agentes recogen registros y métricas, incluidos detalles sobre el rendimiento (por ejemplo, el uso de la CPU y la memoria) y metadatos similares de los componentes del sistema proporcionados por Google. Esto incluye todas las cargas de trabajo del clúster de administrador y, en el caso de los clústeres de usuario, las cargas de trabajo de 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 ámbito de los registros y las métricas recogidos se puede ampliar para incluir también las aplicaciones. Para obtener instrucciones sobre cómo habilitar el registro y la monitorización de aplicaciones, consulta Habilitar el registro y la monitorización de aplicaciones de usuario.
Métricas optimizadas (métricas predeterminadas)
De forma predeterminada, los agentes de métricas que se ejecutan en el clúster recogen y envían un conjunto optimizado de métricas de contenedor, kubelet y kube-state-metrics a Google Cloud Observability (antes Stackdriver).
Se necesitan menos recursos para recoger este conjunto de métricas optimizado, lo que mejora el rendimiento y la escalabilidad generales. Esto es especialmente importante en el caso de las métricas a nivel de contenedor y de kube, debido a la gran cantidad de objetos que se deben monitorizar.
Para inhabilitar las métricas optimizadas de kube-state-metrics (no recomendado), asigna el valor false
al campo optimizedMetrics
de tu recurso personalizado de Stackdriver. Para obtener más información sobre cómo cambiar tu recurso personalizado de Stackdriver, consulta Configurar recursos de componentes de Stackdriver.
Todas las métricas de Google Distributed Cloud, incluidas las que se excluyen de forma predeterminada, se describen en Métricas de Google Distributed Cloud.
Habilitar e inhabilitar Stackdriver
Puedes habilitar o inhabilitar por completo los agentes de registro y de monitorización habilitando o inhabilitando el recurso personalizado de Stackdriver. Esta función está en versión preliminar.
Antes de inhabilitar los agentes de registro y monitorización, consulta la página de asistencia para obtener información sobre cómo afecta esto a los acuerdos de nivel de servicio de Google Cloud asistencia.
Los agentes de registro y monitorización capturan los datos almacenados de forma local, de acuerdo con la configuración de almacenamiento y retención. Los datos se replican en el Google Cloud proyecto especificado durante la instalación mediante una cuenta de servicio autorizada para escribir datos en ese proyecto. Puedes inhabilitar estos agentes en cualquier momento, como se ha descrito anteriormente.
También puedes gestionar y eliminar los datos que los agentes de registro y monitorización han enviado a Cloud Logging y Cloud Monitoring. Para obtener más información, consulta la documentación de Cloud Monitoring.
Requisitos de configuración para el almacenamiento de registros y la monitorización
Para ver los datos de Cloud Logging y Cloud Monitoring, debes configurar el Google Cloud proyecto que almacena los registros y las métricas que quieras consultar. Este Google Cloud proyecto se denomina proyecto de registro y monitorización.
Habilita las siguientes APIs en tu proyecto de registro y monitorización:
Concede los siguientes roles de gestión de identidades y accesos a tu cuenta de servicio de registro y monitorización en tu proyecto de registro y monitorización.
logging.logWriter
monitoring.metricWriter
stackdriver.resourceMetadata.writer
monitoring.dashboardEditor
opsconfigmonitoring.resourceMetadata.writer
Etiquetas de registro
Muchos registros de Google Distributed Cloud tienen la etiqueta 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.