Crea un cluster Managed Service per Apache Spark con scalabilità a zero

Questo documento descrive come creare un cluster Managed Service for Apache Spark a scalabilità zero.

I cluster Managed Service for Apache Spark a scalabilità zero offrono un modo economico per utilizzare i cluster Managed Service for Apache Spark. A differenza dei cluster Managed Service for Apache Spark standard che richiedono almeno due worker principali, i cluster Managed Service for Apache Spark a scalabilità zero utilizzano solo worker secondari che possono essere ridimensionati fino a zero.

I cluster Managed Service for Apache Spark a scalabilità zero sono ideali per l'utilizzo come cluster a lunga esecuzione che hanno periodi di inattività, ad esempio un cluster che ospita un notebook Jupiter. Offrono un migliore utilizzo delle risorse grazie all'utilizzo di policy di scalabilità automatica a scalabilità zero.

Caratteristiche e limitazioni

Un cluster Managed Service for Apache Spark a scalabilità zero condivide somiglianze con un cluster standard, ma presenta le seguenti caratteristiche e limitazioni uniche:

  • Richiede la versione dell'immagine 2.2.53 o successive.
  • Supporta solo i worker secondari, non i worker principali.
  • Include servizi come YARN, ma non supporta il file system HDFS.

    • Per utilizzare Cloud Storage come file system predefinito, imposta la core:fs.defaultFS proprietà del cluster su una località del bucket Cloud Storage (gs://BUCKET_NAME).
    • Se disabiliti un componente durante la creazione del cluster, disabilita anche HDFS.
  • Non può essere convertito in o da un cluster standard.

  • Richiede una policy di scalabilità automatica per i tipi di cluster ZERO_SCALE.

  • Richiede la selezione di VM flessibili come tipo di macchina.

  • Non supporta il componente Oozie.

  • Non può essere creato dalla Google Cloud console.

(Facoltativo) Configura una policy di scalabilità automatica

Puoi configurare una policy di scalabilità automatica per definire la scalabilità dei worker secondari per un cluster a scalabilità zero. Quando lo fai, tieni presente quanto segue:

  • Imposta il tipo di cluster su ZERO_SCALE.
  • Configura una policy di scalabilità automatica solo per la configurazione del worker secondario.

Per saperne di più, consulta Creare una policy di scalabilità automatica.

Crea un cluster Managed Service for Apache Spark a scalabilità zero

Crea un cluster a scalabilità zero utilizzando gcloud CLI o l'API Dataproc.

gcloud

Esegui gcloud dataproc clusters create comando in locale in una finestra del terminale o in 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

Sostituisci quanto segue:

  • CLUSTER_NAME: nome del cluster Managed Service for Apache Spark a scalabilità zero.
  • REGION: una regione Compute Engine disponibile.
  • AUTOSCALING_POLICY: l'ID o l'URI della risorsa della policy di scalabilità automatica.
  • BUCKET_NAME: nome del tuo bucket Cloud Storage.
  • MACHINE_TYPE: tipo di macchina Compute Engine specifico, ad esempio n1-standard-4, e2-standard-8.
  • RANK: definisce la priorità di un elenco di tipi di macchine.

REST

Crea un cluster a scalabilità zero utilizzando una richiesta cluster.create dell'API REST Managed Service for Apache Spark:

Passaggi successivi