Serveur gRPC

Ce document explique comment configurer votre déploiement Google Kubernetes Engine en vue d'utiliser Google Cloud Managed Service pour Prometheus afin de collecter des métriques à partir des requêtes gRPC diffusées par votre application. Cette page explique comment effectuer les opérations suivantes :

Ces instructions ne s'appliquent que si vous utilisez une collecte gérée avec Managed Service pour Prometheus.

Pour en savoir plus sur gRPC, consultez la page grpc.io.

Configurer

Pour collecter des métriques à partir de votre serveur gRPC, vous devez configurer le middleware gRPC approprié.

Pour vérifier que votre serveur gRPC émet des métriques sur les points de terminaison attendus, procédez comme suit :

  1. Configurez le transfert de port à l'aide de la commande suivante :
    kubectl -n NAMESPACE_NAME port-forward deploy/GRPC_SERVER_DEPLOYMENT_NAME PROMETHEUS_PORT_NUMBER
      
  2. Accédez à localhost:PROMETHEUS_PORT_NUMBER à l'aide du navigateur ou de l'utilitaire curl dans une autre session de terminal.

Définir une ressource PodMonitoring

Pour la découverte des cibles, l'opérateur Managed Service pour Prometheus doit disposer d'une ressource PodMonitoring correspondant au serveur gRPC dans le même espace de noms.

Vous pouvez utiliser la configuration PodMonitoring suivante :

apiVersion: monitoring.googleapis.com/v1
kind: PodMonitoring
metadata:
  name: my-prometheus-grpc-app
  labels:
    app.kubernetes.io/name: my-prometheus-grpc-app
    app.kubernetes.io/part-of: google-cloud-managed-prometheus
spec:
  endpoints:
  - port: prometheus
    scheme: http
    interval: 30s
    path: /metrics
  selector:
    matchLabels:
      app.kubernetes.io/name: my-prometheus-grpc-app

Assurez-vous que les valeurs des champs port et MatchLabels correspondent à celles de l'application gRPC que vous souhaitez surveiller.

Pour appliquer les modifications de configuration à partir d'un fichier local, exécutez la commande suivante :

kubectl apply -n NAMESPACE_NAME -f FILE_NAME

Vous pouvez également utiliser Terraform pour gérer vos configurations.

Afficher les métriques d'application

Pour afficher les métriques de requête, de taux d'erreur et de latence depuis votre application gRPC, procédez comme suit :

  1. Dans la console Google Cloud, accédez à la page Charges de travail.

    Accéder à la page Charges de travail

    Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Kubernetes Engine.

  2. Cliquez sur un déploiement dans la liste des charges de travail. La colonne Type de la liste indique le type de charge de travail.
  3. Sur la page Informations sur le déploiement, cliquez sur l'onglet Observabilité.
  4. Sélectionnez Application dans le sélecteur de tableau de bord.

Pour en savoir plus, consultez la page Utiliser les métriques de performances des applications.

Dépannage

Pour en savoir plus sur la résolution des problèmes d'ingestion de métriques dans Managed Service pour Prometheus, consultez la section Problèmes liés à la collecte par les exportateurs dans la section Résoudre les problèmes côté ingestion.