Google Cloud Managed Service para Prometheus es la solución de múltiples nubes entre proyectos y completamente administrada de Google Cloudpara las métricas de Prometheus y OpenTelemetry. Esta permite supervisar y generar alertas sobre tus cargas de trabajo a nivel global con Prometheus y OpenTelemetry sin tener que administrar ni operar Prometheus de forma manual a gran escala.
Managed Service para Prometheus recopila métricas de sus exportadores y te permite consultar los datos a nivel global con PromQL, lo que significa que puedes seguir usando los paneles de Grafana, las alertas basadas en PromQL y los flujos de trabajo existentes. Es compatible con nubes híbridas y múltiples y puede supervisar cargas de trabajo de Kubernetes, de VMs y sin servidores en Cloud Run. Además, conserva los datos durante 24 meses y mantiene la portabilidad, gracias a la compatibilidad con Prometheus upstream. También puedes complementar la supervisión de Prometheus consultando más de 6,500 métricas sin cargo en Cloud Monitoring, incluidas las métricas del sistema de GKE gratuitas, con PromQL.
En este documento, se ofrece una descripción general del servicio administrado y, en otros documentos, se describe cómo configurar y ejecutar el servicio. Para recibir actualizaciones frecuentes sobre características y versiones nuevas, envía el formulario de registro opcional.
Descubre cómo The Home Depot usa Managed Service para Prometheus con el objetivo de obtener una observabilidad unificada en 2,200 tiendas que ejecutan clústeres de Kubernetes locales:
Descripción general del sistema
Google Cloud Managed Service para Prometheus te permite familiarizarte con Prometheus respaldado por la infraestructura global de múltiples nubes y entre proyectos de Cloud Monitoring.
Managed Service para Prometheus se basa en Monarch, el mismo almacén de datos escalable a nivel global que se usa para la propia supervisión de Google. Dado que Managed Service para Prometheus usa el mismo backend y las mismas APIs que Cloud Monitoring, tanto las métricas de Cloud Monitoring como las que transfiere Managed Service para Prometheus se pueden consultar con PromQL en Cloud Monitoring, Grafana o cualquier otra herramienta que pueda leer la API de Prometheus.
En una implementación estándar de Prometheus, la recopilación de datos, la evaluación de consultas, la evaluación de reglas y alertas y el almacenamiento de datos se controlan en un único servidor de Prometheus. Managed Service para Prometheus divide las responsabilidades de estas funciones en varios componentes:
- La recopilación de datos se controla con recopiladores administrados, recopiladores autoimplementados, el recopilador de OpenTelemetry o el Agente de operaciones, que recopilan exportadores locales y reenvían los datos recopilados a Monarch. Estos recopiladores se pueden usar para cargas de trabajo de VMs tradicionales, sin servidores y de Kubernetes, y se pueden ejecutar en todas partes, incluidas las implementaciones locales y en otras nubes.
- Monarch controla la evaluación de consultas, que ejecuta resultados de consultas y uniones en todas las regiones de Google Cloud y en hasta 3,500 proyectos deGoogle Cloud .
- La evaluación de reglas y alertas se controla con la escritura de alertas de PromQL en Cloud Monitoring. Estas se ejecutan por completo en la nube o por medio de componentes del evaluador de reglas configurados y ejecutados de forma local, que ejecutan reglas y alertas en el almacén de datos global de Monarch y reenvían las alertas activadas a Prometheus AlertManager.
- Monarc controla el almacenamiento de datos, el cual incluye todos los datos de Prometheus de 24 meses sin costo adicional.
Grafana se conecta al almacén de datos global de Monarch en lugar de conectarse a servidores individuales de Prometheus. Si tienes configurado Managed Service para recopiladores de Prometheus en todas las implementaciones, esta instancia única de Grafana te brinda una vista unificada de todas las métricas en cada una de las nubes.
Recopilación de datos
Puedes usar Managed Service para Prometheus de cuatro modos: con la recopilación de datos administrada, la recopilación de datos con capacidad de autoimplementación, el recopilador de OpenTelemetry o el Agente de operaciones.
Managed Service para Prometheus ofrece un operador destinado a la recopilación de datos administrada en entornos de Kubernetes. Te recomendamos que uses la recopilación administrada; ya que simplifica el proceso de implementar, escalar, fragmentar, configurar y mantener los servidores de Prometheus. La recopilación administrada es compatible con entornos de Kubernetes de GKE o ajenos a GKE.
A través de la recopilación de datos con capacidad de autoimplementación, puedes administrar tu instalación de Prometheus como siempre. La única diferencia con respecto a Prometheus upstream es que se ejecuta el objeto binario de reemplazo de Managed Service para Prometheus, en lugar del objeto binario de Prometheus upstream.
El recopilador de OpenTelemetry se puede usar con el objetivo de recopilar exportadores de Prometheus y enviar datos a Managed Service para Prometheus. OpenTelemetry admite una estrategia de agente único en todos los indicadores, en la que se puede usar un recopilador para las métricas (incluidas las de Prometheus), los registros y los seguimientos en cualquier entorno.
Puedes configurar el Agente de operaciones en cualquier instancia de Compute Engine para recopilar y enviar métricas de Prometheus al almacén de datos global. Usar un agente simplifica en gran medida el descubrimiento de VM y elimina la necesidad de instalar, implementar o configurar Prometheus en entornos de VM.
Si tienes un servicio de Cloud Run que escribe métricas de Prometheus o métricas de OTLP, puedes usar un sidecar y Managed Service para Prometheus con el objetivo de enviar las métricas a Cloud Monitoring.
- Para recopilar las métricas de Prometheus desde Cloud Run, usa el sidecar de Prometheus.
- Para recopilar métricas de OTLP desde Cloud Run, usa el sidecar de OpenTelemetry.
Puedes ejecutar recopiladores administrados, autoimplementados y de OpenTelemetry en implementaciones locales y en cualquier nube. Los recopiladores que se ejecutan fuera de Google Cloud envían datos a Monarch para el almacenamiento a largo plazo y las consultas globales.
Cuando elijas entre las opciones de recopilación, ten en cuenta los aspectos que se indican a continuación:
La recopilación administrada tiene las siguientes características:
- Es el enfoque que Google recomienda para todos los entornos de Kubernetes.
- Se implementa con la IU de GKE, la gcloud CLI, la
kubectl
CLI o Terraform. - El operador de Kubernetes se encarga por completo de la operación de Prometheus (generar opciones de configuración de recopilación, escalamiento de transferencia y reglas de permisos para los datos correctos, entre otros).
- La recopilación y las reglas se configuran con recursos personalizados ligeros (CR).
- Es ideal para quienes buscan una experiencia práctica completamente administrada.
- Migración intuitiva desde las opciones de configuración de prometheus-operator.
- Es compatible con la mayoría de los casos de uso actuales de Prometheus.
- Asistencia técnica completa por parte de Google Cloud .
La recopilación autoimplementada tiene las siguientes características:
- Un reemplazo directo para el objeto binario de Prometheus upstream.
- Puedes usar tu mecanismo de implementación de preferencia, como prometheus-operator o la implementación manual.
- La recopilación se configura con tus métodos preferidos, como las anotaciones o prometheus-operator.
- El escalamiento y la fragmentación funcional se realizan de forma manual.
- Es ideal para una integración rápida en opciones de configuración más complejas. Puedes reutilizar tus parámetros de configuración existentes y ejecutar Prometheus upstream y Managed Service para Prometheus en paralelo.
- En general, las reglas y las alertas se ejecutan en los servidores individuales de Prometheus, lo que puede ser conveniente para las implementaciones perimetrales, ya que la evaluación de reglas locales no genera tráfico de red.
- Es posible que admita casos de uso de cola larga que aún no son compatibles con la recopilación administrada, como las agregaciones locales para reducir la cardinalidad.
- Asistencia técnica limitada por parte de Google Cloud .
El recopilador de OpenTelemetry tiene las siguientes características:
- Es un único recopilador que puede recopilar métricas (incluidas las de Prometheus) de cualquier entorno y enviarlas a cualquier backend compatible. También se puede usar para recopilar registros y seguimientos y, luego, enviarlos a cualquier backend compatible, incluidos Cloud Logging y Cloud Trace.
- Se implementa en cualquier entorno de procesamiento o de Kubernetes de forma manual o con Terraform. Se puede usar para enviar métricas desde entornos sin estado, como Cloud Run.
- La recopilación se configura con archivos de configuración similares a Prometheus en el receptor de Prometheus del recopilador.
- Admite patrones de recopilación de métricas basadas en envíos.
- Los metadatos se insertan desde cualquier nube por medio de procesadores de detectores de recursos.
- Las reglas y las alertas se pueden ejecutar con una política de alertas de Cloud Monitoring o el evaluador de reglas independiente.
- Es compatible con flujos de trabajo de indicadores cruzados y funciones como ejemplos.
- Asistencia técnica limitada por parte de Google Cloud .
El Agente de operaciones tiene las siguientes características:
- Ofrece la forma más sencilla de recopilar y enviar datos de métricas de Prometheus que se originan en los entornos de Compute Engine, incluidas las distribuciones de Linux y Windows.
- Se implementa con la gcloud CLI, la IU de Compute Engine o Terraform.
- La recopilación se configura con archivos de configuración similares a Prometheus en el receptor de Prometheus del Agente, con la tecnología de OpenTelemetry.
- Las reglas y las alertas se pueden ejecutar con Cloud Monitoring o el evaluador de reglas independientes.
- Incluye agentes de Logging opcionales y métricas de proceso.
- Asistencia técnica completa por parte de Google Cloud .
Para empezar, consulta Empieza a usar la recopilación administrada, Empieza a usar la recopilación autoimplementada, Empieza a usar el recopilador de OpenTelemetry o Empieza a usar el Agente de operaciones.
Si usas el servicio administrado por fuera de Google Kubernetes Engine o Google Cloud, es posible que se necesite alguna configuración adicional. Consulta Ejecuta la recopilación administrada por fuera de Google Cloud, Ejecuta la recopilación autoimplementada por fuera de Google Cloud o Agrega procesadores de OpenTelemetry.
Evaluación de consultas
Managed Service para Prometheus admite cualquier IU de consulta que pueda llamar a la API de consulta de Prometheus, incluidos Grafana y la IU de Cloud Monitoring. Los paneles de Grafana existentes continúan funcionando cuando se cambia de Prometheus local a Managed Service para Prometheus. Además, puedes continuar usando PromQL, que se encuentra en repositorios populares de código abierto y en foros de la comunidad.
Puedes usar PromQL para consultar más de 6,500 métricas sin cargo en Cloud Monitoring, incluso sin enviar datos a Managed Service para Prometheus. También puedes usar PromQL para consultar métricas de Kubernetes sin cargo, métricas personalizadas y métricas basadas en registros.
Para obtener información sobre cómo configurar Grafana y consultar datos de Managed Service para Prometheus, revisa Realiza consultas con Grafana.
Para obtener información sobre cómo consultar las métricas de Cloud Monitoring con PromQL, consulta PromQL en Cloud Monitoring.
Evaluación de reglas y alertas
Managed Service para Prometheus proporciona una canalización de alertas completamente basada en la nube y un evaluador de reglas independiente, que evalúan las reglas con todos los datos de Monarch a los que se puede acceder en un permiso de métricas. La evaluación de las reglas en un permiso de métricas de varios proyectos elimina la necesidad de ubicar todos los datos de interés en un solo servidor de Prometheus o en un solo proyecto Google Cloud . Además, permite configurar permisos de IAM en grupos de proyectos.
Debido a que todas las opciones de evaluación de reglas aceptan el formato estándar de Prometheus rule_files
,
puedes migrar con facilidad a Managed Service para Prometheus copiando y pegando
reglas existentes o reglas que se encuentran en los repositorios de código abierto
populares. Si usas recopiladores autoimplementados, puedes continuar con
la evaluación de las reglas de registro a nivel local en los recopiladores. Los resultados de las reglas de registro
y alertas se almacenan en Monarch, al igual que los datos
de métricas recopilados directamente. También puedes migrar tus reglas de alertas de Prometheus a
las políticas de alertas basadas en PromQL en Cloud Monitoring.
Para conocer más sobre la evaluación de alertas con Cloud Monitoring, consulta Alertas de PromQL en Cloud Monitoring.
Para conocer más sobre la evaluación de reglas con recopilación administrada, consulta Evaluación y alertas de reglas administradas.
Para conocer más sobre la evaluación de reglas con recopilación autoimplementada, el recopilador de OpenTelemetry y el Agente de operaciones, consulta Evaluación y alertas de reglas autoimplementadas.
Para obtener información sobre la reducción de la cardinalidad por medio de reglas de registro en recopiladores autoimplementados, consulta Control y atribución de costos.
Almacenamiento de datos
Todos los datos de Managed Service para Prometheus se almacenan durante 24 meses sin costo adicional.
Managed Service para Prometheus admite un intervalo de recopilación mínimo de 5 segundos. Los datos se almacenan con un nivel de detalle completo durante 1 semana. Luego, se reduce el muestreo a puntos de 1 minuto para las siguientes 5 semanas y, posteriormente, se reduce el muestreo a puntos de 10 minutos y se almacenan por el resto del período de retención.
Managed Service para Prometheus no tiene limitada la cantidad de series temporales activas o totales.
Para obtener más información, consulta Cuotas y límites en la documentación de Cloud Monitoring.
Facturación y cuotas
Managed Service para Prometheus es un producto de Google Cloud y se aplican cuotas de facturación y de uso.
Facturación
La facturación del servicio se basa, sobre todo, en la cantidad de muestras de métricas transferidas al almacenamiento. También hay un cargo nominal para las llamadas a la API de lectura. Managed Service para Prometheus no cobra por el almacenamiento ni la retención de los datos de métricas.
- Para conocer los precios actuales, consulta Resumen de precios de Google Cloud Managed Service para Prometheus.
- Para calcular tu factura en función de la cantidad de series temporales previstas o las muestras previstas por segundo, consulta la pestaña Cloud Operations de la Calculadora de precios deGoogle Cloud .
- Para obtener sugerencias sobre cómo reducir el importe de tu factura o determinar los orígenes de los costos elevados, consulta Controles y atribución de costos.
- Para obtener información sobre la lógica del modelo de precios, consulta Optimiza los costos de Google Cloud Managed Service para Prometheus.
- Para ver ejemplos de precios, consulta Datos de métricas cobrados por muestras transferidas.
Cuotas
Managed Service para Prometheus comparte las cuotas de transferencia y lectura con Cloud Monitoring. La cuota de transferencia predeterminada es de 500 QPS por proyecto con hasta 200 muestras en una sola llamada, lo que equivale a 100,000 muestras por segundo. La cuota de lectura predeterminada es de 100 QPS por permiso de métricas.
Puedes aumentar estas cuotas para admitir tus volúmenes de métricas y consultas. Para obtener más información sobre cómo administrar cuotas y solicitar sus aumentos, consulta Trabaja con cuotas.
Condiciones del servicio y cumplimiento
Managed Service para Prometheus forma parte de Cloud Monitoring y, por lo tanto, hereda algunos de sus acuerdos y certificaciones, en los que se incluyen los siguientes puntos (sin limitaciones):
- Las condiciones del servicio deGoogle Cloud
- El Acuerdo de Nivel de Servicio (ANS) de operaciones
- Los niveles de cumplimiento de US DISA y FedRAMP
- La compatibilidad con VPC-SC (Controles del servicio de VPC)
¿Qué sigue?
- Empieza a usar la recopilación administrada.
- Empieza a usar la recopilación autoimplementada.
- Empieza a usar el recopilador de OpenTelemetry.
- Empieza a usar el Agente de operaciones.
- Usa PromQL en Cloud Monitoring para consultar las métricas de Prometheus.
- Usa Grafana para consultar métricas de Prometheus.
- Consulta las métricas de Cloud Monitoring con PromQL.
- Lee acerca de las prácticas recomendadas y visualiza los diagramas de arquitectura.