Direkt zum Hauptinhalt

Orchestrierung

DATABRICKS KOSTENLOS TESTEN

Was ist Orchestrierung?

Unter dem Begriff „Orchestrierung“ versteht man die Koordination und Verwaltung mehrerer Computersysteme, Anwendungen und/oder Dienste. Dabei werden mehrere Aufgaben aneinandergereiht, um einen übergeordneten Workflow oder Prozess auszuführen. Diese Prozesse können aus mehreren Tasks bestehen, die automatisiert werden und sich auf zahlreiche Systeme erstrecken können.

Ziel der Orchestrierung ist es, die Ausführung regelmäßiger und reproduzierbarer Prozesse zu rationalisieren und zu optimieren und Datenteams so bei der Verwaltung komplexer Aufgaben und Workflows zu unterstützen. Wenn ein Prozess reproduzierbar ist und seine Aufgaben automatisiert werden können, lässt sich durch Orchestrierung Zeit sparen, die Effizienz steigern und Redundanzen beseitigen. So können Sie beispielsweise Daten- und Machine-Learning-Jobs per Orchestrierung vereinfachen.

Worin besteht der Unterschied zwischen Prozessorchestrierung und Prozessautomatisierung?

Automatisierung und Orchestrierung ergänzen sich zwar in hohem Maße, aber nichtsdestoweniger haben diese Begriffe unterschiedliche Bedeutungen. Bei der Automatisierung wird eine Aufgabe so programmiert, dass sie ohne menschliches Eingreifen ausgeführt wird. Die Orchestrierung hingegen ist die Verknüpfung mehrerer Aufgaben (von denen einige automatisiert sein können) zu einem vollständigen und konsistenten Prozess oder Job. Zudem muss Orchestrierungssoftware während des gesamten Prozessverlaufs auf Ereignisse oder Aktivitäten reagieren und Entscheidungen auf Grundlage der Ergebnisse einer automatisierten Aufgabe treffen, um die jeweils nächsten Aufgaben zu bestimmen und zu koordinieren.

Was versteht man unter Anwendungsorchestrierung?

Von einer Anwendungsorchestrierung spricht man, wenn zwei oder mehr Softwareanwendungen miteinander integriert werden. Das kann beispielsweise erforderlich sein, um einen Prozess zu automatisieren oder eine Echtzeitsynchronisierung von Daten zu ermöglichen. Die meisten Softwareentwicklungsprojekte benötigen eine Anwendungsorchestrierung, da es andernfalls deutlich schwieriger sein wird, Projekte in den Bereichen Anwendungsentwicklung, Datenanalyse, Machine Learning und KI zu skalieren.

Die Anwendungsorchestrierung erlaubt es Ihnen, Ihre Integrationen zentral zu verwalten und zu überwachen sowie Funktionen für Nachrichtenweiterleitung, Sicherheit, Transformation und Zuverlässigkeit zu ergänzen. Dieser Ansatz ist effektiver als eine Punkt-zu-Punkt-Integration, da die Integrationslogik von den eigentlichen Anwendungen entkoppelt ist und stattdessen in einem Container verwaltet wird.

Was versteht man unter Dienstorchestrierung?

Die Dienstorchestrierung funktioniert ähnlich wie die Anwendungsorchestrierung: Sie können hiermit Systeme cloudanbieter- und bereichsübergreifend koordinieren und verwalten – eine Fähigkeit, die in der heutigen Welt unverzichtbar ist. Der Ansatz umfasst Microservice-, Netzwerk- und Workflow-Orchestrierung.

Einzelne Dienste können sich von Haus aus nicht untereinander integrieren: Sie alle haben ihre eigenen Abhängigkeiten und Anforderungen. Je komplexer das System ist, desto wichtiger ist es, die verschiedenen Komponenten zu koordinieren. Auf diese Weise können Sie Infrastrukturen nach Bedarf skalieren, Systeme für geschäftliche Ziele optimieren und Ausfälle bei der Dienstbereitstellung vermeiden.

Was genau versteht man unter der Containerorchestrierung?

