arrow_back

Réduire les coûts de Managed Service pour Prometheus

Accédez à plus de 700 ateliers et cours

Réduire les coûts de Managed Service pour Prometheus

Atelier 1 heure 30 minutes universal_currency_alt 1 crédit show_chart Débutant
info Cet atelier peut intégrer des outils d'IA pour vous accompagner dans votre apprentissage.
Accédez à plus de 700 ateliers et cours

GSP1027

Logo des ateliers d'auto-formation Google Cloud

Présentation

Le service Google Cloud Managed Service pour Prometheus facture le nombre d'échantillons ingérés dans Cloud Monitoring et les requêtes de lecture adressées à l'API Monitoring. Le nombre d'échantillons ingérés est le principal facteur de coût.

Dans cet atelier, vous allez découvrir les mécanismes de contrôle des coûts lorsque vous utilisez Managed Service pour Prometheus sur Google Cloud.

Objectifs

Dans cet atelier, vous allez apprendre à effectuer les tâches suivantes :

  • Déployer Google Managed Prometheus (GMP) dans un cluster Google Kubernetes Engine (GKE) ainsi qu'une application Python
  • Réduire le nombre de métriques de séries temporelles que vous envoyez au service géré en filtrant les données de métriques générées
  • Réduire le nombre d'échantillons collectés en modifiant l'intervalle de scraping

Préparation

Avant de cliquer sur le bouton "Démarrer l'atelier"

Lisez ces instructions. Les ateliers sont minutés, et vous ne pouvez pas les mettre en pause. Le minuteur, qui démarre lorsque vous cliquez sur Démarrer l'atelier, indique combien de temps les ressources Google Cloud resteront accessibles.

Cet atelier pratique vous permet de suivre les activités dans un véritable environnement cloud, et non dans un environnement de simulation ou de démonstration. Des identifiants temporaires vous sont fournis pour vous permettre de vous connecter à Google Cloud le temps de l'atelier.

Pour réaliser cet atelier :

  • Vous devez avoir accès à un navigateur Internet standard (nous vous recommandons d'utiliser Chrome).
Remarque : Ouvrez une fenêtre de navigateur en mode incognito (recommandé) ou de navigation privée pour effectuer cet atelier. Vous éviterez ainsi les conflits entre votre compte personnel et le compte temporaire de participant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.
  • Vous disposez d'un temps limité. N'oubliez pas qu'une fois l'atelier commencé, vous ne pouvez pas le mettre en pause.
Remarque : Utilisez uniquement le compte de participant pour cet atelier. Si vous utilisez un autre compte Google Cloud, des frais peuvent être facturés à ce compte.

Démarrer l'atelier et se connecter à la console Google Cloud

  1. Cliquez sur le bouton Démarrer l'atelier. Si l'atelier est payant, une boîte de dialogue s'affiche pour vous permettre de sélectionner un mode de paiement. Sur la gauche, vous trouverez le panneau "Détails concernant l'atelier", qui contient les éléments suivants :

    • Le bouton "Ouvrir la console Google Cloud"
    • Le temps restant
    • Les identifiants temporaires que vous devez utiliser pour cet atelier
    • Des informations complémentaires vous permettant d'effectuer l'atelier
  2. Cliquez sur Ouvrir la console Google Cloud (ou effectuez un clic droit et sélectionnez Ouvrir le lien dans la fenêtre de navigation privée si vous utilisez le navigateur Chrome).

    L'atelier lance les ressources, puis ouvre la page "Se connecter" dans un nouvel onglet.

    Conseil : Réorganisez les onglets dans des fenêtres distinctes, placées côte à côte.

    Remarque : Si la boîte de dialogue Sélectionner un compte s'affiche, cliquez sur Utiliser un autre compte.
  3. Si nécessaire, copiez le nom d'utilisateur ci-dessous et collez-le dans la boîte de dialogue Se connecter.

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

    Vous trouverez également le nom d'utilisateur dans le panneau "Détails concernant l'atelier".

  4. Cliquez sur Suivant.

  5. Copiez le mot de passe ci-dessous et collez-le dans la boîte de dialogue Bienvenue.

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

    Vous trouverez également le mot de passe dans le panneau "Détails concernant l'atelier".

  6. Cliquez sur Suivant.

    Important : Vous devez utiliser les identifiants fournis pour l'atelier. Ne saisissez pas ceux de votre compte Google Cloud. Remarque : Si vous utilisez votre propre compte Google Cloud pour cet atelier, des frais supplémentaires peuvent vous être facturés.
  7. Accédez aux pages suivantes :

    • Acceptez les conditions d'utilisation.
    • N'ajoutez pas d'options de récupération ni d'authentification à deux facteurs (ce compte est temporaire).
    • Ne vous inscrivez pas à des essais sans frais.

Après quelques instants, la console Cloud s'ouvre dans cet onglet.

Remarque : Pour accéder aux produits et services Google Cloud, cliquez sur le menu de navigation ou saisissez le nom du service ou du produit dans le champ Recherche. Icône du menu de navigation et champ de recherche

Activer Cloud Shell

Cloud Shell est une machine virtuelle qui contient de nombreux outils pour les développeurs. Elle comprend un répertoire d'accueil persistant de 5 Go et s'exécute sur Google Cloud. Cloud Shell vous permet d'accéder via une ligne de commande à vos ressources Google Cloud.

  1. Cliquez sur Activer Cloud Shell Icône Activer Cloud Shell en haut de la console Google Cloud.

  2. Passez les fenêtres suivantes :

    • Accédez à la fenêtre d'informations de Cloud Shell.
    • Autorisez Cloud Shell à utiliser vos identifiants pour effectuer des appels d'API Google Cloud.

Une fois connecté, vous êtes en principe authentifié et le projet est défini sur votre ID_PROJET : . Le résultat contient une ligne qui déclare l'ID_PROJET pour cette session :

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

gcloud est l'outil de ligne de commande pour Google Cloud. Il est préinstallé sur Cloud Shell et permet la complétion par tabulation.

  1. (Facultatif) Vous pouvez lister les noms des comptes actifs à l'aide de cette commande :
gcloud auth list
  1. Cliquez sur Autoriser.

Résultat :

ACTIVE: * ACCOUNT: {{{user_0.username | "ACCOUNT"}}} To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (Facultatif) Vous pouvez lister les ID de projet à l'aide de cette commande :
gcloud config list project

Résultat :

[core] project = {{{project_0.project_id | "PROJECT_ID"}}} Remarque : Pour consulter la documentation complète sur gcloud, dans Google Cloud, accédez au guide de présentation de la gcloud CLI.

Tâche 1 : Déployer un cluster GKE

  • Déployer un cluster GKE de base pour configurer l'atelier :
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}}}

