arrow_back

Reduce los costos de Managed Service para Prometheus

Acceder Unirse
Obtén acceso a más de 700 labs y cursos

Reduce los costos de Managed Service para Prometheus

Lab 1 hora 30 minutos universal_currency_alt 1 crédito show_chart Introductorio
info Es posible que este lab incorpore herramientas de IA para facilitar tu aprendizaje.
Obtén acceso a más de 700 labs y cursos

GSP1027

Logotipo de los labs de autoaprendizaje de Google Cloud

Descripción general

Google Cloud Managed Service para Prometheus cobra por la cantidad de muestras transferidas a Cloud Monitoring y por las solicitudes de lectura a la API de Monitoring. El número de muestras transferidas es el factor principal del costo.

En este lab, explorarás los mecanismos de control de costos cuando utilices Managed Service para Prometheus en Google Cloud.

Objetivos

En este lab, aprenderás a hacer lo siguiente:

  • Implementar Google Managed Prometheus (GMP) en un clúster de Google Kubernetes Engine (GKE), así como una aplicación de Python
  • Filtrar los datos de métricas generados para reducir la cantidad de métricas de series temporales que envías al servicio administrado
  • Cambiar el intervalo de scraping para reducir la cantidad de muestras que recopilas

Configuración y requisitos

Antes de hacer clic en el botón Comenzar lab

Lee estas instrucciones. Los labs cuentan con un temporizador que no se puede pausar. El temporizador, que comienza a funcionar cuando haces clic en Comenzar lab, indica por cuánto tiempo tendrás a tu disposición los recursos de Google Cloud.

Este lab práctico te permitirá realizar las actividades correspondientes en un entorno de nube real, no en uno de simulación o demostración. Para ello, se te proporcionan credenciales temporales nuevas que utilizarás para acceder a Google Cloud durante todo el lab.

Para completar este lab, necesitarás lo siguiente:

  • Acceso a un navegador de Internet estándar. Se recomienda el navegador Chrome.
Nota: Usa una ventana del navegador privada o de incógnito (opción recomendada) para ejecutar el lab. Así evitarás conflictos entre tu cuenta personal y la cuenta de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.
  • Tiempo para completar el lab (recuerda que, una vez que comienzas un lab, no puedes pausarlo).
Nota: Usa solo la cuenta de estudiante para este lab. Si usas otra cuenta de Google Cloud, es posible que se apliquen cargos a esa cuenta.

Cómo iniciar tu lab y acceder a la consola de Google Cloud

  1. Haz clic en el botón Comenzar lab. Si debes pagar por el lab, se abrirá un diálogo para que selecciones la forma de pago. A la izquierda, se encuentra el panel Detalles del lab, que tiene estos elementos:

    • El botón para abrir la consola de Google Cloud
    • El tiempo restante
    • Las credenciales temporales que debes usar para el lab
    • Otra información para completar el lab, si es necesaria
  2. Haz clic en Abrir la consola de Google Cloud (o haz clic con el botón derecho y selecciona Abrir el vínculo en una ventana de incógnito si ejecutas el navegador Chrome).

    El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.

    Sugerencia: Ordena las pestañas en ventanas separadas, una junto a la otra.

    Nota: Si ves el diálogo Elegir una cuenta, haz clic en Usar otra cuenta.
  3. De ser necesario, copia el nombre de usuario a continuación y pégalo en el diálogo Acceder.

    {{{user_0.username | "Username"}}}

    También puedes encontrar el nombre de usuario en el panel Detalles del lab.

  4. Haz clic en Siguiente.

  5. Copia la contraseña que aparece a continuación y pégala en el diálogo Te damos la bienvenida.

    {{{user_0.password | "Password"}}}

    También puedes encontrar la contraseña en el panel Detalles del lab.

  6. Haz clic en Siguiente.

    Importante: Debes usar las credenciales que te proporciona el lab. No uses las credenciales de tu cuenta de Google Cloud. Nota: Usar tu propia cuenta de Google Cloud para este lab podría generar cargos adicionales.
  7. Haz clic para avanzar por las páginas siguientes:

    • Acepta los Términos y Condiciones.
    • No agregues opciones de recuperación o autenticación de dos factores (esta es una cuenta temporal).
    • No te registres para obtener pruebas gratuitas.

