Créer un cluster Managed Service pour Apache Spark à zéro nœud

Ce document explique comment créer un cluster Managed Service pour Apache Spark à mise à l'échelle à zéro.

Les clusters à zéro nœud Managed Service pour Apache Spark offrent un moyen économique d'utiliser les clusters Managed Service pour Apache Spark. Contrairement aux clusters Managed Service pour Apache Spark standards qui nécessitent au moins deux nœuds de calcul principaux, les clusters Managed Service pour Apache Spark à mise à l'échelle zéro n'utilisent que des nœuds de calcul secondaires qui peuvent être mis à l'échelle zéro.

Les clusters Managed Service pour Apache Spark à zéro nœud sont idéaux pour une utilisation en tant que clusters de longue durée qui connaissent des périodes d'inactivité, comme un cluster qui héberge un notebook Jupyter. Ils permettent d'améliorer l'utilisation des ressources grâce à des règles d'autoscaling à zéro échelle.

Conditions requises et limites

Un cluster Managed Service pour Apache Spark à zéro nœud présente les exigences et limites suivantes :

  • Nécessite la version 2.2.61 ou ultérieure de l'image.
  • Nécessite l'utilisation de Cloud Storage, et non du système de fichiers HDFS.
  • Compatible uniquement avec les nœuds de calcul secondaires, et non avec les nœuds de calcul principaux.
  • Ne peut pas être converti en cluster standard ni à partir d'un cluster standard.
  • Ne prend pas en charge le composant Oozie.

Créer un cluster Managed Service pour Apache Spark à mise à l'échelle à zéro

Vous pouvez créer un cluster à zéro nœud à l'aide de la gcloud CLI ou de l'API Managed Service pour Apache Spark.

gcloud

Exécutez la commande gcloud dataproc clusters create en local dans une fenêtre de terminal ou dans Cloud Shell.

gcloud dataproc clusters create CLUSTER_NAME \
    --region=REGION \
    --cluster-type=zero-scale \
    --autoscaling-policy=AUTOSCALING_POLICY \
    --properties=core:fs.defaultFS=gs://BUCKET_NAME \
    ...other args

Remplacez les éléments suivants :

  • CLUSTER_NAME : nom du cluster à zéro nœud Managed Service pour Apache Spark.
  • REGION : région Compute Engine disponible.
  • AUTOSCALING_POLICY (facultatif) : si vous créez une règle d'autoscaling à appliquer au cluster à zéro nœud, utilisez cet indicateur pour spécifier l'ID ou l'URI de ressource de la règle d'autoscaling. Lorsque vous créez la règle :
    • Définissez clusterType sur ZERO_SCALE.
    • Configurez une règle d'autoscaling uniquement pour secondaryWorkerConfig.
  • Système de fichiers Cloud Storage : vous devez définir core:fs.defaultFS sur un bucket Cloud Storage pour définir le système de fichiers du cluster à zéro nœud sur Cloud Storage au lieu du système HDFS par défaut.
    • BUCKET_NAME : nom d'un bucket Cloud Storage. Le nom du bucket doit être unique pour chaque cluster à zéro nœud.

REST

  • Type de cluster : définissez ClusterConfig.ClusterType sur ZERO_SCALE.
  • Règle d'autoscaling (facultatif) : si vous créez une règle d'autoscaling à appliquer au cluster à zéro nœud, définissez AutoscalingConfig.policyUri avec l'ID de la règle d'autoscaling ZERO_SCALE. Lorsque vous créez la règle :
    • Définissez clusterType sur ZERO_SCALE.
    • Configurez une règle d'autoscaling uniquement pour secondaryWorkerConfig.
  • Système de fichiers Cloud Storage : vous devez définir core:fs.defaultFS sur un bucket Cloud Storage pour définir le système de fichiers du cluster à zéro nœud sur Cloud Storage au lieu du système HDFS par défaut.
    • Ajoutez core:fs.defaultFS:gs://BUCKET_NAME SoftwareConfig.property. Remplacez BUCKET_NAME par le nom de votre bucket Cloud Storage. Spécifiez un nom de bucket unique pour chaque cluster à zéro nœud.

Étapes suivantes