Vielleicht ist Ihnen der Begriff „Containerorchestrierung“ im Kontext der Anwendungs- oder Dienstorchestrierung schon einmal begegnet. Was also ist Containerorchestrierung und warum sollten wir sie einsetzen?

Als Containerorchestrierung bezeichnet man die automatisierte Verwaltung und Koordination von Containern. Softwareteams nutzen die besten Tools für Containerorchestrierung, um Aufgaben wie die Bereitstellung und Implementierung von Containern, die Ressourcenverteilung zwischen Containern, die Überwachung der Containerintegrität und die Sicherung der Interaktionen zwischen Containern zu kontrollieren und zu automatisieren.

Wie funktioniert die Containerorchestrierung?

Softwareorchestrierungsteams verwenden in der Regel Tools zur Containerorchestrierung wie Kubernetes und Docker Swarm. Zunächst beschreiben Sie die Konfiguration Ihrer App in einer Datei, die dem Tool angibt, wo es Containerimages sammelt und wie die Vernetzung zwischen den Containern erfolgen soll.

Das Tool plant zudem die Implementierung von Containern in Clustern und findet auf der Grundlage vorgegebener Beschränkungen wie Labels oder Metadaten den geeignetsten Host. Anschließend verwaltet es den Lebenszyklus des Containers anhand der in der Datei festgelegten Spezifikationen.

Aber warum brauchen wir eigentlich eine Containerorchestrierung? Und worin besteht der Zweck von Automatisierung und Orchestrierung? Nun, mit einer automatisierten Containerorchestrierung können Sie Anwendungen mit einem einzigen Befehl skalieren, in kürzester Zeit neue containerisierte Anwendungen erstellen, um den wachsenden Datenverkehr zu bewältigen, und den Installationsprozess vereinfachen. Außerdem wird damit die Sicherheit verbessert.

Was ist Cloudorchestrierung?

Als Cloudorchestrierung bezeichnet man den Prozess der Automatisierung von Aufgaben zur Verwaltung von Verbindungen in Private Clouds und Public Clouds. Ferner umfasst er automatisierte Aufgaben und Prozesse zur Erweiterung von Workflows, um Sie bei der Ausführung bestimmter geschäftlicher Funktionen zu unterstützen.

Die zunehmende Bedeutung des Cloud-Computings, das Public Clouds, Private Clouds und Hybrid-Clouds umfasst, hat zu einer wachsenden Komplexität beigetragen. Dadurch entsteht ein Bedarf an Software zur Cloudorchestrierung, die Abhängigkeiten cloudübergreifend verwalten und einsetzen kann. Die Orchestrierung von Clouddiensten umfasst Aufgaben wie die Bereitstellung von Server-Workloads und Speicherkapazität sowie die Orchestrierung von Diensten, Workloads und Ressourcen.

Bedenken Sie dabei, dass Cloudorchestrierung und Automatisierung unterschiedliche Dinge sind: Die Cloudorchestrierung befasst sich mit gesamten IT-Prozessen, während sich die Automatisierung auf einen einzelnen Teil davon konzentriert. Die Orchestrierung vereinfacht die Automatisierung in einer Multicloud-Umgebung und sorgt gleichzeitig dafür, dass Richtlinien und Sicherheitsprotokolle eingehalten werden.

Was ist Sicherheitsorchestrierung?

Die Sicherheitsorchestrierung gewährleistet, dass Ihre automatisierten Sicherheitstools reibungslos zusammenarbeiten, und rationalisiert ihren Einsatz durch die Sicherheitsteams. Ziel ist es, den Tools die Kommunikation untereinander und den Austausch von Daten zu ermöglichen. Dadurch wird das Potenzial für menschliche Fehler verringert, die Teams können besser auf Bedrohungen reagieren, und es lassen sich Zeit und Kosten einsparen.