Después de un momento, se abrirá la consola de Google Cloud en esta pestaña.

Nota: Para acceder a los productos y servicios de Google Cloud, haz clic en el menú de navegación o escribe el nombre del servicio o producto en el campo Buscar. Ícono del menú de navegación y campo de búsqueda

Activa Cloud Shell

Cloud Shell es una máquina virtual que cuenta con herramientas para desarrolladores. Ofrece un directorio principal persistente de 5 GB y se ejecuta en Google Cloud. Cloud Shell proporciona acceso de línea de comandos a tus recursos de Google Cloud.

  1. Haz clic en Activar Cloud Shell Ícono de Activar Cloud Shell en la parte superior de la consola de Google Cloud.

  2. Haz clic para avanzar por las siguientes ventanas:

    • Continúa en la ventana de información de Cloud Shell.
    • Autoriza a Cloud Shell para que use tus credenciales para realizar llamadas a la API de Google Cloud.

Cuando te conectes, habrás completado la autenticación, y el proyecto estará configurado con tu Project_ID, . El resultado contiene una línea que declara el Project_ID para esta sesión:

Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}

gcloud es la herramienta de línea de comandos de Google Cloud. Viene preinstalada en Cloud Shell y es compatible con la función de autocompletado con tabulador.

  1. Puedes solicitar el nombre de la cuenta activa con este comando (opcional):
gcloud auth list
  1. Haz clic en Autorizar.

Resultado:

ACTIVE: * ACCOUNT: {{{user_0.username | "ACCOUNT"}}} To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. Puedes solicitar el ID del proyecto con este comando (opcional):
gcloud config list project

Resultado:

[core] project = {{{project_0.project_id | "PROJECT_ID"}}} Nota: Para obtener toda la documentación de gcloud, en Google Cloud, consulta la guía con la descripción general de gcloud CLI.

Tarea 1: Implementa un clúster de GKE

  • Implementa un clúster de GKE básico para configurar el lab:
gcloud beta container clusters create gmp-cluster --num-nodes=1 --zone {{{project_0.default_zone|ZONE}}} --enable-managed-prometheus gcloud container clusters get-credentials gmp-cluster --zone={{{project_0.default_zone|ZONE}}}

Tarea 2: Implementa la recopilación administrada

Configura un recurso PodMonitoring

El siguiente manifiesto define un recurso PodMonitoring, prom-example, en el espacio de nombres gmp-test. El recurso usa un selector de etiquetas de Kubernetes para encontrar todos los Pods del espacio de nombres que tengan la etiqueta app con el valor prom-example. Los Pods coincidentes se extraen en un puerto llamado metrics, cada 30 segundos, en la ruta HTTP /metrics.

apiVersion: monitoring.googleapis.com/v1 kind: PodMonitoring metadata: namespace: gmp-system name: collector labels: app.kubernetes.io/name: collector app.kubernetes.io/part-of: google-cloud-managed-prometheus spec: selector: matchLabels: app.kubernetes.io/name: collector endpoints: - port: prom-metrics interval: 10s - port: cfg-rel-metrics interval: 10s
  • Para aplicar este recurso, ejecuta el siguiente comando:
kubectl -n gmp-system apply -f https://raw.githubusercontent.com/GoogleCloudPlatform/prometheus-engine/main/examples/self-pod-monitoring.yaml

El recopilador administrado ahora hace scraping de los Pods coincidentes.

Implementa la aplicación de ejemplo

El servicio administrado proporciona un manifiesto para una aplicación de ejemplo que emite métricas de Prometheus en su puerto de métricas. La aplicación usa tres réplicas.

  • Para implementar la aplicación de ejemplo, ejecuta el siguiente comando:
kubectl -n gmp-system apply -f https://raw.githubusercontent.com/GoogleCloudPlatform/prometheus-engine/main/examples/example-app.yaml Revisar si se implementó Prometheus

Tarea 3: Cloud Monitoring

