Versión 1.7. Esta versión es compatible como se describe en la política de asistencia de la versión de Anthos, que ofrece los últimos parches y actualizaciones de vulnerabilidades de seguridad, exposiciones y problemas que afectan a los clústeres de Anthos alojados en VMware (GKE On-Prem). Consulta las notas de la versión para obtener más detalles. Esta no es la versión más reciente.

Registro y supervisión

Los clústeres de Anthos alojados en VMware (GKE On-Prem) incluyen varias opciones para el registro y la 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 seleccionar la solución adecuada para tu entorno.

Opciones para clústeres de Anthos alojados en VMware

Tienes varias opciones de registro y supervisión para tus clústeres de Anthos alojados en VMware:

  • Cloud Logging y Cloud Monitoring, implementados mediante clústeres de Anthos alojados en VMware y habilitados por agentes internos del clúster.
  • Prometheus y Grafana, que están inhabilitados de forma predeterminada
  • Opciones de configuración validadas con soluciones de terceros

Cloud Logging y Cloud Monitoring

Google Cloud's operations suite (antes llamado Stackdriver) es la solución de observabilidad integrada para Google 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 Anthos alojados en VMware de manera similar a 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 la página Configura agentes de Logging y Monitoring para clústeres de Anthos alojados en VMware en este documento a fin de 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 enfáticamente usar Logging y Monitoring cuando se ejecuten cargas de trabajo solo en clústeres de Anthos alojados en VMware o en GKE y clústeres de Anthos alojados en VMware. Para las aplicaciones con componentes que se ejecutan en clústeres de Anthos alojados en VMware y la infraestructura local tradicional, podrías considerar otras soluciones fin de obtener una vista de extremo a extremo de esas aplicaciones.

Prometheus y Grafana

Prometheus y Grafana son dos productos populares de supervisión de código abierto:

  • Prometheus recopila métricas de aplicaciones y sistemas.

  • Alertmanager maneja el envío de alertas con varios mecanismos de alerta diferentes.

  • Grafana es una herramienta de paneles.

Prometheus y Grafana se pueden habilitar en cada clúster de administrador y de usuario. Prometheus y Grafana se recomiendan para equipos de aplicaciones con experiencia previa en esos productos o equipos operativos que prefieren conservar las métricas de la aplicación dentro del clúster y, también, a fin de solucionar los problemas cuando se pierde la conectividad de red.

Soluciones de terceros

Google trabajó con varios proveedores de soluciones de registro y supervisión de terceros para que sus productos funcionen bien con clústeres de Anthos alojados en VMware. Entre estos, se incluyen Datadog, Elastic y Splunk. En el futuro, se agregarán más proveedores validados.

Las siguientes guías de soluciones están disponibles para usar soluciones de terceros con clústeres de Anthos alojados en VMware:

Cómo funcionan Logging y Monitoring para clústeres de Anthos alojados en VMware

Los agentes de Logging y de 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 Google Cloud Console, debes configurar el proyecto de Cloud que almacena los registros y las métricas que deseas ver.

Los agentes de Logging y Monitoring incluyen varios componentes en cada clúster:

  • Administrador de Logging y Monitoring (stackdriver-operator-*). Administra el ciclo de vida de todos los demás agentes de Logging y Monitoring implementados en el clúster.

  • Recurso personalizado de Stackdriver. Un recurso que se crea automáticamente como parte del proceso de instalación de clústeres de Anthos alojados en VMware. Los usuarios pueden cambiar el recurso personalizado para actualizar valores como el ID del proyecto, el nombre del clúster y la ubicación del clúster en cualquier momento.

  • Servidor de reenvío de registros. 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 no puede llegar a la API de Cloud Logging durante más de 4 horas, se descartan los registros.

  • Recopilador de métricas (stackdriver-prometheus-k8s-): Es un StatefulSet de sidecar de Prometheus y Stackdriver para Prometheus que envía métricas de Prometheus a la API de Cloud Logging.

  • 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.

Puedes ver todos los agentes si ejecutas el siguiente comando:

  kubectl -n kube-system get pods | grep stackdriver

El resultado de este comando es similar al siguiente:

stackdriver-log-forwarder-bpf8g               1/1     Running   0   4h31m
stackdriver-log-forwarder-cht4m               1/1     Running   0   4h31m
stackdriver-log-forwarder-fth5s               1/1     Running   0   4h31m
stackdriver-log-forwarder-kw4j2               1/1     Running   0   4h29m
stackdriver-metadata-agent-cluster-level...   1/1     Running   0   4h31m
stackdriver-operator-76ddb64d57-4tcj9         1/1     Running   0   4h37m
stackdriver-prometheus-k8s-0                  2/2     Running   0   4h31m

Configura los agentes de Logging y Monitoring para clústeres de Anthos alojados en VMware

