Ce document explique comment créer un cluster Managed Service pour Apache Spark à zéro nœud de calcul.
Les clusters Managed Service pour Apache Spark à zéro nœud de calcul constituent 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 à zéro nœud de calcul n'utilisent que des nœuds de calcul secondaires qui peuvent être réduits à zéro.
Les clusters Managed Service pour Apache Spark à zéro nœud de calcul sont idéaux pour une utilisation en tant que clusters de longue durée qui connaissent des périodes d'inactivité, comme un cluster hébergeant un notebook Jupiter. Ils améliorent l'utilisation des ressources grâce à l'utilisation de règles d'autoscaling à zéro nœud de calcul.
Caractéristiques et limites
Un cluster Managed Service pour Apache Spark à zéro nœud de calcul partage des similitudes avec un cluster standard, mais présente les caractéristiques et limites uniques suivantes :
- Nécessite la version d'image
2.2.53ou ultérieure. - N'est compatible qu'avec les nœuds de calcul secondaires, et non avec les nœuds de calcul principaux.
Inclut des services tels que YARN, mais n'est pas compatible avec le système de fichiers HDFS.
- Pour utiliser Cloud Storage comme système de fichiers par défaut, définissez la
core:fs.defaultFSpropriété de cluster sur un emplacement de bucket Cloud Storage (gs://BUCKET_NAME). - Si vous désactivez un composant lors de la création du cluster, désactivez également HDFS.
- Pour utiliser Cloud Storage comme système de fichiers par défaut, définissez la
Ne peut pas être converti en cluster standard ni à partir d'un cluster standard.
Nécessite une règle d'autoscaling pour les types de clusters
ZERO_SCALE.Nécessite la sélection de VM flexibles comme type de machine.
N'est pas compatible avec le composant Oozie.
Ne peut pas être créé à partir de la Google Cloud console.
Facultatif : Configurer une règle d'autoscaling
Vous pouvez configurer une règle d'autoscaling pour définir la mise à l'échelle des nœuds de calcul secondaires pour un cluster à zéro nœud de calcul. Dans ce cas, tenez compte des points suivants :
- Définissez le type de cluster sur
ZERO_SCALE. - Configurez une règle d'autoscaling uniquement pour la configuration des nœuds de calcul secondaires.
Pour en savoir plus, consultez Créer une règle d'autoscaling.
Créer un cluster Managed Service pour Apache Spark à zéro nœud de calcul
Créez un cluster à zéro nœud de calcul à l'aide de la gcloud CLI ou de l'API Dataproc.
gcloud
Exécutez
gcloud dataproc clusters create
la commande 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 \
--secondary-worker-machine-types="type=MACHINE_TYPE1[,type=MACHINE_TYPE2...][,rank=RANK]"
...other args
Remplacez les éléments suivants :
- CLUSTER_NAME : nom du cluster Managed Service pour Apache Spark à zéro nœud de calcul.
- REGION : région Compute Engine disponible.
- AUTOSCALING_POLICY : ID ou URI de ressource de la règle d'autoscaling.
- BUCKET_NAME : nom de votre bucket Cloud Storage.
- MACHINE_TYPE : type de machine Compute Engine spécifique, tel que
n1-standard-4,e2-standard-8. - RANK : définit la priorité d'une liste de types de machines.
REST
Créez un cluster à zéro nœud de calcul à l'aide d'une requête Managed Service pour Apache Spark API REST cluster.create :
- Définissez
ClusterConfig.ClusterTypepour lesecondaryWorkerConfigsurZERO_SCALE. - Définissez
AutoscalingConfig.policyUriavec l'ID de la règle d'autoscalingZERO_SCALE. - Ajoutez la propriété
core:fs.defaultFS:gs://BUCKET_NAMESoftwareConfig.property. Remplacez BUCKET_NAME par le nom de votre bucket Cloud Storage.
Étape suivante
- En savoir plus sur l'autoscaling de Managed Service pour Apache Spark.