Para ver tus datos de Managed Service para Prometheus como series temporales de Cloud Monitoring, usa el Explorador de métricas. Si deseas configurar el Explorador de métricas para mostrar métricas, haz lo siguiente:

  1. Desde la consola de Cloud, ve a Monitoring.
  2. En el panel de navegación de Monitoring, haz clic en Ícono del Explorador de métricas Explorador de métricas.
  3. Especifica los datos que deben aparecer en el gráfico. Para ello, puedes usar el editor de MQL.
    • Para usar la pestaña MQL, haz lo siguiente:

      a. Haz clic en PromQL en la parte superior derecha y selecciona el botón de selección MQL en una nueva Consulta.

      b. Ingresa la siguiente consulta:

      fetch prometheus_target::prometheus.googleapis.com/up/gauge

      c. Haz clic en Ejecutar consulta.

Tarea 4: Completa un gráfico

  • Ve a Monitoring > Explorador de métricas (Metrics Explorer) y crea otra consulta.

  • Selecciona el botón de selección PromQL y ejecuta la siguiente consulta haciendo clic en Ejecutar consulta (Run Query) para ver las métricas:

go_memstats_heap_alloc_bytes

Esto completará un gráfico similar a la imagen que se muestra a continuación.

promql_query

Tarea 5: Filtrar métricas exportadas

Si recopilas muchos datos, es recomendable que evites que algunas series temporales se envíen a Managed Service for Prometheus para mantener los costos bajos.

Para filtrar métricas exportadas, puedes configurar un conjunto de selectores de series de PromQL en el recurso OperatorConfig. Una serie temporal se exporta a Managed Service for Prometheus si cumple con, al menos, uno de los selectores.

  1. Abre el recurso OperatorConfig para editarlo:
kubectl -n gmp-public edit operatorconfig config
  1. Después de la línea apiVersion, presiona "i" para ingresar al modo de inserción. Ve a la última línea y presiona Intro para ir a una nueva línea. Asegúrate de que no haya sangrías al principio de la línea. Luego, pega lo siguiente:
collection: filter: matchOneOf: - '{job="prom-example"}' - '{__name__=~"job:.+"}'

El archivo debe verse de la manera siguiente.

Código de configuración del operador

  1. Para guardar el archivo y salir, presiona "Esc", escribe ":wq" y, luego, presiona Intro.

Esta adición hace que solo se exporten las métricas para el trabajo "prometheus" y las producidas por reglas de registro que se agregan al nivel del trabajo (cuando se siguen las prácticas recomendadas de asignación de nombres). Se descartan las muestras de todas las demás series temporales. De forma predeterminada, no se especifican selectores y se exportan todas las series temporales.

La sección de configuración filter.matchOneOf tiene la misma semántica que los parámetros match[] para la federación de Prometheus.

  1. Crea un archivo op-config.yaml:
vi op-config.yaml
  1. Copia lo siguiente en el archivo config.yaml:
apiVersion: monitoring.googleapis.com/v1alpha1 collection: filter: matchOneOf: - '{job="prom-example"}' - '{__name__=~"job:.+"}' kind: OperatorConfig metadata: annotations: components.gke.io/layer: addon kubectl.kubernetes.io/last-applied-configuration: | {"apiVersion":"monitoring.googleapis.com/v1alpha1","kind":"OperatorConfig","metadata":{"annotations":{"components.gke.io/layer":"addon"},"labels":{"addonmanager.kubernetes.io/mode":"Reconcile"},"name":"config","namespace":"gmp-public"}} creationTimestamp: "2022-03-14T22:34:23Z" generation: 1 labels: addonmanager.kubernetes.io/mode: Reconcile name: config namespace: gmp-public resourceVersion: "2882" uid: 4ad23359-efeb-42bb-b689-045bd704f295
  1. Sube el archivo de configuración que creaste para verificar:
export PROJECT=$(gcloud config get-value project) gsutil mb -p $PROJECT gs://$PROJECT gsutil cp op-config.yaml gs://$PROJECT gsutil -m acl set -R -a public-read gs://$PROJECT Verificar si se aplicó el filtro de métricas

Tarea 6: Ejecuta la consulta

  1. Haz clic en + Agregar consulta para crear una nueva Consulta y escribe up/gauge en el filtro de entrada Seleccionar una métrica.

  2. Selecciona la métrica de Prometheus resultante y, luego, Aplicar.

