Surveillance des applications et des tâches EMR sans serveur - 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.

Surveillance des applications et des tâches EMR sans serveur

Avec Amazon CloudWatch Metrics for EMR Serverless, vous pouvez recevoir des CloudWatch métriques en une minute et accéder à des CloudWatch tableaux de bord pour visualiser les near-real-time opérations et les performances de vos EMR applications sans serveur.

EMRServerless envoie des métriques à CloudWatch chaque minute. EMRServerless émet ces métriques au niveau de l'application ainsi qu'au niveau de la tâche, du type de travailleur et des niveaux. capacity-allocation-type

Pour commencer, utilisez le modèle de tableau de CloudWatch bord EMR Serverless fourni dans le GitHub référentiel EMR Serverless et déployez-le.

Note

EMRLes charges de travail interactives sans serveur sont uniquement activées pour la surveillance au niveau de l'application et ont une nouvelle dimension de type de travailleur. Spark_Kernel Pour surveiller et déboguer vos charges de travail interactives, vous pouvez consulter les journaux et l'interface utilisateur d'Apache Spark depuis votre espace de travail EMR Studio.

Le tableau ci-dessous décrit les dimensions EMR Serverless disponibles dans l'espace de AWS/EMRServerless noms.

Dimensions pour les EMR métriques sans serveur
Dimension Description
ApplicationId

Filtres pour toutes les métriques d'une application EMR sans serveur.

JobId

Filtres pour toutes les métriques d'une tâche exécutée EMR sans serveur.

WorkerType

Filtres pour tous les indicateurs d'un type de travailleur donné. Par exemple, vous pouvez filtrer pour SPARK_DRIVER et SPARK_EXECUTORS pour les tâches Spark.

CapacityAllocationType

Filtres pour tous les indicateurs d'un type d'allocation de capacité donné. Par exemple, vous pouvez filtrer PreInitCapacity pour la capacité pré-initialisée et OnDemandCapacity pour tout le reste.

Surveillance au niveau de l'application

Vous pouvez surveiller l'utilisation de la capacité au niveau de l'application EMR sans serveur grâce aux CloudWatch métriques Amazon. Vous pouvez également configurer une vue unique pour surveiller l'utilisation de la capacité des applications dans un CloudWatch tableau de bord.

EMRMétriques relatives aux applications sans serveur
Métrique Description Dimension principale Dimension secondaire
CPUAllocated

Le nombre total de personnes vCPUs allouées.

ApplicationId ApplicationId, WorkerType, CapacityAllocationType
IdleWorkerCount

Nombre total de travailleurs inactifs.

ApplicationId ApplicationId, WorkerType, CapacityAllocationType
MaxCPUAllowed

Le maximum CPU autorisé pour l'application.

ApplicationId N/A
MaxMemoryAllowed

Mémoire maximale en Go autorisée pour l'application.

ApplicationId N/A
MaxStorageAllowed

Stockage maximal en Go autorisé pour l'application.

ApplicationId N/A
MemoryAllocated

Mémoire totale allouée en Go.

ApplicationId ApplicationId, WorkerType, CapacityAllocationType
PendingCreationWorkerCount

Nombre total de travailleurs en attente de création.

ApplicationId ApplicationId, WorkerType, CapacityAllocationType
RunningWorkerCount

Nombre total de travailleurs utilisés par l'application.

ApplicationId ApplicationId, WorkerType, CapacityAllocationType
StorageAllocated

Stockage sur disque total en Go alloué.

ApplicationId ApplicationId, WorkerType, CapacityAllocationType
TotalWorkerCount

Le nombre total de travailleurs disponibles.

ApplicationId ApplicationId, WorkerType, CapacityAllocationType

Surveillance au niveau des tâches

Amazon EMR Serverless envoie les métriques suivantes au niveau des tâches Amazon CloudWatch toutes les minutes. Vous pouvez consulter les valeurs métriques pour les exécutions de tâches agrégées par état d'exécution des tâches. L'unité de chacune des métriques est le nombre.

EMRMesures au niveau des tâches sans serveur
Métrique Description Dimension principale
SubmittedJobs

Le nombre de tâches dans un état Soumis.

ApplicationId
PendingJobs

Le nombre de tâches en attente.

ApplicationId
ScheduledJobs

Le nombre de tâches dans un état planifié.

ApplicationId
RunningJobs

Le nombre de tâches en cours d'exécution.

ApplicationId
SuccessJobs

Le nombre d'emplois dont l'état est « Success ».

ApplicationId
FailedJobs

Le nombre de tâches en état d'échec.

ApplicationId
CancellingJobs

Le nombre d'emplois dans un État annulable.

ApplicationId
CancelledJobs

Le nombre de tâches dont l'état est annulé.

ApplicationId

Vous pouvez surveiller les métriques spécifiques au moteur pour les tâches EMR sans serveur en cours et terminées avec une application spécifique au moteur. UIs Lorsque vous consultez l'interface utilisateur d'une tâche en cours d'exécution, vous voyez l'interface utilisateur de l'application en direct avec des mises à jour en temps réel. Lorsque vous consultez l'interface utilisateur d'une tâche terminée, vous voyez l'interface utilisateur persistante de l'application.

Exécution de tâches

Pour vos tâches EMR sans serveur en cours d'exécution, vous pouvez consulter une interface en temps réel qui fournit des métriques spécifiques au moteur. Vous pouvez utiliser l'interface utilisateur Apache Spark ou l'interface utilisateur Hive Tez pour surveiller et déboguer vos tâches. Pour y accéderUIs, utilisez la console EMR Studio ou demandez un point de URL terminaison sécurisé avec le AWS Command Line Interface.