Was ist Security Orchestration Automation and Response (SOAR)? Das Akronym beschreibt drei vom US-amerikanischen Marktforschungsunternehmen Gartner definierte Eigenschaften von Software:

  • Orchestrierung: Verwaltung von Bedrohungen und Sicherheitslücken
  • Automatisierung: Automatisierung von Sicherheitsabläufen
  • Response: Reaktion auf sicherheitsrelevante Vorfälle (Incidents)

Dieser Ansatz kombiniert Automatisierung und Orchestrierung und gestattet es Unternehmen, das Threat Hunting, das Erfassen von Bedrohungsdaten und die Reaktion auf nachrangige Bedrohungen zu automatisieren.

Was ist eine Orchestrierungsschicht?

Eine Orchestrierungsschicht wird benötigt, wenn Sie mehrere API-Dienste koordinieren müssen. Sie ermöglicht es Ihnen, Ihren Connector mit dem einer Drittanwendung zu verbinden oder Anweisungen zwischen den Connectors auszutauschen. Dadurch entsteht im Endeffekt eine einzige API, die als Reaktion auf eine einzelne API-Anforderung mehrere verschiedene Dienste aufruft.

Außerdem verwaltet sie die Datenformatierung zwischen verschiedenen Diensten, wenn Anforderungen und Antworten geteilt, zusammengeführt oder weitergeleitet werden müssen. Durch Hinzufügen dieser Abstraktionsschicht statten Sie Ihre API mit einer Intelligenzebene für die Kommunikation zwischen Diensten aus. Eine Orchestrierungsschicht unterstützt Sie bei der Datentransformation, beim Servermanagement, beim Umgang mit Authentifizierungen und bei der Integration von Altsystemen.

In der Cloud verwaltet eine Orchestrierungsschicht die Interaktionen und Verbindungen zwischen cloudbasierten und On-Premises-Komponenten. Hierzu gehören Server, Netzwerkgeräte, virtuelle Maschinen sowie Sicherheits- und Speichereinrichtungen.

Was versteht man unter Journey-Orchestrierung?

Was ist die Customer-Journey-Orchestrierung? Die Journey-Orchestrierung führt das Konzept des Customer-Journey-Mappings noch einen Schritt weiter. Hierbei werden, statt auf historische Daten zurückzugreifen, Customer Journeys per Automatisierung in Echtzeit personalisiert. Das Ziel bleibt dabei, die ideale Customer Journey zu kreieren und modellieren.

Die Journey-Orchestrierung ermöglicht es Unternehmen außerdem, flexibel zu bleiben, sich auf Veränderungen einzustellen und potenzielle Probleme zu erkennen, bevor sie auftreten.

Orchestrierungstools

Die für komplexe Aufgaben erforderliche Orchestrierung stellt hohe Anforderungen an Datenteams und erfordert spezialisierte Tools zur Entwicklung, Verwaltung, Überwachung und zuverlässigen Ausführung solcher Pipelines. Derartige Tools sind üblicherweise von den eigentlichen Daten oder Machine-Learning-Aufgaben getrennt. Diese fehlende Integration führt zu einer Zersplitterung der unternehmensweiten Anstrengungen sowie dazu, dass die Benutzer häufig den Kontext wechseln müssen.

Da Unternehmen immer mehr Initiativen im Bereich Business Intelligence (BI) und künstliche Intelligenz (KI) starten, ist der Bedarf an einfachen, skalierbaren und zuverlässigen Orchestrierungstools gewachsen. Es gibt mittlerweile eine Vielzahl von Tools, die Teams durch Bereitstellung eines Frameworks zur Automatisierung von Workloads dabei unterstützen, die Vorteile der Orchestrierung voll auszuschöpfen.

Tools für die Dienstorchestrierung helfen Ihnen bei der Integration verschiedener Anwendungen und Systeme, während Cloudorchestrierungstools das Zusammenführen mehrerer Cloudsysteme ermöglichen. Orchestrierungstools unterstützen Sie auch dabei, End-to-End-Prozesse von zentraler Stelle aus zu verwalten, und vereinfachen die Erstellung von Prozessen, sodass Sie Workflows einrichten können, die sonst nicht realisierbar wären.

