Workflowübersicht

Workflows ist eine vollständig verwaltete Orchestrierungsplattform, in einer von Ihnen definierten Reihenfolge: einem Workflow. Diese Workflows können Dienste kombinieren, einschließlich benutzerdefinierter Dienste, die in Cloud Run oder Cloud Run Functions gehostet werden, Google Cloud-Diensten wie Cloud Vision AI und BigQuery und einer beliebigen HTTP-basierten API.

Wenn Sie Workflows in Lösungen einbinden, können Sie Dienstabhängigkeiten explizit und end-to-end beobachten. Ein Workflow, der einen Anwendungs-, Betriebs- oder Geschäftsprozess angibt, stellt eine „Source of Truth“ oder kanonische Beschreibung des Prozesses bereit.

Die Workflows sind serverlos und können nach Bedarf hochskaliert werden bei Inaktivität auftreten. Da ein Workflow keine Code- oder Bibliotheksabhängigkeiten enthält, sind keine Sicherheitspatches erforderlich. Nach der Bereitstellung eines Workflows können Sie davon ausgehen, dass er zuverlässig und ohne Wartung ausgeführt wird. Ein Workflow kann den Status beibehalten, einen Vorgang noch einmal versuchen, abfragen oder bis zu einem Jahr warten.

Workflows entspricht diesen Zertifizierungen und Standards.

Das folgende Diagramm zeigt ein Beispiel für die Verwendung von Workflows zum Orchestrierung von Diensten:

Dienstorchestrierung mit Workflows

Gängige Anwendungsfälle

Workflows unterstützen viele Anwendungsfälle. Dazu einige Beispiele:

Dienstorchestrierung Dienste durch Kombinieren von Diensten erstellen: Führen Sie eine Reihe von Abläufe in mehreren Systemen und warten, bis alle Vorgänge abgeschlossen sind. Kann ereignisgesteuert sein. Beispiel:
    .
  • Neu hochgeladene Dateien an Cloud Vision AI senden, dann schreiben Tags in Firestore
  • Cloud Run-Funktion aufrufen und Ergebnisse an einen Cloud Run-Dienst senden
Batchjobs Mehrere Elemente bearbeiten: Hiermit können Sie Vorgänge für mehrere Elemente oder Batch-Daten. Oft geplant. Beispiel:
    .
  • Tägliche E-Mails an Kunden senden
  • BigQuery- oder ML-Jobs vorbereiten und ausführen
  • Berichte erstellen
Geschäftsprozesse Geschäftsbereichs-Workflows automatisieren: Codieren Sie die Schritte in einem Geschäftsprozess, einschließlich Bedingungen, Aktionen und Human-in-the-Loop-Ereignissen. Beispiel:
    .
  • Bestellung von der Anfrage bis zur Auftragsausführung verfolgen
  • Ressourcenanfragen mit Genehmigungen automatisieren
Automatisierung von IT-Prozessen Verwaltete Ausführung von Dienstvorgängen: Erstellen Sie einfach Skriptsequenzen von Google Cloud-Dienstvorgängen. Beispiel:
    .
  • Neue Mandantenprojekte oder ‑infrastrukturen bereitstellen
  • Ressourcen nach Zeitplan oder über Ereignistrigger deaktivieren

Wichtige Konzepte

Ein Workflow besteht aus einer Reihe von Schritten, die mit der Workflows-Syntax beschrieben werden. Diese kann entweder im YAML- oder JSON-Format geschrieben werden. Dies ist die Definition des Workflows. Eine ausführliche Erläuterung der Workflow-Syntax finden Sie in der Syntaxreferenz.

Nachdem ein Workflow erstellt wurde, wird er bereitgestellt. Dadurch ist der Workflow für die Ausführung bereit. Weitere Informationen zum Erstellen und Aktualisieren eines Workflows in der Google Cloud Console oder mit der Google Cloud CLI Sie können auch Ihren Workflow mithilfe einer bevorzugten IDE oder eines Quellcode-Editors Automatische Vervollständigung und Syntaxprüfung einrichten

Bei einer Ausführung wird die im Workflow eines Workflows enthaltene Logik einmal ausgeführt. Definition. Für einen nicht ausgeführten Workflow fallen keine Kosten an. Alle Die Workflow-Ausführungen sind unabhängig und die schnelle Skalierung des Produkts ermöglicht gleichzeitige Ausführungen erfolgen. Sie können einen Workflow mit der Clientbibliotheken in der Google Cloud Console, mit der Google Cloud CLI, oder durch Senden einer HTTP-POST-Anfrage an die Aufruf-URL des Workflows mithilfe von Workflows REST API. Weitere Informationen finden Sie unter Workflow ausführen.

