Cette page a été traduite par l'API Cloud Translation.
Switch to English

Serveur d'historique persistant Dataproc

Présentation

Une fois les clusters Dataproc supprimés, les utilisateurs souhaitent souvent afficher les fichiers d'historique des tâches à des fins de diagnostic ou autres. Le serveur d'historique persistant Dataproc fournit une interface utilisateur qui permet d'afficher l'historique des tâches exécutées sur des clusters Dataproc actifs et supprimés.

Ce serveur s'exécute sur un cluster Dataproc à nœud unique, stocke les fichiers d'historique des tâches dans Cloud Storage, y accède et accepte les tâches MapReduce, Spark et Pig. Cette fonctionnalité est disponible dans la version en images Dataproc 1.4-debian10 et versions ultérieures.

Configurer des clusters de tâches

Vous devez spécifier l'option suivante et les propriétés de cluster lors de la création d'un cluster de tâches Dataproc qui stockera les journaux de tâches qui pourront être affichées et seront accessibles avec un cluster du serveur d'historique persistant.

  • --enable-component-gateway: indicateur obligatoire. Cette option doit être utilisée pour activer la passerelle des composants.
  • dataproc:job.history.to-gcs.enabled : propriété de cluster requise. Cette propriété doit être définie sur "true" pour activer le stockage de l'historique des tâches dans Cloud Storage.
  • spark:spark.history.fs.logDirectory et spark:spark.eventLog.dir : Propriétés de cluster facultatives. Ces options indiquent respectivement l'emplacement d'écriture de l'historique des tâches et des journaux d'événements Spark. Si ces deux options sont utilisées, elles doivent être définies et pointer vers des répertoires situés dans le même bucket.
    Exemples de propriétés :
    spark:spark.history.fs.logDirectory=gs://bucket-name/directory-name/spark-job-history,
    spark:spark.eventLog.dir=gs://bucket-name/directory-name/spark-job-history
    
  • mapred:mapreduce.jobhistory.intermediate-done-dir et mapred:mapreduce.jobhistory.done-dir : propriétés de cluster facultatives Ces indicateurs spécifient l'emplacement de Cloud Storage pour écrire respectivement les fichiers intermédiaires et finaux d'historique des tâches. Si ces deux options sont utilisées, elles doivent être définies et pointer vers des répertoires situés dans le même bucket. L'emplacement intermédiaire mapreduce.jobhistory.intermediate-done-dir correspond à un stockage temporaire. Les fichiers intermédiaires sont déplacés vers l'emplacement mapreduce.jobhistory.done-dir une fois la tâche MapReduce terminée.
    Exemples de propriétés:
    mapred:mapreduce.jobhistory.done-dir=gs://bucket-name/directory-name/mapreduce-job-history/done,
    mapred:mapreduce.jobhistory.intermediate-done-dir=gs://bucket-name/directory-name/mapreduce-job-history/intermediate-done
    
  1. Exécutez la commande gcloud dataproc clusters create pour créer un cluster de tâches. Le cluster doit être créé avec l'image 1.4-debian10 ou ultérieure. Remarque: Pour des raisons de lisibilité, les valeurs de l'option --property sont affichées ci-dessous sur des lignes distinctes. Lorsque vous exécutez la commande, toutes les valeurs d'options --property séparées par une virgule doivent être spécifiées sur une ligne.
    gcloud dataproc clusters create cluster-name \
        --region=region \
        --image-version=1.4-debian10 \
        --enable-component-gateway \
        --properties='dataproc:job.history.to-gcs.enabled=true,
    spark:spark.history.fs.logDirectory=gs://bucket-name/directory-name/spark-job-history,
    spark:spark.eventLog.dir=gs://bucket-name/directory/spark-job-history,
    mapred:mapreduce.jobhistory.done-dir=gs://bucket-name/directory/mapreduce-job-history/done,
    mapred:mapreduce.jobhistory.intermediate-done-dir=gs://bucket-name/directory-name/mapreduce-job-history/intermediate-done'
    
gcloud dataproc clusters create cluster-name \
    --region=region \
    --image-version=1.4-debian10 \
    --enable-component-gateway \
    --properties='dataproc:job.history.to-gcs.enabled=true'

