In diesem Dokument wird beschrieben, wie Sie einen Dataproc-Cluster mit Zero-Scale erstellen.
Dataproc-Cluster ohne Worker sind eine kostengünstige Möglichkeit, Dataproc-Cluster zu verwenden. Im Gegensatz zu Standard-Dataproc-Clustern, für die mindestens zwei primäre Worker erforderlich sind, werden in Dataproc-Clustern mit Zero-Scale nur sekundäre Worker verwendet, die auf null skaliert werden können.
Dataproc-Cluster ohne Worker sind ideal für die Verwendung als Cluster mit langer Laufzeit, die Leerlaufzeiten haben, z. B. ein Cluster, auf dem ein Jupiter-Notebook gehostet wird. Sie ermöglichen eine bessere Ressourcennutzung durch die Verwendung von Autoscaling-Richtlinien mit Nullskalierung.
Merkmale und Einschränkungen
Ein Dataproc-Cluster ohne Worker ähnelt einem Standardcluster, hat aber die folgenden besonderen Merkmale und Einschränkungen:
- Erfordert die Image-Version
2.2.53oder höher. - Unterstützt nur sekundäre Worker, nicht primäre Worker.
Enthält Dienste wie YARN, unterstützt aber das HDFS-Dateisystem nicht.
- Wenn Sie Cloud Storage als Standarddateisystem verwenden möchten, legen Sie das Clusterattribut
core:fs.defaultFSauf einen Cloud Storage-Bucket-Speicherort (gs://BUCKET_NAME) fest. - Wenn Sie eine Komponente während der Clustererstellung deaktivieren, deaktivieren Sie auch HDFS.
- Wenn Sie Cloud Storage als Standarddateisystem verwenden möchten, legen Sie das Clusterattribut
Kann nicht in einen Standardcluster konvertiert werden und umgekehrt.
Erfordert eine Autoscaling-Richtlinie für
ZERO_SCALE-Clustertypen.Erfordert die Auswahl von flexiblen VMs als Maschinentyp.
Unterstützt die Oozie-Komponente nicht.
Kann nicht über die Google Cloud Console erstellt werden.
Optional: Autoscaling-Richtlinie konfigurieren
Sie können eine Autoscaling-Richtlinie konfigurieren, um die Skalierung sekundärer Worker für einen Cluster mit null Knoten zu definieren. Beachten Sie dabei Folgendes:
- Legen Sie den Clustertyp auf
ZERO_SCALEfest. - Konfigurieren Sie eine Autoscaling-Richtlinie nur für die Konfiguration des sekundären Workers.
Weitere Informationen finden Sie unter Autoscaling-Richtlinie erstellen.
Dataproc-Cluster mit Zero-Scale erstellen
Erstellen Sie einen Cluster mit null Knoten mit der gcloud CLI oder der Dataproc API.
gcloud
Führen Sie den Befehl gcloud dataproc clusters create lokal in einem Terminalfenster oder in Cloud Shell aus.
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
Ersetzen Sie Folgendes:
- CLUSTER_NAME: Name des Dataproc-Clusters ohne Skalierung.
- REGION: Eine verfügbare Compute Engine-Region.
- AUTOSCALING_POLICY: Die ID oder der Ressourcen-URI der Autoscaling-Richtlinie.
- BUCKET_NAME: Name Ihres Cloud Storage-Bucket.
- MACHINE_TYPE: spezifischer Compute Engine-Maschinentyp, z. B.
n1-standard-4,e2-standard-8. - RANK: Definiert die Priorität einer Liste von Maschinentypen.
REST
Erstellen Sie einen Cluster mit null Knoten mit einer cluster.create-Anfrage der Dataproc REST API:
- Legen Sie
ClusterConfig.ClusterTypefürsecondaryWorkerConfigaufZERO_SCALEfest. - Legen Sie
AutoscalingConfig.policyUriauf die Autoscaling-Richtlinien-IDZERO_SCALEfest. - Fügen Sie die
core:fs.defaultFS:gs://BUCKET_NAME-SoftwareConfig.property hinzu. Ersetzen Sie BUCKET_NAME durch den Namen Ihres Cloud Storage-Bucket.