Tarea 7: Supervisa la app

  1. Crea un archivo prom-example-config.yaml que creaste para verificar:
vi prom-example-config.yaml
  1. Copia lo siguiente en el archivo:
apiVersion: monitoring.googleapis.com/v1alpha1 kind: PodMonitoring metadata: annotations: kubectl.kubernetes.io/last-applied-configuration: | {"apiVersion":"monitoring.googleapis.com/v1alpha1","kind":"PodMonitoring","metadata":{"annotations":{},"labels":{"app.kubernetes.io/name":"prom-example"},"name":"prom-example","namespace":"gmp-test"},"spec":{"endpoints":[{"interval":"30s","port":"metrics"}],"selector":{"matchLabels":{"app":"prom-example"}}}} creationTimestamp: "2022-03-14T22:33:55Z" generation: 1 labels: app.kubernetes.io/name: prom-example name: prom-example namespace: gmp-test resourceVersion: "2648" uid: c10a8507-429e-4f69-8993-0c562f9c730f spec: endpoints: - interval: 60s port: metrics selector: matchLabels: app: prom-example status: conditions: - lastTransitionTime: "2022-03-14T22:33:55Z" lastUpdateTime: "2022-03-14T22:33:55Z" status: "True" type: ConfigurationCreateSuccess observedGeneration: 1
  1. Ejecuta los siguientes comandos en Cloud Shell:
export PROJECT=$(gcloud config get-value project) gsutil cp prom-example-config.yaml gs://$PROJECT gsutil -m acl set -R -a public-read gs://$PROJECT Verificar si el intervalo de scraping cambió

De esta manera, finaliza el lab.

¡Felicitaciones!

Aprendiste a reducir los costos asociados con el uso de Managed Service para Prometheus. Implementaste Prometheus y una aplicación de ejemplo. Luego, aplicaste un filtro de métricas y cambiaste el intervalo de scraping para reducir los costos asociados con la transferencia de métricas mediante el servicio Google Managed Prometheus.

Próximos pasos y más información

Capacitación y certificación de Google Cloud

Recibe la formación que necesitas para aprovechar al máximo las tecnologías de Google Cloud. Nuestras clases incluyen habilidades técnicas y recomendaciones para ayudarte a avanzar rápidamente y a seguir aprendiendo. Para que puedas realizar nuestros cursos cuando más te convenga, ofrecemos distintos tipos de capacitación de nivel básico a avanzado: a pedido, presenciales y virtuales. Las certificaciones te ayudan a validar y demostrar tus habilidades y tu conocimiento técnico respecto a las tecnologías de Google Cloud.

Última actualización del manual: 17 de febrero de 2025

Prueba más reciente del lab: 17 de febrero de 2025

Copyright 2025 Google LLC. All rights reserved. Google y el logotipo de Google son marcas de Google LLC. Los demás nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que estén asociados.

Antes de comenzar

  1. Los labs crean un proyecto de Google Cloud y recursos por un tiempo determinado
  2. .
  3. Los labs tienen un límite de tiempo y no tienen la función de pausa. Si finalizas el lab, deberás reiniciarlo desde el principio.
  4. En la parte superior izquierda de la pantalla, haz clic en Comenzar lab para empezar

Usa la navegación privada

  1. Copia el nombre de usuario y la contraseña proporcionados para el lab
  2. Haz clic en Abrir la consola en modo privado

Accede a la consola

  1. Accede con tus credenciales del lab. Si usas otras credenciales, se generarán errores o se incurrirá en cargos.
  2. Acepta las condiciones y omite la página de recursos de recuperación
  3. No hagas clic en Finalizar lab, a menos que lo hayas terminado o quieras reiniciarlo, ya que se borrará tu trabajo y se quitará el proyecto

Este contenido no está disponible en este momento

Te enviaremos una notificación por correo electrónico cuando esté disponible

¡Genial!

Nos comunicaremos contigo por correo electrónico si está disponible

Un lab a la vez

Confirma para finalizar todos los labs existentes y comenzar este

Usa la navegación privada para ejecutar el lab

Usa una ventana de navegación privada o de Incógnito para ejecutar el lab. Así evitarás cualquier conflicto entre tu cuenta personal y la cuenta de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.