Sie können eine Workflow-Vorlage in einer YAML-Datei definieren und dann die Vorlage zur Ausführung des Workflows instanziieren. Sie können auch eine YAML-Datei der Workflow-Vorlage importieren und exportieren, um eine Workflow-Vorlagenressource für Managed Service for Apache Spark zu erstellen und zu aktualisieren.
Workflow mit einer YAML-Datei ausführen
Verwenden Sie zum Ausführen eines Workflows, ohne zuerst eine Workflow-Vorlagenressource zu erstellen, den Befehl gcloud dataproc workflow-templates instantiate-from-file.
- Definieren Sie Ihre Workflow-Vorlage in einer YAML-Datei. Die YAML-Datei muss alle erforderlichen WorkflowTemplate-Felder außer das Feld
identhalten. Sie darf außerdem nicht das Feldversionoder nur zur Ausgabe zulässige Felder enthalten. Im folgenden Workflow-Beispiel gewährleistet dieprerequisiteStepIds-Liste in Schrittterasort, dass Schrittterasortnur dann beginnt, wenn Schrittteragenerfolgreich abgeschlossen wurde.jobs: - hadoopJob: args: - teragen - '1000' - hdfs:///gen/ mainJarFileUri: file:///usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar stepId: teragen - hadoopJob: args: - terasort - hdfs:///gen/ - hdfs:///sort/ mainJarFileUri: file:///usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar stepId: terasort prerequisiteStepIds: - teragen placement: managedCluster: clusterName: my-managed-cluster config: gceClusterConfig: zoneUri: us-central1-a - Workflow ausführen:
gcloud dataproc workflow-templates instantiate-from-file \ --file=TEMPLATE_YAML \ --region=REGION
Workflow mithilfe einer YAML-Datei mit automatischer Zonenplatzierung von Managed Service for Apache Spark instanziieren
- Definieren Sie Ihre Workflow-Vorlage in einer YAML-Datei. Diese YAML-Datei ist die gleiche wie die
vorherige YAML-Datei, außer dass das Feld
zoneUriauf den leeren String ('') gesetzt ist, damit die automatische Zonenplatzierung von Managed Service for Apache Spark Auto Zone Placement die Zone für den Cluster auswählen kann.jobs: - hadoopJob: args: - teragen - '1000' - hdfs:///gen/ mainJarFileUri: file:///usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar stepId: teragen - hadoopJob: args: - terasort - hdfs:///gen/ - hdfs:///sort/ mainJarFileUri: file:///usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar stepId: terasort prerequisiteStepIds: - teragen placement: managedCluster: clusterName: my-managed-cluster config: gceClusterConfig: zoneUri: '' - Führen Sie den Workflow aus. Wenn Sie die automatische Platzierung verwenden, müssen Sie eine
Region
an den
gcloudBefehl übergeben.gcloud dataproc workflow-templates instantiate-from-file \ --file=TEMPLATE_YAML \ --region=REGION
YAML-Datei für Workflow-Vorlagen importieren und exportieren
Sie können YAML-Dateien für Workflow-Vorlagen importieren und exportieren. Üblicherweise wird eine Workflow-Vorlage zuerst als YAML-Datei exportiert. Dann wird die YAML-Datei bearbeitet und anschließend importiert, um die Vorlage zu aktualisieren.
Exportieren Sie die Workflow-Vorlage in eine YAML-Datei. Während des Exports werden die Felder
idundversionsowie alle nur zur Ausgabe zulässigen Felder aus der Ausgabe herausgefiltert und sind nicht in der exportierten YAML-Datei sichtbar. Sie können entweder die WorkflowTemplategcloud dataproc workflow-templates export TEMPLATE_ID or TEMPLATE_NAME \ --destination=TEMPLATE_YAML \ --region=REGION
idoder die voll qualifizierte Vorlagenressourcename("projects/PROJECT_ID/regions/REGION/workflowTemplates/TEMPLATE_ID") an den Befehl übergeben.YAML-Datei lokal bearbeiten Beachten Sie, dass die Felder
id,versionund das nur zur Ausgabe zulässige Feld, die beim Exportieren der Vorlage aus der YAML-Datei herausgefiltert wurden, in der importierten YAML-Datei nicht zulässig sind.Importieren Sie die YAML-Datei der aktualisierten Workflow-Vorlage:
Sie können entweder die WorkflowTemplategcloud dataproc workflow-templates import TEMPLATE_ID or TEMPLATE_NAME \ --source=TEMPLATE_YAML \ --region=REGION
idoder die voll qualifizierte Vorlagenressourcename("projects/PROJECT_ID/regions/region/workflowTemplates/TEMPLATE_ID") an den Befehl übergeben. Die Vorlagenressource mit demselben Vorlagennamen wird überschrieben bzw. aktualisiert und die Versionsnummer wird erhöht. Wenn keine Vorlage mit demselben Vorlagennamen vorhanden ist, wird sie erstellt.