Auf dieser Seite wird erläutert, wie Sie mit dem gcloud-Befehlszeilentool der Google Cloud CLI einen Dataproc-Cluster erstellen, einen Apache Spark-Job im Cluster ausführen und dann die Anzahl der Worker im Cluster ändern.
Informationen zum Ausführen derselben oder ähnlicher Aufgaben finden Sie unter Kurzanleitungen für den Start mit dem API Explorer, in der Google Cloud -Console unter Dataproc-Cluster mit der Google Cloud -Console erstellen und mit den Clientbibliotheken unter Dataproc-Cluster mit Clientbibliotheken erstellen.
Hinweise
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
Install the Google Cloud CLI.
-
Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.
-
Führen Sie den folgenden Befehl aus, um die gcloud CLI zu initialisieren:
gcloud init -
Create or select a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_IDwith a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_IDwith your Google Cloud project name.
-
Prüfen Sie, ob Sie die Berechtigungen haben, die für diese Anleitung erforderlich sind.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Dataproc API:
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.gcloud services enable dataproc.googleapis.com
-
Install the Google Cloud CLI.
-
Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.
-
Führen Sie den folgenden Befehl aus, um die gcloud CLI zu initialisieren:
gcloud init -
Create or select a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_IDwith a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_IDwith your Google Cloud project name.
-
Prüfen Sie, ob Sie die Berechtigungen haben, die für diese Anleitung erforderlich sind.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Dataproc API:
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.gcloud services enable dataproc.googleapis.com
-
Dataproc-Bearbeiter (
roles/dataproc.editor) für das Projekt -
Dienstkontonutzer (
roles/iam.serviceAccountUser) für das Compute Engine-Standarddienstkonto - Der Job wird auf dem
example-clusterausgeführt. - Die
classenthält die primäre Methode für SparkPi, mit der ein Näherungswert fürpiberechnet wird. testen. - Die JAR-Datei enthält den Jobcode.
1000ist ein Jobparameter. Sie gibt die Anzahl der Aufgaben (Iterationen) an, die der Job ausführt, um den Wert vonpizu berechnen.- Führen Sie den Befehl
clusters deleteaus, um dieexample-clusterzu löschen:gcloud dataproc clusters delete example-cluster \ --region=REGION
- Informationen, wie Sie einen Spark-Scala-Job schreiben und ausführen
Erforderliche Rollen
Für die Ausführung der Beispiele auf dieser Seite sind bestimmte IAM-Rollen erforderlich. Je nach Organisationsrichtlinien wurden diese Rollen möglicherweise bereits gewährt. Informationen zum Prüfen von Rollenzuweisungen finden Sie unter Müssen Sie Rollen zuweisen?.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Nutzerrollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen eines Dataproc-Clusters benötigen:
Dienstkontorolle
Damit das Compute Engine-Standarddienstkonto die erforderlichen Berechtigungen zum Erstellen eines Dataproc-Clusters hat, bitten Sie Ihren Administrator, dem Compute Engine-Standarddienstkonto die IAM-Rolle Dataproc-Worker (roles/dataproc.worker) für das Projekt zuzuweisen.
Cluster erstellen
Führen Sie den folgenden gcloud Dataproc clusters create-Befehl aus, um einen Cluster namens example-cluster zu erstellen.
gcloud dataproc clusters create example-cluster --region=REGION
Ersetzen Sie Folgendes:
REGION: Geben Sie eine Region an, in der sich der Cluster befinden soll.
Job senden
Um einen Spark-Beispieljob zu senden, der einen ungefähren Wert für pi berechnet, führen Sie den folgenden gcloud Dataproc jobs submit spark-Befehl aus:
gcloud dataproc jobs submit spark --cluster example-cluster \ --region=REGION \ --class org.apache.spark.examples.SparkPi \ --jars file:///usr/lib/spark/examples/jars/spark-examples.jar -- 1000
Hinweise:
Ersetzen Sie Folgendes:
REGION: Geben Sie die Clusterregion an.
Die aktuelle bzw. endgültige Ausgabe des Jobs wird im Terminalfenster angezeigt:
Waiting for job output... ... Pi is roughly 3.14118528 ... Job finished successfully.
Cluster aktualisieren
Um die Anzahl der Worker im Cluster auf fünf zu ändern, führen Sie den folgenden Befehl aus:
gcloud dataproc clusters update example-cluster \ --region=REGION \ --num-workers 5
Die Befehlsausgabe enthält Clusterdetails:
workerConfig: ... instanceNames: - example-cluster-w-0 - example-cluster-w-1 - example-cluster-w-2 - example-cluster-w-3 - example-cluster-w-4 numInstances: 5 statusHistory: ... - detail: Add 3 workers.
Führen Sie den folgenden Befehl aus, um die Anzahl der Worker-Knoten auf den ursprünglichen Wert von 2 zu reduzieren:
gcloud dataproc clusters update example-cluster \ --region=REGION \ --num-workers 2
Bereinigen
Mit den folgenden Schritten vermeiden Sie, dass Ihrem Google Cloud -Konto die auf dieser Seite verwendeten Ressourcen in Rechnung gestellt werden: