

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Requête à l’aide de Grafana exécutée dans un cluster Amazon EKS
<a name="AMP-onboard-query-grafana-7.3"></a>

Amazon Managed Service for Prometheus prend en charge l’utilisation de Grafana version 7.3.5 et versions ultérieures pour l’interrogation des métriques dans un espace de travail Amazon Managed Service for Prometheus. Les versions 7.3.5 et ultérieures incluent la prise en charge de l' AWS authentification Signature Version 4 (SigV4).

Pour configurer Grafana afin qu'il fonctionne avec Amazon Managed Service for Prometheus, vous devez être connecté à un compte disposant de la **AmazonPrometheusQueryAccess**politique ou des autorisations,, et. `aps:QueryMetrics` `aps:GetMetricMetadata` `aps:GetSeries` `aps:GetLabels` Pour de plus amples informations, veuillez consulter [Autorisations et politiques IAM](AMP-and-IAM.md).

## Configurer AWS SigV4
<a name="AMP-onboard-query-grafana-7.3-sigv4"></a>

Grafana a ajouté une nouvelle fonctionnalité pour prendre en charge l'authentification AWS Signature Version 4 (SigV4). Pour plus d'informations, consultez [Processus de signature Signature Version 4](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). Cette fonctionnalité est activée par défaut sur les serveurs Grafana. Les instructions suivantes pour activer cette fonctionnalité supposent que vous utilisez Helm pour déployer Grafana sur un cluster Kubernetes.

**Pour activer SigV4 sur votre serveur Grafana 7.3.5 ou version ultérieure**

1. Créez un nouveau fichier de mise à jour pour remplacer votre configuration Grafana et nommez-le `amp_query_override_values.yaml`.

1. Entrez le contenu qui suit dans le fichier, puis enregistrez le fichier. *account-id*Remplacez-le par l'identifiant du AWS compte sur lequel le serveur Grafana est exécuté.

   ```
   serviceAccount:
       name: "amp-iamproxy-query-service-account"
       annotations:
           eks.amazonaws.com/role-arn: "arn:aws:iam::account-id:role/amp-iamproxy-query-role"
   grafana.ini:
     auth:
       sigv4_auth_enabled: true
   ```

   Dans le contenu de ce fichier YAML, `amp-iamproxy-query-role` correspond au nom du rôle que vous allez créer dans la section suivante, [Configuration de rôles IAM pour les comptes de service](#AMP-onboard-query-grafana-7.3-IRSA). Vous pouvez remplacer ce rôle par votre propre nom de rôle si vous avez déjà créé un rôle pour interroger votre espace de travail.

Vous utiliserez ce fichier ultérieurement, dans [Mise à niveau du serveur Grafana à l’aide de Helm](#AMP-onboard-query-upgrade-grafana).

## Configuration de rôles IAM pour les comptes de service
<a name="AMP-onboard-query-grafana-7.3-IRSA"></a>

Si vous utilisez un serveur Grafana dans un cluster Amazon EKS, nous vous recommandons d’utiliser des rôles IAM pour les comptes de service, également appelés rôles de service, pour votre contrôle d’accès. Lorsque vous le faites pour associer un rôle IAM à un compte de service Kubernetes, le compte de service peut alors fournir des AWS autorisations aux conteneurs de n'importe quel pod utilisant ce compte de service. Pour plus d’informations, consultez la section [Rôles IAM pour les comptes de service](https://docs.aws.amazon.com/eks/latest/userguide/iam-roles-for-service-accounts.html).

Si vous n’avez pas encore configuré ces rôles de service pour l’interrogation, suivez les instructions de la section [Configuration de rôles IAM de comptes de service pour l’interrogation des métriques](set-up-irsa.md#set-up-irsa-query) pour les configurer.

Vous devez ensuite ajouter le compte de service Grafana dans les conditions de la relation de confiance.

**Pour ajouter le compte de service Grafana dans les conditions de la relation de confiance**

1. À partir d’une fenêtre de terminal, déterminez l’espace de noms et le nom du compte de service de votre serveur Grafana. Par exemple, vous pouvez utiliser la commande suivante.

   ```
   kubectl get serviceaccounts -n grafana_namespace
   ```

1. Dans la console Amazon EKS, ouvrez le rôle IAM pour les comptes de service associés au cluster EKS.

1. Choisissez **Modifier la relation d’approbation**.

1. Mettez à jour la **condition** pour inclure l’espace de noms Grafana et le nom du compte de service Grafana obtenus dans le résultat de la commande à l’étape 1. Voici un exemple.

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Principal": {
           "Federated": "arn:aws:iam::111122223333:oidc-provider/oidc.eks.us-east-1.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE"
         },
         "Action": "sts:AssumeRoleWithWebIdentity",
         "Condition": {
           "StringEquals": {
             "oidc.eks.us-east-1.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE:sub": [
               "system:serviceaccount:aws-amp:amp-iamproxy-query-service-account",
               "system:serviceaccount:grafana-namespace:grafana-service-account-name"
             ],
             "oidc.eks.us-east-1.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE:aud": "sts.amazonaws.com"
           }
         }
       }
     ]
   }
   ```

------

1. Choisissez **Update Trust Policy (Mettre à jour la stratégie d’approbation)**.

## Mise à niveau du serveur Grafana à l’aide de Helm
<a name="AMP-onboard-query-upgrade-grafana"></a>

Cette étape met à niveau le serveur Grafana pour utiliser les entrées que vous avez ajoutées au fichier `amp_query_override_values.yaml` dans la section précédente.

Exécutez les commandes suivantes. Pour plus d’informations sur les Charts de Helm pour Grafana, consultez la section [Grafana Community Kubernetes Helm Charts](https://grafana.github.io/helm-charts).

```
helm repo add grafana https://grafana.github.io/helm-charts
```

```
helm upgrade --install grafana grafana/grafana -n grafana_namespace -f ./amp_query_override_values.yaml
```

## Ajout de la source de données Prometheus dans Grafana
<a name="AMP-onboard-query-grafana-7.3-datasource"></a>

Les étapes suivantes expliquent comment configurer la source de données Prometheus dans Grafana pour interroger vos métriques Amazon Managed Service for Prometheus.

**Pour ajouter la source de données Prometheus dans votre serveur Grafana**

1. Ouvrez la console Grafana.

1. Sous **Configurations**, sélectionnez **Sources de données**.

1. Choisissez **Add data source**.

1. Choisissez **Prometheus**.

1. Pour l’URL HTTP, spécifiez le **point de terminaison - l’URL de requête** affiché sur la page de détails de l’espace de travail de la console Amazon Managed Service for Prometheus.

1. Dans l’URL HTTP que vous venez de spécifier, supprimez la chaîne `/api/v1/query` ajoutée à l’URL, car la source de données Prometheus l’ajoutera automatiquement.

1. Sous **Auth**, sélectionnez le bouton **SigV4 Auth** pour l’activer.

   Laissez les champs **Assume Role ARN** et **External ID** vides. Ensuite, pour **Default Region**, sélectionnez la région dans laquelle se trouve votre espace de travail Amazon Managed Service for Prometheus.

1. Choisissez **Enregistrer et tester**.

   Vous devez voir le message suivant : **Data source is working**.

1. Testez une requête ProMQL sur la nouvelle source de données :

   1. Choisissez **Explore**.

   1. Exécutez un exemple de requête ProMQL tel que :

      ```
      prometheus_tsdb_head_series
      ```