Configurer CloudWatch l'agent pour Amazon EMR 7.0.0 - Amazon EMR

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 CloudWatch l'agent pour Amazon EMR 7.0.0

Vous pouvez configurer l' CloudWatch agent Amazon pour utiliser des métriques système supplémentaires au-delà de celles fournies par la configuration de l' CloudWatch agent par défaut. La configuration de la version 7.0.0 requiert l’utilisation d’actions d’amorçage, dont nous avons fourni des exemples dans les sections suivantes. Dans une prochaine version, Amazon EMR fournira des options de configuration supplémentaires via l’API Amazon EMR.

Configurer des métriques système supplémentaires avec Amazon EMR 7.0.0

Pour configurer l’agent afin d’utiliser un ensemble différent de métriques système dans Amazon EMR 7.0.0, procédez comme suit :

  1. Créez ou choisissez un compartiment dans votre compte Amazon S3 dans lequel vous souhaitez stocker les fichiers de configuration qui spécifient les métriques de l' CloudWatch agent.

  2. Créez le fichier de configuration emr-amazon-cloudwatch-agent.json en spécifiant vos métriques préférées. Pour ce faire, utilisez l'une des méthodes expliquées dans la section Création du fichier de configuration de l' CloudWatch agent. Pour plus d'informations sur la structure du fichier de configuration de l' CloudWatch agent, voir Création ou modification manuelle du fichier de configuration de l' CloudWatch agent dans le guide de CloudWatch l'utilisateur Amazon.

  3. Accédez ensuite au aws-emr-utilities dépôt GitHub et téléchargez les scripts de métriques système suivants :

    • install_system_metrics_launcher.sh – Script qui télécharge et exécute install_system_metrics.sh en arrière-plan pour que le nœud puisse terminer l’amorçage.

    • install_system_metrics.sh – Script qui attend que l’instance qu’il exécute termine l’amorçage, puis télécharge et applique la configuration dans le fichier JSON.

  4. Ouvrez chaque fichier SH et remplacez my-s3-bucket par le nom de votre compartiment indiqué à l’étape 1.

  5. Chargez un fichier JSON et deux fichiers SH dans votre compartiment S3.

  6. Vous pouvez désormais accéder à la console Amazon EMR et créer un nouveau cluster avec l' CloudWatch agent. Dans le volet de navigation de gauche, sous EMR sur EC2, sélectionnez Clusters, puis Créer un cluster.

  7. Dans la section Nom et applications, choisissez Amazon EMR 7.0.0 ou version ultérieure.

  8. Sous Ensemble d'applications, sélectionnez le ou les applications que vous souhaitez installer sur votre cluster et incluez Amazon CloudWatch Agent dans vos sélections.

  9. Dans la section Actions d’amorçage, sélectionnez Ajouter.

    • Pour le Nom, insérez install_system_metrics_launcher.sh.

    • Pour l’Emplacement du script, insérez s3://my-s3-bucket/install_system_metrics_launcher.sh. Remplacez my-s3-bucket par le chemin de votre compartiment S3.

    • Laissez le bloc Arguments vide.

  10. Sélectionnez Ajouter une action d'amorçage.

  11. Continuez à créer le cluster pour répondre à vos besoins en matière de charge de travail.

Lorsque votre cluster est lancé, l' CloudWatch agent publie les métriques système que vous avez spécifiées dans le fichier de configuration sur CloudWatch.

Configurer les métriques d’application avec Amazon EMR 7.0.0

Vous pouvez configurer l' CloudWatch agent Amazon pour publier des métriques d'application pour HDFS et YARN en plus des métriques du système. Pour configurer l’agent de sorte à publier des métriques d’application, procédez comme suit :

  1. Créez ou choisissez un compartiment dans votre compte Amazon S3 dans lequel vous souhaitez stocker les fichiers de configuration qui spécifient les métriques de l' CloudWatch agent.

  2. Accédez ensuite au aws-emr-utilities dépôt GitHub et téléchargez les scripts suivants :

    • install_app_metrics_launcher.sh – Script qui télécharge et exécute install_app_metrics.sh en arrière-plan pour que le nœud puisse terminer l’amorçage.

    • install_app_metrics.sh – Script qui attend que l’instance qu’il exécute termine l’amorçage, puis télécharge et applique la configuration dans les fichiers YAML que vous allez télécharger lors d’une prochaine étape.

  3. Ouvrez chaque fichier et remplacez my-s3-bucket par le nom de votre compartiment indiqué à l’étape 1.

  4. Téléchargez ensuite les fichiers de mappage YAML suivants. Pour plus d'informations sur la structure de ces fichiers YAML, consultez javaagentle OpenTelemetry Instrumentation for Java GitHub dépôt.

  5. Chargez les deux fichiers SH et quatre fichiers YAML dans votre compartiment S3.

  6. Vous pouvez désormais accéder à la console Amazon EMR et créer un nouveau cluster avec l' CloudWatch agent. Dans le volet de navigation de gauche, sous EMR sur EC2, sélectionnez Clusters, puis Créer un cluster.

  7. Dans la section Nom et applications, choisissez Amazon EMR 7.0.0 ou version ultérieure.

  8. Sous Ensemble d'applications, sélectionnez le bundle ou le groupe personnalisé d'applications que vous souhaitez installer sur votre cluster, et incluez CloudWatch l'agent dans vos sélections.

  9. Dans la section Actions d’amorçage, sélectionnez Ajouter.

    • Pour le Nom, insérez install_app_metrics_launcher.sh.

    • Pour l’Emplacement du script, insérez s3://my-s3-bucket/install_app_metrics_launcher.sh. Remplacez my-s3-bucket par le chemin de votre compartiment S3.

    • Laissez le bloc Arguments vide.

  10. Sélectionnez Ajouter une action d'amorçage.

  11. Continuez à créer le cluster pour répondre à vos besoins en matière de charge de travail.