Databricks beispielsweise ermöglicht Ihnen das Zusammenführen Ihrer Data-Warehousing- und KI-Anwendungen auf einer gemeinsamen Plattform. Klicken Sie hier, um zu erfahren, wie Sie Databricks-Workloads orchestrieren.

Was versteht man unter ARO?

Mit ARO (Application Release Orchestration, also der Orchestrierung von Anwendungsversionen) können DevOps-Teams die Anwendungsbereitstellung automatisieren, CI/CD-Pipelines (Continuous Integration/Continuous Delivery) verwalten und Freigabe-Workflows orchestrieren. Ziel ist es, Qualität, Geschwindigkeit und Governance neuer Anwendungsversionen zu optimieren.

Neben Implementierungsautomatisierung und Pipelinemanagement ermöglichen ARO-Tools Unternehmen das team-, technologie-, verfahrens- und Pipeline-übergreifende Skalieren von Veröffentlichungsaktivitäten. Zu den bekannteren ARO-Tools gehören GitLab, Microsoft Azure Pipelines und FlexDeploy.

Was ist Prozessorchestrierung?

Zwar sind automatisierte Prozesse für eine effektive Orchestrierung erforderlich, doch besteht dabei das Risiko, dass der Einsatz unterschiedlicher Tools für die einzelnen Aufgaben (und deren Erwerb bei verschiedenen Anbietern) zur Entstehung von Silos führen kann. Sie müssen Ihre Tools und Workflows daher integrieren – und genau das ist mit Prozessorchestrierung gemeint.

Bei der Prozessorchestrierung werden einzelne Aufgaben zu End-to-End-Prozessen zusammengefasst und die Systemintegration mit universellen Connectors, direkten Integrationen oder API-Adaptern optimiert. Nachfolgend können die IT-Teams den gesamten Prozesslebenszyklus von einem zentralen Standort aus verwalten.

Zu den Vorteilen gehören die durch die Koordinierung und Konsolidierung unterschiedlicher Tools reduzierte Komplexität, eine kürzere MTTR (Mean Time to Resolution) infolge der zentralisierten Überwachung und Protokollierung von Prozessen sowie die Integration neuer Tools und Technologien in eine einzige Orchestrierungsplattform. Eine derartige Softwareorchestrierung ermöglicht es, praktisch jedes Tool oder jede Technologie in kürzester Zeit zu integrieren.

Der Zweck von Datenorchestrierungsplattformen

Bei der Datenorchestrierung handelt es sich um einen automatisierten Prozess, bei dem Daten von verschiedenen isolierten Speicherorten zusammengeführt und strukturiert werden, um sie für die Analyse vorzubereiten. Der Prozess verknüpft alle Ihre Rechenzentren, unabhängig davon, ob es sich um herkömmliche Systeme, cloudbasierte Tools oder Data Lakes handelt. Die Daten werden in ein Standardformat überführt, sodass sie leichter zu erfassen und für die Entscheidungsfindung nutzbar sind.

In den meisten Unternehmen fallen enorm viele Daten an, für deren Organisation automatisierte Tools unverzichtbar sind. Was versteht man in diesem Zusammenhang unter Big-Data-Orchestrierung? Das ist die Bezeichnung für den Prozess der Organisation von Daten, die zu groß, zu schnell oder zu komplex sind, um sie mit herkömmlichen Methoden verarbeiten zu können. Die Datenorchestrierung identifiziert auch „Dark Data“, d. h. Informationen, die Serverkapazität belegen, aber nie genutzt werden.

Plattformen zur Datenorchestrierung sind ideal, um Compliance sicherzustellen und Probleme zu erkennen. Eine Orchestrierungsplattform für den Zahlungsverkehr ermöglicht Ihnen beispielsweise in Echtzeit den Zugriff auf Kundendaten. So erkennen Sie alle potenziell problematischen Transaktionen sofort.

Was ist Orchestrierung bei DevOps?

