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.
Configurez un tableau de bord de surveillance Grafana pour AWS ParallelCluster
Créé par Dario La Porta (AWS) et William Lu () AWS
Référentiel de code : parallelcluster-monitoring-dashboard | Environnement : PoC ou pilote | Technologies : calcul haute performance ; analyse ; gestion et gouvernance |
Charge de travail : Open source | AWSservices : AWS ParallelCluster |
Récapitulatif
AWS ParallelCluster vous aide à déployer et à gérer des clusters de calcul haute performance (HPC). Il prend en charge les AWS planificateurs de tâches open source Batch et Slurm. Bien qu'AWS ParallelCluster il 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
Supporte la AWS ParallelCluster version 3
Utilise la dernière version des packages open source, notamment Prometheus, Grafana, Prometheus Slurm Exporter et -Exporter NVIDIA DCGM
Augmente le nombre de CPU cœurs utilisés par GPUs les tâches Slurm
Ajoute un tableau de bord de suivi des tâches
Améliore le GPU tableau de bord de surveillance des nœuds 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 HPC production du AWS client.
Conditions préalables et limitations
Prérequis
AWS ParallelCluster CLI, installé et configuré.
Configuration réseau prise en charge pour AWS ParallelCluster. Ce modèle utilise la configuration AWS ParallelCluster utilisant deux sous-réseaux, qui nécessite un sous-réseau public, un sous-réseau privé, une passerelle Internet et une passerelle. NAT
Tous les nœuds AWS ParallelCluster du cluster doivent avoir 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 dans Amazon Elastic Compute Cloud (AmazonEC2). 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.04LTS. 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 AmazonEC2, Amazon FSx for Lustre, la NAT passerelle d'Amazon VPC et Amazon Route 53.
Architecture
Architecture cible
Le schéma suivant montre comment un utilisateur peut accéder au tableau de bord de surveillance AWS ParallelCluster sur le nœud principal. Le nœud principal exécute Prometheus NICEDCV, Grafana, Prometheus Slurm Exporter, Prometheus Node Exporter et Open Source. NGINX Les nœuds de calcul exécutent Prometheus Node Exporter, et ils exécutent NVIDIA DCGM également -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.
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 mémoireCPU. Les utilisateurs accèdent au tableau de bord sur le nœud principal en utilisant SSL 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
AWSservices
NICEDCVest un protocole d'affichage à distance hautes performances qui vous permet de diffuser des postes de travail distants et des applications en streaming depuis n'importe quel cloud ou centre de données vers n'importe quel appareil, dans des conditions de réseau variables.
AWS ParallelClustervous aide à déployer et à gérer des clusters de calcul haute performance (HPC). Il prend en charge les AWS planificateurs de tâches open source Batch et Slurm.
Amazon Simple Storage Service (Amazon S3) 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 (AmazonVPC) vous aide à lancer AWS des ressources dans un réseau virtuel que vous avez défini.
Autres outils
Docker
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
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. NGINXOpen Source
est un serveur Web open source et un proxy inverse. NVIDIAData Center GPU Manager (DCGM)
est une suite d'outils permettant de gérer et de surveiller les unités de traitement graphique NVIDIA des centres de données (GPUs) dans des environnements de clusters. Dans ce modèle, vous utilisez DCGM-Exporter , qui vous permet d'exporter GPU les métriques de Prometheus. Prometheus
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 Exporter pour collecter et exporter des métriques, et vous utilisez Prometheus Node Exporter pour exporter des métriques depuis les nœuds de calcul. Ubuntu
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
Épopées
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 dans la documentation Amazon S3. | Général AWS |
Pour cloner le référentiel. | Clonez le GitHub pcluster-monitoring-dashboard
| DevOps ingénieur |
Créez un mot de passe administrateur. |
| Scriptage de scripts Linux Shell |
Copiez les fichiers requis dans le compartiment S3. | Copiez le script post_install.sh | Général AWS |
Configurez un groupe de sécurité supplémentaire pour le nœud principal. |
| AWSadministrateur |
Configurez une IAM politique 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 | AWSadministrateur |
Configurez une IAM politique 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 Si vous utilisez le fichier d'exemple fourni, remplacez les valeurs suivantes :
| AWSadministrateur |
Tâche | Description | Compétences requises |
---|---|---|
Modifiez le fichier de modèle de cluster fourni. | Créez le AWS ParallelCluster cluster. Utilisez le fichier AWS CloudFormation modèle cluster.yaml
| AWSadministrateur |
Créez le cluster . | Dans le AWS ParallelCluster CLI, 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. AWS ParallelCluster
| AWSadministrateur |
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. AWS ParallelCluster
| AWSadministrateur |
Tâche | Description | Compétences requises |
---|---|---|
Accès au portail Grafana. |
| AWSadministrateur |
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. AWS ParallelCluster
| AWSadministrateur |
Supprimez les IAM politiques. | 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 IAM politiques dans la IAM documentation. | AWSadministrateur |
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é et Supprimer un groupe de sécurité dans la VPC documentation Amazon. | AWSadministrateur |
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 dans la documentation Amazon S3. | Général AWS |
Résolution des problèmes
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 |
Certaines mesures ne contiennent aucune donnée. | Sur le nœud principal, vérifiez les journaux de tous les conteneurs. |
Ressources connexes
AWSdocumentation
Autres AWS ressources
Tableau de bord de surveillance pour AWS ParallelCluster
(article de AWS blog)
Autres ressources