Tâche 2 : Déployer la collecte gérée

Configurer une ressource PodMonitoring

Le fichier manifeste suivant définit une ressource PodMonitoring, prom-example, dans l'espace de noms gmp-test. La ressource utilise un sélecteur d'étiquettes Kubernetes pour trouver tous les pods de l'espace de noms portant l'étiquette app avec la valeur prom-example. Les pods correspondants sont scrapés sur un port nommé metrics, toutes les 30 secondes, sur le chemin 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
  • Pour appliquer cette ressource, exécutez la commande suivante :
kubectl -n gmp-system apply -f https://raw.githubusercontent.com/GoogleCloudPlatform/prometheus-engine/main/examples/self-pod-monitoring.yaml

Votre collecteur géré scrape désormais les pods correspondants.

Déployer l'exemple d'application

Le service géré fournit un fichier manifeste pour un exemple d'application qui émet des métriques Prometheus sur son port "metrics". L'application utilise trois instances répliquées.

  • Pour déployer l'exemple d'application, exécutez la commande suivante :
kubectl -n gmp-system apply -f https://raw.githubusercontent.com/GoogleCloudPlatform/prometheus-engine/main/examples/example-app.yaml Vérifier si Prometheus a été déployé

Tâche 3 : Cloud Monitoring

Pour afficher les données Managed Service pour Prometheus en tant que séries temporelles Cloud Monitoring, utilisez l'explorateur de métriques. Pour configurer l'explorateur de métriques afin d'afficher les métriques, procédez comme suit :

  1. Depuis Cloud Console, accédez à la page Monitoring.
  2. Dans le volet de navigation "Monitoring", cliquez sur Icône de l'explorateur de métriques Explorateur de métriques.
  3. Spécifiez les données à afficher dans le graphique. Pour cela, vous pouvez utiliser l'éditeur MQL.
    • Pour utiliser l'onglet MQL, procédez comme suit :

      a. Cliquez sur PromQL en haut à droite et sélectionnez l'option radio MQL dans une nouvelle requête.

      b. Saisissez la requête suivante :

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

      c. Cliquez sur Exécuter la requête.

Tâche 4 : Remplir un graphique

  • Accédez à Monitoring > Explorateur de métriques et créez une autre requête.

  • Sélectionnez l'option PromQL et exécutez la requête ci-dessous en cliquant sur Exécuter la requête pour afficher les métriques :

go_memstats_heap_alloc_bytes

Un graphique semblable à celui ci-dessous s'affiche lorsque vous sélectionnez cette option.

promql_query

Tâche 5 : Filtrer les métriques exportées

Si vous collectez une grande quantité de données, vous pouvez empêcher l'envoi de certaines séries temporelles à Managed Service pour Prometheus afin de limiter les coûts.

Pour filtrer les métriques exportées, vous pouvez configurer un ensemble de sélecteurs de séries PromQL dans la ressource OperatorConfig. Une série temporelle est exportée vers Managed Service pour Prometheus si elle répond à au moins l'un des sélecteurs.

  1. Ouvrez la ressource OperatorConfig pour la modifier :