Los agentes instalados con clústeres de Anthos alojados en VMware recopilan datos sobre los componentes del sistema, sujetos a tu configuración, con el fin 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 y kubelet para Google Cloud's operations suite (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, debido a la gran cantidad de objetos que se deben supervisar.

Para inhabilitar las métricas optimizadas (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 clústeres de Anthos alojados en VMware, incluso las excluidas de forma predeterminada, se describen en las métricas de Anthos.

Stackdriver inhabilitado

Puedes inhabilitar los agentes de Logging y Monitoring por completo si borras el recurso personalizado de Stackdriver. Antes de inhabilitar Stackdriver, consulta la página de asistencia para obtener detalles sobre cómo esto afecta a los ANS de Google Cloud Support.

Usa esta cadena a fin de inhabilitar Stackdriver para clústeres de Anthos alojados en VMware:

kubectl -n kube-system delete stackdriver stackdriver

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 de Google Cloud especificado 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 recopilados por los agentes de Logging y Monitoring como cualquier otra métrica y dato de registro, como se describe en la documentación de Cloud Monitoring.

Requisitos de configuración para Logging y Monitoring

Para ver los datos de Logging y Monitoring, debes configurar el proyecto de Cloud que almacena los registros y las métricas que deseas ver. Este proyecto de Cloud se denomina 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

Precios

No se aplican cargos por los registros y las métricas del sistema de Anthos.

En un clúster de Anthos dentro de un clúster de VMware, los registros y las métricas del sistema de Anthos incluyen lo siguiente:

  • Registros y métricas de todos los componentes en un clúster de administrador
  • Registros y métricas de los componentes de estos espacios de nombres en un clúster de usuario: kube-system, gke-system, gke-connect, knative-serving, istio-system, monitoring-system, config-management-system, gatekeeper-system, cnrm-system

Para obtener más información, consulta Precios de Google Cloud's operations suite.

Si quieres obtener información sobre los créditos de las métricas de Cloud Logging, comunícate con Ventas para obtener información sobre los precios.

Cómo funcionan Prometheus y Grafana para clústeres de Anthos alojados en VMware

Cada clúster de clústeres de Anthos alojados en VMware se crea con Prometheus y Grafana inhabilitados de forma predeterminada. Puedes seguir la guía de instalación para habilitarlos.

El servidor de Prometheus se establece en una configuración con alta disponibilidad con dos réplicas que se ejecutan en dos nodos independientes. Los requisitos de los recursos se ajustan para admitir clústeres que ejecuten hasta cinco nodos, cada uno de los cuales maneja hasta 30 pods que entregan métricas personalizadas. Prometheus tiene un PersistentVolume dedicado con espacio en disco asignado de forma previa para almacenar datos durante un período de retención de cuatro días, además de un búfer de seguridad adicional.

El plano de control del administrador, así como cada clúster de usuario, tienen una pila de supervisión dedicada que puedes configurar de forma independiente. En cada clúster de administrador y de usuario, se incluye una pila de supervisión que ofrece un conjunto completo de funciones: el servidor de Prometheus para la supervisión, Grafana para la observabilidad y Alertmanager de Prometheus para las alertas.

Todos los extremos de supervisión, los datos de métricas transferidos y las API de supervisión están protegidos con componentes de Istio mediante reglas de mTLS y RBAC. El acceso a los datos de supervisión está restringido solo a los administradores del clúster.

Métricas recopiladas mediante Prometheus

Prometheus recopila los siguientes metadatos y métricas del plano de control de administrador y los clústeres de usuario:

  • El uso de los recursos, como el uso de CPU en los pods y los nodos
  • Las métricas del plano de control de Kubernetes
  • Las métricas de los complementos y los componentes del sistema de Kubernetes que se ejecutan en nodos, como kubelet
  • El estado del clúster, como el estado de los pods en un objeto Deployment
  • Las métricas de la aplicación
  • Las métricas de la máquina, como la red, la entropía y los inodos

Supervisión de varios clústeres

La instancia de Prometheus y Grafana instalada en el clúster de administrador se configura de forma especial para proporcionar estadísticas de toda la instancia de clústeres de Anthos alojados en VMware, lo que incluye el clúster de administrador y cada clúster de usuario. Esto te permite hacer lo siguiente:

  • Usar un panel de Grafana para acceder a las métricas de todos los clústeres de usuario y de administrador
  • Ver las métricas de clústeres de usuario individuales en los paneles de Grafana, las cuales están disponibles para realizar consultas directas con resolución completa
  • Acceder a las métricas de nivel de nodo y de carga de trabajo de los clústeres de usuario para obtener consultas agregadas, paneles y alertas (las métricas de cargas de trabajo se limitan a las cargas de trabajo que se ejecutan en el espacio de nombres de kube-system)
  • Configurar alertas para clústeres específicos

¿Qué sigue?