Hauptmerkmale

Im Folgenden sind einige wichtige Funktionen von Workflows aufgeführt.

Ausführungskontrolle

Schritte
Um einen Workflow zu erstellen, definieren Sie die erforderlichen Schritte und die Ausführungsreihenfolge mithilfe der Workflow-Syntax. Jeder Workflow muss mindestens einen Schritt haben. Standardmäßig werden Schritte in Workflows so behandelt, als befänden sie sich in einer sortierten Liste, und sie werden nacheinander ausgeführt, bis alle Schritte ausgeführt wurden. Für finden Sie unter Schritte.
Bedingungen
Sie können einen switch-Block als Auswahlmechanismus verwenden, mit dem der Wert eines Ausdrucks den Ablauf der Ausführung eines Workflows steuern kann. Weitere Informationen finden Sie unter Bedingungen.
Ausführung
Mit einer for-Schleife können Sie über eine Zahlenfolge iterieren oder durch eine Sammlung von Daten wie eine Liste oder Karte. Weitere Informationen finden Sie unter Iteration:
Parallele Schritte
Mit einem parallel-Schritt können Sie einen Teil Ihres Workflows (einen Branch oder eine Schleife) definieren, der parallel ausgeführt werden kann. Weitere Informationen finden Sie unter Parallele Schritte
Untergeordnete Workflows
Ein untergeordneter Workflow funktioniert ähnlich wie ein Ablauf oder eine Funktion in einer Programmiersprache, sodass Sie einen Schritt oder eine Reihe von Schritten kapseln können, die der Workflow mehrmals wiederholt. Weitere Informationen finden Sie unter Untergeordnete Workflows.

Ausführungen auslösen

Manuell
Sie können Workflows entweder über die Google Cloud Console oder über die Befehlszeile mit der Google Cloud CLI verwalten. Unterstützung der Visualisierung beim Bearbeiten der Die Workflow-Syntax ist auch über die Google Cloud Console verfügbar.
Programmatisch
Die Cloud-Clientbibliotheken für die Workflows API oder die REST API zur Verwaltung von Workflows. Weitere Informationen finden Sie unter Workflows-APIs und Referenz.
Geplant
Mit Cloud Scheduler können Sie einen Workflow für einen bestimmten z. B. jeden Montag um 9:00 Uhr oder alle 15 Minuten. Weitere Informationen finden Sie unter Workflow mit Cloud Scheduler planen.
Laufzeitargumente
Wenn Sie auf Daten zugreifen möchten, die zur Laufzeit übergeben werden, fügen Sie Ihrem Hauptfeed ein params-Feld hinzu Workflow (in einem main-Block) Im Block main kann ein einzelnes Argument verwendet werden das ein beliebiger gültiger JSON-Datentyp ist. Das Feld params gibt den Namen Variable, mit der der Workflow die von Ihnen übergebenen Daten speichert. Weitere Informationen finden Sie unter Laufzeitargumente.

Dienste verbinden