Si vous exécutez la commande simplifiée illustrée ci-dessus, les fichiers d'historique des tâches seront enregistrés dans le bucket temporaire Dataproc des répertoires par défaut : /spark-job-history, /mapreduce-job-history/done, et /mapreduce-job-history/intermediate-done. L'emplacement Cloud Storage du bucket temporaire est répertorié dans le résultat de la commande gcloud dataproc clusters describe cluster-name --region=region. L'emplacement Cloud Storage des fichiers de l'historique des tâches est également répertorié dans les fichiers /etc/spark/conf/spark-defaults.conf et /etc/hadoop/conf/mapred-site.xml du cluster.

Exemples après la connexion SSH au nœud maître du cluster de tâches :

cat /etc/spark/conf/spark-defaults.conf
...
spark.history.fs.logDirectory=gs://temp-bucket/spark-job-history
spark.eventLog.dir=gs://temp-bucket/spark-job-history
cat /etc/hadoop/conf/mapred-site.xml
...
<property>
  <name>mapreduce.jobhistory.done-dir</name>
  <value>gs://temp-bucket/mapreduce-job-history/done</value>
</property>
<property>
  <name>mapreduce.jobhistory.intermediate-done-dir</name>
  <value>gs://temp-bucket/mapreduce-job-history/done_intermediate</value>
</property>

Configurer un serveur d'historique persistant

Vous devez spécifier l'option suivante et les propriétés de cluster lors de la création d'un cluster à nœud unique du serveur d'historique persistant :

  • --enable-component-gateway: indicateur obligatoire. Cette option doit être utilisée pour activer la passerelle des composants.
  • spark:spark.history.fs.logDirectory : propriété de cluster obligatoire pour activer l'historique des tâches Spark persistantes. Cette propriété spécifie le bucket et les répertoires Cloud Storage où le serveur d'historique persistant accède aux journaux de l'historique des tâches Spark écrits par les clusters de tâches (consultez la section Configurer des clusters de tâches). Au lieu de spécifier des répertoires de buckets spécifiques, utilisez des astérisques comme caractères génériques (par exemple, gs://bucket-name/*/spark-job-history) pour permettre au serveur d'historique persistant de faire correspondre plusieurs répertoires du bucket spécifié et écrits par différents clusters de tâches (mais consultez la section Considérations d'efficacité : utiliser des caractères génériques à mi-chemin).
  • mapred:mapreduce.jobhistory.read-only.dir-pattern : propriété de cluster obligatoire pour activer l'historique des tâches MapReduce persistantes. Cette propriété spécifie le bucket et les répertoires Cloud Storage où le serveur d'historique persistant accède aux journaux de l'historique des tâches MapReduce écrits par les clusters de tâches (consultez la section Configurer des clusters de tâches). Au lieu de spécifier des répertoires de buckets spécifiques, utilisez des astérisques comme caractères génériques (par exemple, gs://bucket-name/*/mapreduce-job-history/done) pour permettre au serveur d'historique persistant de faire correspondre plusieurs répertoires du bucket spécifié et écrits par différents clusters de tâches (mais consultez la section Considérations d'efficacité : utiliser des caractères génériques à mi-chemin).
  1. Exécutez la commande gcloud dataproc clusters create pour créer un cluster de serveur d'historique persistant Dataproc à nœud unique.
    gcloud dataproc clusters create cluster-name \
        --single-node \
        --region=region \
        --image-version=1.4-debian10 \
        --enable-component-gateway \
        --properties='spark:spark.history.fs.logDirectory=gs://bucket-name/*/spark-job-history,mapred:mapreduce.jobhistory.done-dir=gs://bucket-name/*/mapreduce-job-history/done'
    

Afficher les fichiers d'historique des tâches

  1. Accédez à la page Informations sur le cluster du serveur d'historique persistant à nœud unique dans Cloud Console, puis cliquez sur l'onglet "INTERFACES WEB".

  2. Cliquez sur "Historique de tâches MapReduce" ou "Serveur d'historique Spark" pour afficher les interfaces utilisateur de l'historique des tâches MapReduce et Spark.

    Exemple :

    La capture d'écran suivante montre l'interface utilisateur du serveur d'historique persistant affichant des liens vers les tâches Spark exécutées sur les job-cluster-1 et job-cluster-2 après la configuration de spark.history.fs.logDirectory etspark:spark.eventLog.dir des clusters de tâches et des emplacements spark.history.fs.logDirectory du cluster du serveur d'historique persistant de la manière suivante :

    job-cluster-1 gs://example-cloud-storage-bucket/job-cluster-1/spark-job-history
    job-cluster-2 gs://example-cloud-storage-bucket/job-cluster-2/spark-job-history
    phs-cluster gs://example-cloud-storage-bucket/*/spark-job-history