Lorsque votre cluster est lancé, l' CloudWatch agent publie les métriques d'application que vous avez spécifiées ainsi que les métriques système dans CloudWatch.

Configurer Amazon Managed Service for Prometheus en tant que stockage cloud pour les métriques avec Amazon EMR 7.0.0

Vous pouvez configurer l' CloudWatch agent Amazon pour qu'il publie les métriques sur Amazon Managed Service for Prometheus au lieu de. CloudWatch

Note

Vous pouvez publier les métriques de l' CloudWatch agent Amazon sur Amazon Managed Service for Prometheus ou sur CloudWatch Amazon, mais vous ne pouvez pas publier les métriques sur les deux services pour le même cluster.

Pour configurer l'agent afin de publier des métriques sur Amazon Managed Service for Prometheus, vous devez ajouter aps:RemoteWrite AWS Identity and Access Management l'autorisation (IAM) au profil d'instance Amazon EC2 pour Amazon EMR. L’exemple de politique suivant contient les autorisations requises :

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "aps:RemoteWrite", "Resource": "*" } ] }
Utiliser l' CloudWatch agent sur un cluster EMR pour publier des métriques sur Amazon Managed Service for Prometheus

Une fois que la politique de service dispose des autorisations appropriées, suivez les étapes suivantes pour lancer un cluster qui utilise l' CloudWatch agent pour publier des métriques sur Amazon Managed Service for Prometheus.

  1. Utilisez le AWS Management Console ou AWS CLI pour créer un espace de travail Amazon Managed Service pour Prometheus. Pour plus d’informations, voir la rubrique Création d’un Workspace du Guide de l’utilisateur Amazon Managed Service for Prometheus.

  2. Créez ou choisissez un compartiment dans votre compte Amazon S3 dans lequel vous souhaitez stocker les fichiers de lancement qui spécifient Amazon Managed Service for Prometheus en tant qu’espace de stockage cloud.

  3. Accédez ensuite au aws-emr-utilities dépôt GitHub et téléchargez les scripts suivants :

    • add_prometheus_endpoint_launcher.sh – Script qui télécharge et exécute add_prometheus_endpoint.sh en arrière-plan pour que le nœud puisse terminer l’amorçage.

    • add_prometheus_endpoint.sh— Un script qui attend la fin du démarrage de l'instance sur laquelle il s'exécute, puis configure l' CloudWatch agent à publier sur le point de terminaison Amazon Managed Service for Prometheus que vous fournissez comme argument lorsque vous lancez votre cluster.

  4. Ouvrez chaque fichier et remplacez my-s3-bucket par le nom de votre compartiment indiqué à l’étape 2.

  5. Utilisez le AWS CLI pour créer un cluster EMR avec l'action add_prometheus_endpoint_launcher.sh bootstrap. Dans la commande suivante, remplacez my-s3-bucket par le compartiment contenant l’action d’amorçage et remplacez managedpro-remote-write-workspace-url par le point de terminaison d’écriture à distance pour votre Workspace Amazon Managed Service for Prometheus. Assurez-vous de spécifier une étiquette de version Amazon EMR emr-7.0.0 ou ultérieure.

    aws emr create-cluster --name managedpro-cluster \ --release-label emr-7.0.0 \ --applications Name=Hadoop Name=AmazonCloudWatchAgent \ --ec2-attributes KeyName=myKey --instance-type m7g.2xlarge \ --instance-count 3 --use-default-roles --bootstrap-actions Name='Add Prometheus Endpoint',Path=s3://my-s3-bucket/add_prometheus_endpoint_launcher.sh,Args='managedpro-remote-write-workspace-url'

Lorsque votre cluster est lancé, l' CloudWatch agent publie les métriques qu'il collecte sur Amazon Managed Service for Prometheus.

Utiliser Amazon Managed Service for Prometheus en tant que source de données pour Amazon Managed Grafana

Une fois qu’Amazon EMR a publié les métriques du cluster sur Amazon Managed Service for Prometheus, procédez comme suit pour visualiser les métriques avec Amazon Managed Grafana :

  1. Utilisez le AWS Management Console pour créer un espace de travail et un utilisateur Amazon Managed Grafana disposant des autorisations appropriées. Pour plus d’informations, voir la rubrique Création d’un Workspace du Guide de l’utilisateur Amazon Managed Grafana.

  2. Ajoutez votre Workspace Amazon Managed Service for Prometheus en tant que source de données pour Amazon Managed Grafana. Pour plus d’informations, voir la rubrique Utiliser la configuration de la source de données AWS pour ajouter Amazon Managed Service for Prometheus en tant que source de données du Guide de l’utilisateur Amazon Managed Grafana.

Note

L' CloudWatch agent dispose d'un exportateur Prometheus qui renomme certains attributs. Pour les étiquettes de métriques par défaut, Amazon Managed Service for Prometheus utilise des caractères de soulignement à la place des points utilisés par Amazon. CloudWatch Si vous utilisez Amazon Managed Grafana pour visualiser les métriques par défaut dans Amazon Managed Service for Prometheus, les étiquettes s’affichent sous la forme jobflow_id, instance_id et service_name.

De plus, toutes les métriques d'application publiées par l' CloudWatch agent sur Amazon Managed Service for Prometheus utilisent l'étiquette à la place dejob. service_name Cependant, les métriques système continuent d’utiliser l’étiquette service_name.