Dataproc-fähige Instanz erstellen
Auf dieser Seite wird beschrieben, wie Sie eine Dataproc-fähige Vertex AI Workbench-Instanz erstellen. Auf dieser Seite werden auch die Vorteile des Dataproc JupyterLab-Plug-ins beschrieben und Sie erhalten einen Überblick über die Verwendung des Plug-ins mit Dataproc Serverless für Spark und Dataproc in Compute Engine.
Übersicht über das Dataproc JupyterLab-Plug-in
Bei Vertex AI Workbench-Instanzen ist das Dataproc JupyterLab-Plug-in ab Version M113
vorinstalliert.
Das Dataproc JupyterLab-Plug-in bietet zwei Möglichkeiten zum Ausführen von Apache Spark-Notebooks-Jobs: Dataproc-Cluster und Serverless Spark in Dataproc.
- Dataproc-Cluster bieten eine Vielzahl von Funktionen mit Kontrolle über die Infrastruktur, auf der Spark ausgeführt wird. Sie wählen die Größe und die Konfiguration des Spark-Clusters aus, um die Umgebung anzupassen und zu steuern. Dieser Ansatz eignet sich ideal für komplexe Arbeitslasten, lang andauernde Jobs und eine detaillierte Ressourcenverwaltung.
- Dank Serverless Spark, das auf Dataproc basiert, werden Probleme in der Infrastruktur beseitigt. Sie senden Ihre Spark-Jobs und Google kümmert sich um die Bereitstellung, Skalierung und Optimierung von Ressourcen im Hintergrund. Dieser serverlose Ansatz bietet eine einfache und kostengünstige Option für Data-Science- und ML-Arbeitslasten.
Bei beiden Optionen können Sie Spark für die Datenverarbeitung und -analyse verwenden. Die Wahl zwischen Dataproc-Clustern und Serverless Spark hängt von Ihren spezifischen Arbeitslastanforderungen, dem gewünschten Maß an Kontrolle und den Ressourcennutzungsmustern ab.
Die Verwendung von Serverless Spark für Data-Science- und ML-Arbeitslasten bietet folgende Vorteile:
- Keine Clusterverwaltung: Sie müssen sich nicht um die Bereitstellung, Konfiguration oder Verwaltung von Spark-Clustern kümmern. Dies spart Zeit und Ressourcen.
- Autoscaling: Serverless Spark wird automatisch je nach Arbeitslast hoch und herunterskaliert, sodass Sie nur für die tatsächlich genutzten Ressourcen zahlen.
- Hohe Leistung: Serverless Spark ist auf Leistung ausgelegt und nutzt die Infrastruktur von Google Cloud.
- Einbindung in andere Google Cloud-Technologien: Serverless Spark kann in andere Google Cloud-Produkte wie BigQuery und Dataplex eingebunden werden.
Weitere Informationen finden Sie in der Dataproc Serverless-Dokumentation.
Beschränkungen
Beachten Sie beim Planen Ihres Projekts die folgenden Einschränkungen:
- Das Dataproc JupyterLab-Plug-in unterstützt VPC Service Controls nicht.
Dataproc-Einschränkungen
Es gelten die folgenden Dataproc-Einschränkungen:
- Spark-Jobs werden mit der Identität des Dienstkontos ausgeführt, nicht mit der Identität des sendenden Nutzers.
Hinweise
- Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
-
Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.
-
Cloud Resource Manager, Dataproc, and Notebooks APIs aktivieren.
-
Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.
-
Cloud Resource Manager, Dataproc, and Notebooks APIs aktivieren.
Erforderliche Rollen
Bitten Sie Ihren Administrator, dem Dienstkonto die folgenden IAM-Rollen zu gewähren, damit das Dienstkonto die erforderlichen Berechtigungen zum Ausführen einer Notebook-Datei auf einem serverlosen Dataproc-Cluster oder einem Dataproc-Cluster hat:
-
Dataproc-Worker (
roles/dataproc.worker
) für Ihr Projekt -
Dataproc-Bearbeiter (
roles/dataproc.editor
) im Cluster für die Berechtigungdataproc.clusters.use
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.
Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Ausführen einer Notebook-Datei auf einem Dataproc-Cluster oder einem Dataproc-Cluster erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind erforderlich, um eine Notebook-Datei auf einem Dataproc-Servercluster oder einem Dataproc-Cluster auszuführen:
-
dataproc.agents.create
-
dataproc.agents.delete
-
dataproc.agents.get
-
dataproc.agents.update
-
dataproc.tasks.lease
-
dataproc.tasks.listInvalidatedLeases
-
dataproc.tasks.reportStatus
-
dataproc.clusters.use
Ihr Administrator kann dem Dienstkonto möglicherweise auch diese Berechtigungen mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erteilen.
Instanz mit aktiviertem Dataproc erstellen
So erstellen Sie eine Vertex AI Workbench-Instanz mit aktiviertem Dataproc:
Rufen Sie in der Google Cloud Console die Seite Instanzen auf.
Klicken Sie auf
NEU ERSTELLEN.Klicken Sie im Dialogfeld Neue Instanz auf Erweiterte Optionen.
Achten Sie darauf, dass im Dialogfeld Instanz erstellen im Abschnitt Details die Option Dataproc aktivieren ausgewählt ist.
Achten Sie darauf, dass der Workbench-Typ auf Instanz festgelegt ist.
Achten Sie darauf, dass Sie im Abschnitt Umgebung die neueste Version oder eine Versionsnummer von
M113
oder höher verwenden.Klicken Sie auf Erstellen.
Vertex AI Workbench erstellt eine Instanz und startet sie automatisch. Sobald die Instanz einsatzbereit ist, aktiviert Vertex AI Workbench den Link JupyterLab öffnen.
JupyterLab öffnen
Klicken Sie neben dem Namen Ihrer Instanz auf JupyterLab öffnen.
Der Tab JupyterLab-Launcher wird in Ihrem Browser geöffnet. Standardmäßig enthält er Abschnitte für Dataproc Serverless Notebooks und Dataproc-Jobs und -Sitzungen. Wenn im ausgewählten Projekt und in der ausgewählten Region Jupyter-fähige Cluster vorhanden sind, wird ein Abschnitt mit dem Namen Dataproc Cluster Notebooks angezeigt.
Plug-in mit Dataproc Serverless für Spark verwenden
Serverless Spark-Laufzeitvorlagen, die sich in derselben Region und demselben Projekt wie Ihre Vertex AI Workbench-Instanz befinden, werden im Abschnitt Dataproc Serverless Notebooks des Tabs JupyterLab-Launcher angezeigt.
Informationen zum Erstellen einer Laufzeitvorlage finden Sie unter Dataproc Serverless-Laufzeitvorlage erstellen.
Klicken Sie zum Öffnen eines neuen Serverless Spark-Notebooks auf eine Laufzeitvorlage. Es dauert etwa eine Minute, bis der Remote-Spark-Kernel gestartet wird. Nachdem der Kernel gestartet wurde, können Sie mit dem Coding beginnen. Führen Sie eine Codezelle in Ihrem Notebook aus, um Ihren Code auf Serverless Spark auszuführen.
Plug-in mit Dataproc in Compute Engine verwenden
Wenn Sie einen Dataproc in Compute Engine-Jupyter-Cluster erstellt haben, enthält der Tab Launcher den Abschnitt Dataproc Cluster Notebooks.
Für jeden Jupyter-fähigen Dataproc-Cluster, auf den Sie in dieser Region und in diesem Projekt Zugriff haben, werden vier Karten angezeigt.
So ändern Sie die Region und das Projekt:
Wählen Sie Einstellungen > Cloud Dataproc-Einstellungen aus.
Ändern Sie auf dem Tab Einrichtungskonfiguration unter Projektinformationen die Projekt-ID und die Region und klicken Sie dann auf Speichern.
Diese Änderungen werden erst wirksam, wenn Sie JupyterLab neu starten.
Wenn Sie JupyterLab neu starten möchten, wählen Sie Datei > Herunterfahren aus und klicken Sie dann auf JupyterLab öffnen auf der Seite Vertex AI Workbench-Instanzen.
Klicken Sie zum Erstellen eines neuen Notebooks auf eine Karte. Nachdem der Remote-Kernel im Dataproc-Cluster gestartet wurde, können Sie mit dem Schreiben des Codes beginnen und ihn dann in Ihrem Cluster ausführen.
Dataproc auf der Vertex AI Workbench-Instanz mithilfe der gcloud CLI verwalten
Vertex AI Workbench-Instanzen werden standardmäßig mit aktiviertem Dataproc erstellt. Sie können eine Vertex AI Workbench-Instanz mit deaktiviertem Dataproc erstellen. Setzen Sie dazu den Schlüssel disable-mixer
metadata
auf true
.
gcloud workbench instances create INSTANCE_NAME --metadata=disable-mixer=true
Dataproc kann auf einer angehaltenen Vertex AI Workbench-Instanz aktiviert werden, indem Sie den Metadatenwert aktualisieren.
gcloud workbench instances create INSTANCE_NAME --metadata=disable-mixer=false
Dataproc mit Terraform verwalten
Dataproc for Vertex AI Workbench-Instanzen in Terraform werden mit dem Schlüssel disable-mixer
im Metadatenfeld verwaltet.
Aktivieren Sie Dataproc, indem Sie den disable-mixer
-Schlüssel metadata
auf false
setzen. Deaktivieren Sie Dataproc, indem Sie den Metadatenschlüssel disable-mixer
auf true
setzen.
Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.
Fehlerbehebung
Informationen zur Diagnose und Behebung von Problemen beim Erstellen einer Dataproc-fähigen Instanz finden Sie unter Fehlerbehebung bei Vertex AI Workbench.
Nächste Schritte
Weitere Informationen zum Dataproc JupyterLab-Plug-in finden Sie unter JupyterLab für serverlose Batch- und interaktive Notebooksitzungen verwenden.
Weitere Informationen zu Serverless Spark finden Sie in der Dokumentation zu Dataproc Serverless.
Serverless Spark-Arbeitslasten ausführen, ohne Cluster bereitzustellen und zu verwalten
Weitere Informationen zur Verwendung von Spark mit Google Cloud-Produkten und -Diensten finden Sie unter Spark in Google Cloud.
Sehen Sie sich die verfügbaren Dataproc-Vorlagen auf GitHub an.
Erfahren Sie mehr über Serverless Spark über den
serverless-spark-workshop
auf GitHub.Lesen Sie die Apache Spark-Dokumentation.