

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.

# Configurer un tableau de bord de surveillance Grafana pour AWS ParallelCluster
<a name="set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster"></a>

*Dario La Porta et William Lu, Amazon Web Services*

## Résumé
<a name="set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster-summary"></a>

AWS vous ParallelCluster aide à déployer et à gérer des clusters de calcul haute performance (HPC). Il prend en charge les planificateurs de tâches open source AWS Batch et Slurm. Bien qu'AWS ParallelCluster soit intégré à Amazon CloudWatch pour la journalisation et les métriques, il ne fournit pas de tableau de bord de surveillance pour la charge de travail.

Le tableau de [bord Grafana pour AWS ParallelCluster](https://github.com/aws-samples/aws-parallelcluster-monitoring) (GitHub) est un tableau de bord de surveillance pour AWS. ParallelCluster Il fournit des informations sur le planificateur de tâches et des mesures de surveillance détaillées au niveau du système d'exploitation (OS). Pour plus d'informations sur les tableaux de bord inclus dans cette solution, consultez la section [Exemples de tableaux](https://github.com/aws-samples/aws-parallelcluster-monitoring#example-dashboards) de bord dans le GitHub référentiel. Ces indicateurs vous aident à mieux comprendre la charge de travail HPC et ses performances. Cependant, le code du tableau de bord n'est pas mis à jour pour les dernières versions d'AWS ParallelCluster ni pour les packages open source utilisés dans la solution. Ce modèle améliore la solution pour offrir les avantages suivants :
+ Compatible avec AWS ParallelCluster v3
+ Utilise la dernière version des packages open source, notamment Prometheus, Grafana, Prometheus Slurm Exporter et NVIDIA DCGM-Exporter
+ Augmente le nombre de cœurs de processeur utilisés par GPUs les tâches Slurm
+ Ajoute un tableau de bord de suivi des tâches
+ Améliore le tableau de bord de surveillance des nœuds GPU pour les nœuds dotés de 4 ou 8 unités de traitement graphique (GPUs)

Cette version de la solution améliorée a été mise en œuvre et vérifiée dans l'environnement de production HPC d'un client AWS.

## Conditions préalables et limitations
<a name="set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster-prereqs"></a>

**Conditions préalables**
+ [ ParallelCluster CLI AWS](https://docs.aws.amazon.com/parallelcluster/latest/ug/pcluster-v3.html), installée et configurée.
+ [Configuration réseau](https://docs.aws.amazon.com/parallelcluster/latest/ug/iam-roles-in-parallelcluster-v3.html) prise en charge pour AWS ParallelCluster. Ce modèle utilise l'[AWS ParallelCluster en utilisant une configuration de deux sous-réseaux](https://docs.aws.amazon.com/parallelcluster/latest/ug/network-configuration-v3.html#network-configuration-v3-two-subnets), qui nécessite un sous-réseau public, un sous-réseau privé, une passerelle Internet et une passerelle NAT.
+ Tous les nœuds ParallelCluster du cluster AWS doivent disposer d'un accès à Internet. Cela est nécessaire pour que les scripts d'installation puissent télécharger le logiciel open source et les images Docker.
+ Une [paire de clés](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) dans Amazon Elastic Compute Cloud (Amazon EC2). Les ressources dotées de cette paire de clés ont un accès Secure Shell (SSH) au nœud principal.

**Limites**
+ Ce modèle est conçu pour prendre en charge Ubuntu 20.04 LTS. Si vous utilisez une autre version d'Ubuntu ou si vous utilisez Amazon Linux ou CentOS, vous devez modifier les scripts fournis avec cette solution. Ces modifications ne sont pas incluses dans ce modèle.

**Versions du produit**
+ Ubuntu 20.04 LTS
+ ParallelCluster 3. X

**Considérations relatives à la facturation et aux coûts**
+ La solution déployée selon ce modèle n'est pas couverte par le niveau gratuit. Des frais s'appliquent pour Amazon EC2, Amazon FSx for Lustre, la passerelle NAT d'Amazon VPC et Amazon Route 53.

## Architecture
<a name="set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster-architecture"></a>

**Architecture cible**

Le schéma suivant montre comment un utilisateur peut accéder au tableau de bord de surveillance d'AWS ParallelCluster sur le nœud principal. Le nœud principal exécute NICE DCV, Prometheus, Grafana, Prometheus Slurm Exporter, Prometheus Node Exporter et NGINX Open Source. Les nœuds de calcul exécutent Prometheus Node Exporter, et ils exécutent également NVIDIA DCGM-Exporter si le nœud contient. GPUs Le nœud principal récupère les informations des nœuds de calcul et affiche ces données dans le tableau de bord Grafana.

![\[Accès au tableau de bord de surveillance pour AWS ParallelCluster sur le nœud principal.\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/images/pattern-img/a2132c94-98e0-4b90-8be0-99ebfa546442/images/d2255792-f66a-4ef2-8f04-cc3d5482db5f.png)


Dans la plupart des cas, le nœud principal n'est pas très chargé car le planificateur de tâches ne nécessite pas une quantité importante de processeur ou de mémoire. Les utilisateurs accèdent au tableau de bord sur le nœud principal en utilisant le protocole SSL sur le port 443.

Tous les spectateurs autorisés peuvent consulter les tableaux de bord de surveillance de manière anonyme. Seul l'administrateur de Grafana peut modifier les tableaux de bord. Vous configurez un mot de passe pour l'administrateur Grafana dans le `aws-parallelcluster-monitoring/docker-compose/docker-compose.head.yml` fichier.

## Outils
<a name="set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster-tools"></a>

**Services AWS**
+ [NICE DCV](https://docs.aws.amazon.com/dcv/#nice-dcv) est un protocole d'affichage à distance hautes performances qui vous permet de diffuser des postes de travail distants et des applications depuis n'importe quel cloud ou centre de données vers n'importe quel appareil, dans des conditions de réseau variables.
+ [AWS](https://docs.aws.amazon.com/parallelcluster/latest/ug/what-is-aws-parallelcluster.html) vous ParallelCluster aide à déployer et à gérer des clusters de calcul haute performance (HPC). Il prend en charge les planificateurs de tâches open source AWS Batch et Slurm.
+ [Amazon Simple Storage Service (Amazon S3)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html) est un service de stockage d'objets basé sur le cloud qui vous permet de stocker, de protéger et de récupérer n'importe quel volume de données.
+ [Amazon Virtual Private Cloud (Amazon VPC)](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) vous aide à lancer des ressources AWS dans un réseau virtuel que vous avez défini.

**Autres outils**
+ [Docker](https://www.docker.com/) est un ensemble de produits de plateforme en tant que service (PaaS) qui utilisent la virtualisation au niveau du système d'exploitation pour fournir des logiciels dans des conteneurs.
+ [Grafana](https://grafana.com/docs/grafana/latest/introduction/) est un logiciel open source qui vous permet d'interroger, de visualiser, d'alerter et d'explorer les métriques, les journaux et les traces.
+ [NGINX Open Source](https://nginx.org/en/docs/?_ga=2.187509224.1322712425.1699399865-405102969.1699399865) est un serveur Web open source et un proxy inverse.
+ [NVIDIA Data Center GPU Manager (DCGM)](https://docs.nvidia.com/data-center-gpu-manager-dcgm/index.html) est une suite d'outils permettant de gérer et de surveiller les unités de traitement graphique des centres de données NVIDIA (GPUs) dans des environnements de clusters. Dans ce modèle, vous utilisez [DCGM-Exporter](https://github.com/NVIDIA/dcgm-exporter), qui vous permet d'exporter les métriques du GPU depuis Prometheus.
+ [Prometheus](https://prometheus.io/docs/introduction/overview/) *est une boîte à outils open source de surveillance des systèmes qui collecte et stocke ses métriques sous forme de séries chronologiques associées à des paires clé-valeur, appelées étiquettes.* Dans ce modèle, vous utilisez également [Prometheus Slurm](https://github.com/vpenso/prometheus-slurm-exporter) Exporter pour collecter et exporter des métriques, et vous utilisez Prometheus Node Exporter pour exporter des métriques depuis les [nœuds](https://github.com/prometheus/node_exporter) de calcul.
+ [Ubuntu](https://help.ubuntu.com/) est un système d'exploitation open source basé sur Linux conçu pour les serveurs d'entreprise, les ordinateurs de bureau, les environnements cloud et l'IoT.

**Référentiel de code**

Le code de ce modèle est disponible dans le GitHub [pcluster-monitoring-dashboard](https://github.com/aws-samples/parallelcluster-monitoring-dashboard)référentiel.

## Épopées
<a name="set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster-epics"></a>

### Créez les ressources nécessaires
<a name="create-the-required-resources"></a>


| Sous-tâche | Description | Compétences requises | 
| --- | --- | --- | 
| Créez un compartiment S3. | Créez un compartiment Amazon S3. Vous utilisez ce compartiment pour stocker les scripts de configuration. Pour obtenir des instructions, consultez [la section Création d'un compartiment](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) dans la documentation Amazon S3. | AWS général | 
| Pour cloner le référentiel. | Clonez le GitHub [pcluster-monitoring-dashboard](https://github.com/aws-samples/parallelcluster-monitoring-dashboard/tree/main/aws-parallelcluster-monitoring)dépôt en exécutant la commande suivante.<pre>git clone https://github.com/aws-samples/parallelcluster-monitoring-dashboard.git</pre> | DevOps ingénieur | 
| Créez un mot de passe administrateur. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster.html) | Scriptage de scripts Linux Shell | 
| Copiez les fichiers requis dans le compartiment S3. | Copiez le script [post\$1install.sh](https://github.com/aws-samples/parallelcluster-monitoring-dashboard/blob/main/post_install.sh) et le [aws-parallelcluster-monitoring](https://github.com/aws-samples/parallelcluster-monitoring-dashboard/tree/main/aws-parallelcluster-monitoring)dossier dans le compartiment S3 que vous avez créé. Pour obtenir des instructions, consultez la section [Chargement d'objets](https://docs.aws.amazon.com/AmazonS3/latest/userguide/upload-objects.html) dans la documentation Amazon S3. | AWS général | 
| Configurez un groupe de sécurité supplémentaire pour le nœud principal. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster.html) | Administrateur AWS | 
| Configurez une politique IAM pour le nœud principal. | Créez une politique basée sur l'identité pour le nœud principal. Cette politique permet au nœud de récupérer des données métriques auprès d'Amazon CloudWatch. Le GitHub dépôt contient un exemple de [politique](https://github.com/aws-samples/parallelcluster-monitoring-dashboard/blob/main/policies/head_node.json). Pour obtenir des instructions, consultez [la section Création de politiques IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) dans la documentation AWS Identity and Access Management (IAM). | Administrateur AWS | 
| Configurez une politique IAM pour les nœuds de calcul. | Créez une politique basée sur l'identité pour les nœuds de calcul. Cette politique permet au nœud de créer les balises contenant l'ID de la tâche et le propriétaire de la tâche. Le GitHub dépôt contient un exemple de [politique](https://github.com/aws-samples/parallelcluster-monitoring-dashboard/blob/main/policies/compute_node.json). Pour obtenir des instructions, consultez [la section Création de politiques IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) dans la documentation IAM.Si vous utilisez le fichier d'exemple fourni, remplacez les valeurs suivantes :[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster.html) | Administrateur AWS | 

### Créer le cluster
<a name="create-the-cluster"></a>


| Sous-tâche | Description | Compétences requises | 
| --- | --- | --- | 
| Modifiez le fichier de modèle de cluster fourni. | Créez le ParallelCluster cluster AWS. Utilisez le fichier modèle CloudFormation AWS [cluster.yaml](https://github.com/aws-samples/parallelcluster-monitoring-dashboard/blob/main/cluster.yaml) fourni comme point de départ pour créer le cluster. Remplacez les valeurs suivantes dans le modèle fourni :[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster.html) | Administrateur AWS | 
| Créez le cluster. | Dans la ParallelCluster CLI AWS, entrez la commande suivante. Cela déploie le CloudFormation modèle et crée le cluster. Pour plus d'informations sur cette commande, consultez [pcluster create-cluster dans la documentation](https://docs.aws.amazon.com/parallelcluster/latest/ug/pcluster.create-cluster-v3.html) AWS. ParallelCluster <pre>pcluster create-cluster -n <cluster_name> -c cluster.yaml</pre> | Administrateur AWS | 
| Surveillez la création du cluster. | Entrez la commande suivante pour surveiller la création du cluster. Pour plus d'informations sur cette commande, consultez [pcluster describe-cluster dans la documentation](https://docs.aws.amazon.com/parallelcluster/latest/ug/pcluster.describe-cluster-v3.html) AWS. ParallelCluster <pre>pcluster describe-cluster -n <cluster_name></pre> | Administrateur AWS | 

### Utilisation des tableaux de bord Grafana
<a name="using-the-grafana-dashboards"></a>


| Sous-tâche | Description | Compétences requises | 
| --- | --- | --- | 
| Accès au portail Grafana. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster.html) | Administrateur AWS | 

### Nettoyez la solution pour ne plus encourir de coûts associés
<a name="clean-up-the-solution-to-stop-incurring-associated-costs"></a>


| Sous-tâche | Description | Compétences requises | 
| --- | --- | --- | 
| Supprimez le cluster. | Entrez la commande suivante pour supprimer le cluster. Pour plus d'informations sur cette commande, consultez [pcluster delete-cluster dans la documentation](https://docs.aws.amazon.com/parallelcluster/latest/ug/pcluster.delete-cluster-v3.html) AWS. ParallelCluster <pre>pcluster delete-cluster -n <cluster_name></pre> | Administrateur AWS | 
| Supprimez les politiques IAM. | Supprimez les politiques que vous avez créées pour le nœud principal et le nœud de calcul. Pour plus d'informations sur la suppression de politiques, consultez [la section Suppression de politiques IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-delete.html) dans la documentation IAM. | Administrateur AWS | 
| Supprimez le groupe de sécurité et la règle. | Supprimez le groupe de sécurité que vous avez créé pour le nœud principal. Pour plus d'informations, consultez [Supprimer les règles du groupe de sécurité](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-security-groups.html#deleting-security-group-rules) et [Supprimer un groupe de sécurité](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-security-groups.html#deleting-security-groups) dans la documentation Amazon VPC. | Administrateur AWS | 
| Supprimez le compartiment S3. | Supprimez le compartiment S3 que vous avez créé pour stocker les scripts de configuration. Pour plus d'informations, consultez [Supprimer un compartiment](https://docs.aws.amazon.com/AmazonS3/latest/userguide/delete-bucket.html) dans la documentation Amazon S3. | AWS général | 

## Résolution des problèmes
<a name="set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster-troubleshooting"></a>


| Problème | Solution | 
| --- | --- | 
| Le nœud principal n'est pas accessible dans le navigateur. | Vérifiez le groupe de sécurité et confirmez que le port entrant 443 est ouvert. | 
| Grafana ne s'ouvre pas. | Sur le nœud principal, vérifiez le journal du conteneur pour`docker logs Grafana`. | 
| Certaines mesures ne contiennent aucune donnée. | Sur le nœud principal, vérifiez les journaux de tous les conteneurs. | 

## Ressources connexes
<a name="set-up-a-grafana-monitoring-dashboard-for-aws-parallelcluster-resources"></a>

**Documentation AWS**
+ [Politiques IAM pour Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-policies-for-amazon-ec2.html)

**Autres ressources AWS**
+ [AWS ParallelCluster](https://aws.amazon.com/hpc/parallelcluster/)
+ [Tableau de bord de surveillance pour AWS ParallelCluster](https://aws.amazon.com/blogs/compute/monitoring-dashboard-for-aws-parallelcluster/) (article de blog AWS)

**Autres ressources**
+ [Système de surveillance Prometheus](https://prometheus.io/)
+ [Grafana](https://grafana.com/)