HTTP APIs
Sie können einen Workflowschritt definieren, der einen HTTP-Aufruf ausführt und die Antwort aus dem Aufruf an eine Variable. Beispielsweise können Sie über eine HTTP-Anfrage einen Google Cloud-Dienst wie Cloud Run-Funktionen oder Cloud Run aufrufen. Sowohl HTTP- als auch HTTPS-Anfragen werden unterstützt. Weitere Informationen finden Sie unter Stellen Sie eine HTTP-Anfrage und Cloud Run-Funktionen oder Cloud Run aufrufen
Sie können private lokale, Compute Engine-, Google Kubernetes Engine (GKE)- oder andere Google Cloud-Endpunkte aufrufen, indem Sie Identity-Aware Proxy (IAP) aktivieren. Mit IAP können Sie eine zentrale Autorisierungsebene für Anwendungen, auf die über HTTPS zugegriffen wird, sodass Sie eine Zugriffssteuerungsmodell auf Anwendungsebene statt auf Netzwerkebene Firewalls. Weitere Informationen finden Sie unter Privaten lokalen Endpunkt, Compute Engine, GKE oder einen anderen Endpunkt aufrufen
Alternativ können Sie einen privaten Endpunkt für HTTP-Aufrufe aus Ihrer Workflowausführung ansteuern, indem Sie die Dienstregistrierung von Service Directory mit Workflows verwenden. Durch Erstellen eines privaten Endpunkts innerhalb einer VPC-Netzwerk (Virtual Private Cloud) kann der Endpunkt VPC Service Controls-kompatibel. Weitere Informationen finden Sie unter VPC Service Controls-konformen privaten Endpunkt aufrufen.
Connectors
Workflows veröffentlicht Connectors, mit denen Sie eine Verbindung zu anderen Google Cloud APIs in einem Workflow herstellen und Ihre Workflows in diese Google Cloud-Produkte integrieren können. Sie vereinfachen den Aufruf von Diensten, da sie die Formatierung von Anfragen für Sie verarbeiten und Methoden und Argumente bereitstellen. Sie müssen also die Details einer Google Cloud API nicht kennen. Weitere Informationen finden Sie unter Connectors.
Standardbibliothek und Umgebungsvariablen
Die Workflows-Standardbibliothek, integrierte Umgebungsvariablen, und benutzerdefinierten Umgebungsvariablen können Sie effizient für Dienste und Verarbeitungsantworten.
Die Standardbibliothek enthält Module und häufig verwendete Funktionen wie für Datentyp- und Formatkonvertierungen. Bibliotheken müssen nicht in einen Workflow importiert oder geladen werden – Bibliotheksfunktionen funktionieren sofort. Weitere Informationen finden Sie in der Übersicht über die Standardbibliothek.
Sie können auf die Umgebungsinformationen eines Workflows zugreifen, z. B. seinen Speicherort oder Projekt-ID) mithilfe von integrierten Umgebungsvariablen. Integrierte Umgebungsvariablen müssen nicht deklariert werden und sind bei jeder Workflowausführung verfügbar. Weitere Informationen finden Sie unter Vordefinierte Umgebungsvariablen.
Bei der Bereitstellung eines Workflows können Sie beliebige Schlüssel-/Wert-String-Paare als Benutzerdefinierte Umgebungsvariablen, auf die Ihr Workflow unter Laufzeit. Sie können beispielsweise einen Workflow erstellen, der dynamisch konfiguriert wird, je nach Umgebung, in der sie bereitgestellt werden. Weitere Informationen finden Sie unter Umgebungsvariablen verwenden

Fehlerbehandlung

Sie können Ihre Workflows ausfallsicher machen und ihr Verhalten bei einem Fehler anpassen, indem Sie die Ausnahmebehandlung von Workflows verwenden. Dazu gehören automatische Wiederholungen von HTTP-Aufrufen mit exponentiellem Backoff, benutzerdefinierte Fehlerhandler und andere erweiterte Funktionen. Weitere Informationen finden Sie unter Workflowfehler.

Warten

Callbacks ermöglichen es Workflow-Ausführungen, zu warten, bis ein anderer Dienst eine Anfrage an den Callback-Endpunkt sendet. Diese Anfrage setzt die Ausführung des Workflows fort. Mit Callbacks können Sie Ihrem Workflow signalisieren, dass ein bestimmtes Ereignis aufgetreten ist, und auf dieses Ereignis ohne Abfrage warten. Weitere Informationen finden Sie unter Mit Callbacks warten.

Sie können die Ausführung eines Workflows anhalten, indem Sie der Definition Ihres Workflows einen Ruhemodusschritt hinzufügen. Anschließend können Sie mit sys.sleep Daten in einem bestimmten Intervall abfragen. Weitere Informationen finden Sie unter Mit Polling warten.

Authentifizierung und Zugriffssteuerung

Da für jede Workflowausführung ein authentifizierter Aufruf erforderlich ist, können Sie mithilfe von Workflows das Risiko versehentlicher oder schädlicher Aufrufe verringern. Mit IAM-basierten Dienstkonten können Sie auch die Interaktionen mit anderen Google Cloud APIs vereinfachen. Mit dem Secret Manager-Connector können Sie Schlüssel und Passwörter zur Authentifizierung bei externen APIs sicher speichern. Weitere Informationen finden Sie unter Authentifizierung und Zugriffssteuerung.

Beobachtbarkeit

Workflows generiert automatisch Ausführungslogs für Workflowausführungen in Cloud Logging. Mit Logging und benutzerdefinierten Logs können Sie auch steuern, wann Logs während der Ausführung eines Workflows an Logging gesendet werden. Weitere Informationen finden Sie unter Logs an Cloud Logging senden.

Informationen zum Audit-Logging sind über Cloud-Audit-Logs verfügbar. Weitere Informationen Informationen zum Audit-Logging für Workflows ansehen und Workflowausführungen.

Sie können den Verlauf einer bestimmten Workflowausführung als Liste von Schritten abrufen. Jeder Eintrag steht für einen Schritt oder Anweisungsblock bei der Workflowausführung. Schritteinträge können Ihnen helfen, die Ursache eines Fehlers zu ermitteln oder die Leistung eines Workflows zu optimieren.

Codebeispiele

Auf der Seite mit Beispielen finden Sie viele nützliche Codebeispiele für Workflows.

Nächste Schritte