Eine häufige Aufgabe ist das Verschieben eines Dataflow-Jobs von einemGoogle Cloud -Projekt in ein anderes. Sie möchten beispielsweise Jobs von einer Testumgebung in eine Produktionsumgebung verschieben. Dataflow-Jobs sind an das Projekt gebunden, in dem sie erstellt wurden, und können nicht direkt in ein anderes Projekt migriert werden. Wenn Sie einen Job verschieben möchten, müssen Sie ihn im alten Projekt beenden und im neuen Projekt neu erstellen.
So verschieben Sie einen Job:
- Beenden oder per Drain beenden Sie den Job im alten Projekt.
- Erstellen Sie den Job im neuen Projekt neu. Verwenden Sie beispielsweise denselben Pipelinecode, dieselbe Vorlage und dieselbe Konfiguration.
- Achten Sie darauf, dass alle erforderlichen Berechtigungen, Dienstkonten und Ressourcen im neuen Projekt für den Zugriff durch den Job richtig eingerichtet sind. Dazu zählen folgende Komponenten:
- Berechtigungen:Achten Sie darauf, dass der Nutzer oder das Dienstkonto, mit dem die Pipeline ausgeführt wird, die erforderlichen IAM-Rollen (Identity and Access Management) im neuen Projekt hat, z. B.
roles/dataflow.adminundroles/dataflow.worker. - Dienstkonten:Das Dataflow-Worker-Dienstkonto ist im neuen Projekt anders. Achten Sie darauf, dass dieses neue Dienstkonto Zugriff auf alle Ressourcen hat, die für die Pipeline erforderlich sind, z. B. Cloud Storage-Buckets, BigQuery-Datasets und Pub/Sub-Themen.
- Ressourcen:Wenn Ihre Pipeline Ressourcen wie Cloud Storage-Buckets, BigQuery-Datasets oder Pub/Sub-Themen verwendet, müssen Sie dafür sorgen, dass sie im neuen Projekt vorhanden sind oder vom neuen Projekt aus darauf zugegriffen werden kann. Möglicherweise müssen Sie neue Ressourcen erstellen oder projektübergreifende Berechtigungen gewähren.
- VPC Service Controls:Wenn Sie VPC Service Controls verwenden, muss das neue Projekt Teil desselben Dienstperimeters sein. Alternativ können Sie die erforderlichen Bridges konfigurieren, um den Zugriff auf die erforderlichen Ressourcen zu ermöglichen.
- Berechtigungen:Achten Sie darauf, dass der Nutzer oder das Dienstkonto, mit dem die Pipeline ausgeführt wird, die erforderlichen IAM-Rollen (Identity and Access Management) im neuen Projekt hat, z. B.
Wenn Sie den Job neu erstellen, wird er als neuer Job gestartet und der Status des alten Jobs wird nicht beibehalten.
Um projektspezifische Parameter wie die Projekt-ID nicht fest zu codieren, verwenden Sie Pipeline-Optionen, um diese Werte in Ihre Pipeline zu übergeben.
Weitere Informationen zu den Berechtigungen und zur Sicherheit Ihrer Dataflow-Jobs finden Sie unter Sicherheit und Berechtigungen in Dataflow.
Nächste Schritte
- Best Practices für die Entwicklung, Bereitstellung und Verwaltung Ihrer Dataflow-Pipelines finden Sie unter Best Practices für Pipelines.
- Informationen zum Bereitstellen Ihrer Pipeline nach der Konfiguration Ihres neuen Projekts finden Sie unter Pipelines bereitstellen.