kubectl -n gmp-public edit operatorconfig config
  1. Après la ligne "apiVersion", appuyez sur "i" pour passer en mode Insertion. Accédez à la dernière ligne et appuyez sur Entrée pour passer à la ligne suivante. Assurez-vous qu'il n'y a pas de retrait au début de la ligne. Collez ensuite le code suivant :
collection: filter: matchOneOf: - '{job="prom-example"}' - '{__name__=~"job:.+"}'

Le fichier doit se présenter comme illustré ci-dessous.

Code de configuration de l'opérateur

  1. Pour enregistrer le fichier et quitter l'éditeur, appuyez sur Échap, puis saisissez :wq et appuyez sur Entrée.

Cet ajout génère uniquement les métriques de la tâche "prometheus", ainsi que les métriques produites par les règles d'enregistrement agrégées au niveau de la tâche à exporter (en suivant les bonnes pratiques de dénomination). Les échantillons de toutes les autres séries temporelles sont filtrés. Par défaut, aucun sélecteur n'est spécifié et toutes les séries temporelles sont exportées.

La section de configuration filter.matchOneOf possède la même sémantique que les paramètres match[] pour la fédération Prometheus.

  1. Créez un fichier op-config.yaml :
vi op-config.yaml
  1. Copiez ce qui suit dans le fichier op-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. Importez le fichier de configuration que vous avez créé pour vérifier :
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 Vérifier si le filtre de métriques a été appliqué

Tâche 6 : Exécuter la requête

  1. Cliquez sur + Ajouter une requête pour créer une requête, puis saisissez up/gauge dans le filtre de saisie Sélectionner une métrique.

  2. Sélectionnez la métrique Prometheus obtenue, puis cliquez sur Appliquer.

Tâche 7 : Surveiller l'application

  1. Créez un fichier prom-example-config.yaml pour vérifier :
vi prom-example-config.yaml
  1. Copiez ce qui suit dans le fichier :
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. Exécutez les commandes suivantes dans 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 Vérifier si l'intervalle de scraping a été modifié

Cet atelier est maintenant terminé.

Félicitations

Vous avez appris à réduire les coûts associés à l'utilisation de Managed Service pour Prometheus. Vous avez déployé Prometheus et un exemple d'application. Ensuite, vous avez appliqué un filtre de métriques et modifié l'intervalle d'extraction pour réduire les coûts associés à l'ingestion de métriques à l'aide du service Google Managed Prometheus.

Étapes suivantes et informations supplémentaires

Formations et certifications Google Cloud

Les formations et certifications Google Cloud vous aident à tirer pleinement parti des technologies Google Cloud. Nos cours portent sur les compétences techniques et les bonnes pratiques à suivre pour être rapidement opérationnel et poursuivre votre apprentissage. Nous proposons des formations pour tous les niveaux, à la demande, en salle et à distance, pour nous adapter aux emplois du temps de chacun. Les certifications vous permettent de valider et de démontrer vos compétences et votre expérience en matière de technologies Google Cloud.

Dernière mise à jour du manuel : 17 février 2025

Dernier test de l'atelier : 17 février 2025

Copyright 2025 Google LLC. Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms d'entreprises et de produits peuvent être des marques des entreprises auxquelles ils sont associés.

Avant de commencer

  1. Les ateliers créent un projet Google Cloud et des ressources pour une durée déterminée.
  2. Les ateliers doivent être effectués dans le délai imparti et ne peuvent pas être mis en pause. Si vous quittez l'atelier, vous devrez le recommencer depuis le début.
  3. En haut à gauche de l'écran, cliquez sur Démarrer l'atelier pour commencer.

Utilisez la navigation privée

  1. Copiez le nom d'utilisateur et le mot de passe fournis pour l'atelier
  2. Cliquez sur Ouvrir la console en navigation privée

Connectez-vous à la console

  1. Connectez-vous à l'aide des identifiants qui vous ont été attribués pour l'atelier. L'utilisation d'autres identifiants peut entraîner des erreurs ou des frais.
  2. Acceptez les conditions d'utilisation et ignorez la page concernant les ressources de récupération des données.
  3. Ne cliquez pas sur Terminer l'atelier, à moins que vous n'ayez terminé l'atelier ou que vous ne vouliez le recommencer, car cela effacera votre travail et supprimera le projet.

Ce contenu n'est pas disponible pour le moment

Nous vous préviendrons par e-mail lorsqu'il sera disponible

Parfait !

Nous vous contacterons par e-mail s'il devient disponible

Un atelier à la fois

Confirmez pour mettre fin à tous les ateliers existants et démarrer celui-ci

Utilisez la navigation privée pour effectuer l'atelier

Ouvrez une fenêtre de navigateur en mode navigation privée pour effectuer cet atelier. Vous éviterez ainsi les conflits entre votre compte personnel et le compte temporaire de participant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.