Tâches terminées

Pour les tâches EMR sans serveur terminées, vous pouvez utiliser le serveur d'historique Spark ou l'interface utilisateur de Persistent Hive Tez pour afficher les détails des tâches, les étapes, les tâches et les statistiques relatives à l'exécution des tâches Spark ou Hive. Pour y accéderUIs, utilisez la console EMR Studio ou demandez un point de URL terminaison sécurisé avec le AWS Command Line Interface.

Surveillance au niveau du Job Worker

Amazon EMR Serverless envoie à Amazon les métriques suivantes au niveau du travailleur, disponibles dans l'espace de AWS/EMRServerless noms et le groupe de Job Worker Metrics métriques. CloudWatch EMRServerless collecte des points de données auprès de travailleurs individuels lors de l'exécution des tâches au niveau de la tâche, du type de travailleur et du niveau. capacity-allocation-type Vous pouvez l'utiliser ApplicationId comme dimension pour surveiller plusieurs tâches appartenant à la même application.

EMRMesures au niveau des travailleurs sans serveur
Métrique Description Unité Dimension principale Dimension secondaire
WorkerCpuAllocated

Le nombre total de CPU cœurs v alloués aux travailleurs dans le cadre d'une exécution de tâche.

Aucun JobId ApplicationId, WorkerType et CapacityAllocationType
WorkerCpuUsed

Nombre total de CPU cœurs V utilisés par les travailleurs dans le cadre d'une exécution de tâche.

Aucun JobId ApplicationId, WorkerType et CapacityAllocationType
WorkerMemoryAllocated

Mémoire totale en Go allouée aux travailleurs dans le cadre d'une exécution de tâche.

Gigaoctets (Go) JobId ApplicationId, WorkerType et CapacityAllocationType
WorkerMemoryUsed

Mémoire totale en Go utilisée par les travailleurs lors de l'exécution d'une tâche.

Gigaoctets (Go) JobId ApplicationId, WorkerType et CapacityAllocationType
WorkerEphemeralStorageAllocated

Nombre d'octets de stockage éphémère alloués aux travailleurs dans le cadre d'une exécution de tâche.

Gigaoctets (Go) JobId ApplicationId, WorkerType et CapacityAllocationType
WorkerEphemeralStorageUsed

Le nombre d'octets de stockage éphémère utilisés par les travailleurs dans le cadre d'une exécution de tâche.

Gigaoctets (Go) JobId ApplicationId, WorkerType et CapacityAllocationType
WorkerStorageReadBytes

Nombre d'octets lus depuis le stockage par les travailleurs lors d'une exécution de tâche.

Octets JobId ApplicationId, WorkerType et CapacityAllocationType
WorkerStorageWriteBytes

Nombre d'octets écrits dans le stockage par les travailleurs lors d'une exécution de tâche.

Octets JobId ApplicationId, WorkerType et CapacityAllocationType

Les étapes ci-dessous décrivent comment afficher les différents types de métriques.

Console
Pour accéder à l'interface utilisateur de votre application via la console
  1. Accédez à votre application EMR Serverless sur le EMR Studio en suivant les instructions de la section Mise en route depuis la console.

  2. Pour consulter l'application UIs et les journaux spécifiques au moteur d'une tâche en cours d'exécution :

    1. Choisissez un poste doté d'un RUNNING statut.

    2. Sélectionnez le poste sur la page des détails de la candidature ou accédez à la page des détails du poste correspondant à votre poste.

    3. Dans le menu déroulant Display UI, choisissez Spark UI ou Hive Tez UI pour accéder à l'interface utilisateur de l'application correspondant à votre type de tâche.

    4. Pour consulter les journaux du moteur Spark, accédez à l'onglet Executors de l'interface utilisateur Spark, puis cliquez sur le lien Logs pour le pilote. Pour consulter les journaux du moteur Hive, cliquez sur le lien Logs correspondant au moteur approprié DAG dans l'interface utilisateur Hive Tez.

  3. Pour consulter les applications spécifiques au moteur UIs et les journaux relatifs à une tâche terminée, procédez comme suit :

    1. Choisissez un poste doté d'un SUCCESS statut.

    2. Sélectionnez le poste sur la page des détails de candidature de votre candidature ou accédez à la page des détails du poste.

    3. Dans le menu déroulant de l'interface utilisateur d'affichage, choisissez Spark History Server ou Persistent Hive Tez UI pour accéder à l'interface utilisateur de l'application correspondant à votre type de tâche.

    4. Pour consulter les journaux du moteur Spark, accédez à l'onglet Executors de l'interface utilisateur Spark, puis cliquez sur le lien Logs pour le pilote. Pour consulter les journaux du moteur Hive, cliquez sur le lien Logs correspondant au moteur approprié DAG dans l'interface utilisateur Hive Tez.

AWS CLI
Pour accéder à l'interface utilisateur de votre application à l'aide du AWS CLI
  • Pour générer un fichier URL que vous pouvez utiliser pour accéder à l'interface utilisateur de votre application pour les tâches en cours et terminées, appelez le GetDashboardForJobRunAPI.

    aws emr-serverless get-dashboard-for-job-run / --application-id <application-id> / --job-run-id <job-id>

    Le URL que vous générez est valide pendant une heure.