Als DevOps-Orchestrierung bezeichnet man die Koordination der DevOps-Praktiken in Ihrem gesamten Unternehmen sowie die zu diesem Zweck eingesetzten Automatisierungstools. Das Ziel besteht darin, Produktionsprobleme zu minimieren und die Time-to-Market neuer Releases zu verkürzen.

Die Orchestrierung Ihrer automatisierten Aufgaben hilft Ihnen, Ihre Automatisierungstools optimal zu nutzen. Damit kehren wir zur Frage des Unterschieds zwischen Orchestrierung und Automatisierung zurück: Grundsätzlich können Sie die Effizienz durch eine Automatisierung zahlreicher gleichzeitig ausgeführter Funktionen maximieren, aber die Orchestrierung ist notwendig, um das Zusammenspiel dieser Funktionen zu gewährleisten.

Mit der DevOps-Orchestrierung für eine cloudbasierte Implementierungspipeline können Sie beispielsweise Entwicklung, Qualitätssicherung und Produktion kombinieren.

Was bedeutet Docker-Orchestrierung?

Docker ist eine benutzerfreundliche Container-Runtime, die verschiedene Tools zum Entwickeln containerisierter Anwendungen bereitstellt. Sie können Ihren Code in ein Image packen, das anschließend zum Erstellen eines Containers verwendet werden kann. Folglich bezeichnet der Begriff „Docker-Orchestrierung“ verschiedene Verfahren und Technologien zur Verwaltung von Docker-Containern.

Eine solche Containerorchestrierung ist notwendig, wenn Ihre containerisierten Anwendungen auf eine große Anzahl von Containern skaliert werden. Sie wird für Aufgaben wie die Einrichtung von Containern, die Hoch- und Herunterskalierung, die Verwaltung von Netzwerkgeräten und den Lastausgleich verwendet.

Das Docker-Ökosystem bietet mehrere Tools zur Orchestrierung, beispielsweise Swarm. In der Regel wird Kubernetes zur Orchestrierung von Docker-Containern verwendet, aber auch Containerplattformen in der Cloud bieten grundlegende Orchestrierungsfunktionen.

Orchestrierung von Daten- und Machine-Learning-Pipelines in Databricks

Mit Databricks wird das Orchestrieren mehrerer Aufgaben zur einfachen Erstellung von Workflows für Daten und Machine Learning zum Kinderspiel.

Die Orchestrierung von Aufgaben mit mehreren Schritten erleichtert die Definition von Daten- und ML-Pipelines mit voneinander abhängigen, modularen Tasks, die aus Notebooks, Python-Skripten und JAR-Dateien bestehen. Datenteams können bequem mehrstufige Pipelines erstellen und verwalten, die Daten transformieren und verfeinern und Machine-Learning-Algorithmen trainieren – und das alles innerhalb der gewohnten Arbeitsumgebung von Databricks. So sparen die Teams immens viel Zeit, Aufwand und Kontextwechsel.

Im obigen Beispiel verwendet ein Job mit mehreren Tasks zwei davon für das Einlesen von Daten: Clicks_Ingest und Orders_Ingest. Diese eingelesenen Daten werden dann im Task Match aggregiert und gefiltert. Daraus werden mit den Tasks Build_Features, Persist_Features und Train neue Machine-Learning-Features generiert und festgeschrieben sowie neue Modelle trainiert.

Die Joborchestrierung ist vollständig in Databricks integriert und erfordert weder zusätzliche Infrastruktur noch DevOps-Ressourcen. Kunden können mithilfe der Jobs-API oder über die Benutzeroberfläche Jobs und Funktionen wie E-Mail-Benachrichtigungen zur Überwachung erstellen und verwalten.

Ihr Datenteam muss keine neuen Fähigkeiten erlernen, um diese Funktion nutzen zu können. Sie können damit zudem alles orchestrieren, was außerhalb von Databricks und cloudübergreifend über eine API verfügt, z. B. aus CRMs abgerufene Daten. Steigen Sie jetzt ein und aktivieren Sie die neue Joborchestrierung für Ihren Arbeitsbereich (AWS | Azure | GCP).

Zusätzliche Ressourcen

Zurück zum Glossar