Skip to content
NextLytics
Megamenü_2023_Über-uns

Shaping Business Intelligence

Ob clevere Zusatzprodukte für SAP BI, Entwicklung aussagekräftiger Dashboards oder Implementierung KI-basierter Anwendungen - wir gestalten zusammen mit Ihnen die Zukunft von Business Intelligence. 

Megamenü_2023_Über-uns_1

Über uns

Als Partner mit tiefem Prozess-Know-how, Wissen der neuesten SAP-Technologien sowie hoher sozialer Kompetenz und langjähriger Projekterfahrung gestalten wir die Zukunft von Business Intelligence auch in Ihrem Unternehmen.

Megamenü_2023_Methodik

Unsere Methodik

Die Mischung aus klassischem Wasserfallmodell und agiler Methodik garantiert unseren Projekten eine hohe Effizienz und Zufriedenheit auf beiden Seiten. Erfahren Sie mehr über unsere Vorgehensweise.

Produkte
Megamenü_2023_NextTables

NextTables

Daten in SAP BW out of the Box bearbeiten: Mit NextTables wird das Editieren von Tabellen einfacher, schneller und intuitiver, egal ob Sie SAP BW on HANA, SAP S/4HANA oder SAP BW 4/HANA nutzen.

Megamenü_2023_Connector

NextLytics Connectoren

Die zunehmende Automatisierung von Prozessen erfordert die Konnektivität von IT-Systemen. Die NextLytics Connectoren ermöglichen eine Verbindung Ihres SAP Ökosystems mit diversen open-source Technologien.

IT-Services
Megamenü_2023_Data-Science

Data Science & Engineering

Bereit für die Zukunft? Als starker Partner stehen wir Ihnen bei der Konzeption, Umsetzung und Optimierung Ihrer KI-Anwendung zur Seite.

Megamenü_2023_Planning

SAP Planning

Wir gestalten neue Planungsanwendungen mithilfe von SAP BPC Embedded, IP oder  SAC Planning, die einen Mehrwert für Ihr Unternehmen schaffen.

Megamenü_2023_Dashboarding

Dashboarding

Mit unserer Expertise verhelfen wir Ihnen auf Basis von Tableau, Power BI, SAP Analytics Cloud oder SAP Lumira zu aussagekräftigen Dashboards. 

Megamenü_2023_Data-Warehouse-1

SAP Data Warehouse

Planen Sie eine Migration auf SAP HANA? Wir zeigen Ihnen, welche Herausforderungen zu beachten sind und welche Vorteile eine Migration bringt.

Business Analytics
Megamenü_2023_Procurement

Procurement Analytics

Transparente und valide Zahlen sind vor allem in Unternehmen mit dezentraler Struktur wichtig. SAP Procurement Analytics ermöglicht die Auswertung von SAP ERP-Daten in SAP BI.

Megamenü_2023_Reporting

SAP HR Reporting & Analytics

Mit unserem Standardmodell für Reporting von SAP HCM mit SAP BW beschleunigen Sie administrative Tätigkeiten und stellen Daten aus verschiedenen Systemen zentral und valide zur Verfügung.

Megamenü_2023_Dataquality

Data Quality Management

In Zeiten von Big Data und IoT kommt der Vorhaltung einer hohen Datenqualität eine enorm wichtige Bedeutung zu. Mit unserer Lösung für Datenqualitätsmanagement (DQM) behalten Sie stets den Überblick.

Karriere
Megamenü_2023_Karriere-2b

Arbeiten bei NextLytics

Wenn Du mit Freude zur Arbeit gehen möchtest und dabei Deine berufliche und persönliche Weiterentwicklung nicht zu kurz kommen soll, dann bist Du bei uns genau richtig! 

Megamenü_2023_Karriere-1

Berufserfahrene

Zeit für etwas Neues? Gehe Deinen nächsten beruflichen Schritt und gestalte Innovation und Wachstum in einem spannenden Umfeld zusammen mit uns!

Megamenü_2023_Karriere-5

Berufseinsteigende

Schluss mit grauer Theorie - Zeit, die farbenfrohe Praxis kennenzulernen! Gestalte bei uns Deinen Einstieg ins Berufsleben mit lehrreichen Projekten und Freude an der Arbeit.

Megamenü_2023_Karriere-4-1

Studierende

Du möchtest nicht bloß die Theorie studieren, sondern Dich gleichzeitig auch praktisch von ihr überzeugen? Teste mit uns Theorie und Praxis und erlebe wo sich Unterschiede zeigen.

Megamenü_2023_Karriere-3

Offene Stellen

Hier findest Du alle offenen Stellenangebote. Schau Dich um und bewirb Dich - wir freuen uns! Falls keine passende Stelle dabei ist, sende uns gerne Deine Initiativbewerbung zu.

Blog
NextLytics Newsletter Teaser
Hier für unseren monatlichen Newsletter anmelden!
Newsletter abonnieren
 

Apache Airflow auf Windows Server betreiben - Ist dies sinnvoll?

Die richtigen Daten zum richtigen Zeitpunkt am richtigen Ort, für die jeweiligen Adressaten passend aufbereitet. So könnte man die ideale Vision einer funktionierenden Business Intelligence Infrastruktur beschreiben. Um dies zu erreichen, braucht es in der Realität häufig eine Vielzahl von Systemkomponenten, die im richtigen Takt miteinander harmonieren müssen. Wenn die Zahl der Quellsysteme und Abnehmer eines Analyse-Data-Warehouse steigt, werden allein die Koordination und das Monitoring der korrekten und planmäßigen Abläufe zu einer Herausforderung. Ein Orchestrierungsdienst wie Apache Airflow kann das passende Instrument sein, um den Überblick zu behalten. Airflow bietet nicht nur eine Vielzahl von Funktionen zur Steuerung, Sicherung und Nachverfolgung von geplanten Aufgaben an, sondern kann als Open Source Projekt auch lizenzkostenfrei betrieben werden. Doch für viele Unternehmen stellt sich schnell die Frage: Lässt sich Apache Airflow auf einem Windows Server betreiben? Wir möchten heute die Möglichkeiten, Vor- und Nachteile darstellen.

Uns begegnen immer wieder Unternehmen, die einen passenden Dienst für die Definition und das Management von Workflows und Daten-Pipelines suchen. NextLytics rät dabei aus Überzeugung zu Apache Airflow. Airflow setzt vollständig auf einen Code-basierten Ansatz für die Definition von Workflows und Abläufen, das schafft große Verlässlichkeit und ermöglicht einen vollständig nachvollziehbaren Betriebsprozess für dieses schlagende Herz einer Business Intelligence Infrastruktur. Airflow setzt weiterhin auf Erweiterbarkeit, ist mit Python in der populärsten Programmiersprache der Gegenwart verankert und ist mit unzähligen Erweiterungsmodulen hochgradig anpassbar. Dass Apache Airflow primär für den Betrieb auf Linux-Betriebssystemen, in einer Container-Virtualisierungplattform oder der Cloud ausgelegt ist, stellt mitunter eine Hürde dar: Daten sollen nur im eigenen Rechenzentrum verarbeitet werden oder es gibt noch keine umsetzungsreife Cloud-Strategie. Und schließlich: die hauseigene IT-Abteilung bietet nur Windows Server als Betriebssystem an.

Apache Airflow und Windows: die Möglichkeiten

Apache Airflow setzt auf eine Micro-Services-Architektur, d.h. verschiedene, einzeln skalierbare Dienste übernehmen unterschiedliche Aufgaben und kommunizieren per Webservice-Schnittstellen miteinander. Eine solche Architektur lässt sich mittels Containervirtualisierung mit wenig Aufwand betreiben, sofern die passende Infrastruktur zur Verfügung steht. Für kleine bis mittlere Größenordnungen reicht hier oft ein virtueller Server mit Docker Engine. Mächtigere Systeme fühlen sich in einem Kubernetes Cluster besonders wohl. Insbesondere Docker hat in den letzten Jahren viel Aufwand betrieben, um als Virtualisierungsschicht auch auf Windows Server Betriebssystemen lauffähig zu sein. Auf den ersten Blick scheint der Fall damit klar: Windows Server mit Docker Engine bereitstellen, die Airflow Container ausrollen und es kann losgehen.

Apache Airflow auf Windows Server

In der Praxis ist man schnell mit verschiedenen Varianten und Problemen konfrontiert. Die gängigen Betriebsvarianten für Airflow mittels Docker auf einem Windows System sind:

  1. Betrieb der Docker Engine mittels Docker Desktop.
  2. Betrieb einer Docker Engine in einer virtuellen Linux-Umgebung, die mittels “Windows Subsystem for Linux” (WSL) bereitgestellt wird.

Für beide Varianten finden sich eine Vielzahl von Anleitungen und Best Practices im Netz, doch Vorsicht: wirklich reibungslos funktioniert es nicht!

Apache Airflow mit Docker Desktop

Die vermutlich einfachste Möglichkeit, Airflow auf einem Windows Betriebssystem laufen zu lassen, setzt auf das Programm “Docker Desktop”. Docker Desktop bietet eine grafische Benutzeroberfläche, um die Docker Engine zu aktivieren und Docker Container zu starten. Die aktuelle Version von Docker Desktop nutzt das Windows Subsystem for Linux v2, um für den Anwender völlig unbemerkt eine virtuelle Linux-Umgebung im Hintergrund aufzubauen und darin die Docker Engine zu betreiben. Das Command Line Interface der Docker Engine wird dann ins Windows Betriebssystem durchgereicht und ist über die bekannten Befehle wie “docker run” oder auch “docker compose” direkt aus Powershell erreichbar.

In dieser Variante erfolgt eine weitestgehend nahtlose Integration in den Windows Server. Basisverzeichnisse für eine Compose-basierte Installation von Airflow liegen direkt im Windows Dateisystem und können mit den üblichen Tools wie Powershell, Git for Windows und Explorer verwaltet werden.

Ein weiterer großer Pluspunkt ist, dass Docker Desktop die Port-Weiterleitung zwischen Betriebssystem und Docker Containern automatisiert und hier keinerlei Zusatzaufwand und Konfiguration anfallen. Auch ein Betrieb des Systems nach Continuous Integration / Continuous Delivery Prinzipien kann mit einem beliebigen Werkzeug problemlos erreicht werden, wie zum Beispiel GitLab CI/CD oder Azure DevOps Pipelines.

Docker Desktop_Apache Airflow auf Windows Server

 

Docker Desktop ist als grafisches Programm konzipiert, das von einem angemeldeten Benutzer ausgeführt wird. Wenn Apache Airflow als dauerhaft laufenden Dienst betrieben werden soll, ist das zunächst hinderlich. Über ein zusätzliches Start-Skript, das per Windows Diensteverwaltung beim Serverstart ausgeführt wird, kann das gewünschte Verhalten trotzdem erreicht werden. Auch die Docker Engine lässt sich mittels Konfigurationsparameter so einrichten, dass sie beim Reboot automatisch gestartet wird.

In dieser Variante haben unsere Tests gezeigt, dass das Einbinden von Airflow-Verzeichnissen aus dem Windows Dateisystem in die Docker Container problematisch ist. Offensichtlich werden Datei-Sperrmechanismen anders verhandelt als auf Linux-basierten Servern, sodass das Einlesen von Airflow DAG-Definitionsdateien fehleranfällig ist. Es empfiehlt sich daher, Airflow Docker Images so zu konfigurieren, dass die üblicherweise vom Hostsystem eingebundenen Verzeichnisse vollständig in das Image eingebunden sind.


Effektives Workflowmanagement mit Apache Airflow 2.0

NextLyitcs Whitepaper Apache Airflow DE


Welches Hindernis steht dem Betrieb von Apache Airflow auf diese Weise im Wege? Aus technischer Sicht keines, allein der Umstand, dass Docker Desktop ein lizenzpflichtiges Produkt ist. Für Testbetrieb und kleine Unternehmen kann die Nutzung kostenfrei sein. Ab einem bestimmten Jahresumsatz oder mehr als 500 Mitarbeitenden müssen jedoch Lizenzen erworben werden. Preislich liegen diese zwischen 60 Dollar und ein paar hundert Dollar pro Jahr für wenige Nutzer.

Gibt es eine Möglichkeit, das Open Source System Airflow auch ohne zusätzliche Lizenzkosten auf Windows Server zu betreiben? Wir haben die folgende Variante ebenfalls für Sie getestet:

Apache Airflow mit WSL

Seit einigen Jahren ist das Windows Subsystem for Linux praktisch flächendeckend in die Betriebssysteme aus dem Hause Microsoft integriert. Es ermöglicht den Betrieb von leichtgewichtigen virtuellen Betriebssystemumgebungen auf Linux-Basis innerhalb eines laufenden Windows Betriebssystems. Sollte es damit nicht auch möglich sein, Apache Airflow mittels Docker in einer solchen WSL Umgebung komplett wie auf einem nativen Linux-Server zu betreiben?

Wir haben die Variante mit einer Ubuntu WSL Umgebung getestet. Die WSL Umgebung wird gemäß üblicher Anleitungen erzeugt und per Kommandozeile gesteuert, ganz wie ein vollwertiger Ubuntu Server. Die Docker Engine in der WSL Umgebung wird wiederum ganz herkömmlich installiert und eine handelsübliche lokale Betriebsumgebung für Apache Airflow mit Git und docker-compose vorbereitet.

Kompliziert wird diese Variante an der Schnittstelle von Windows Betriebssystem und der WSL Linux-Umgebung. WSL Umgebungen sind darauf ausgelegt, von einem angemeldeten Benutzer zur Laufzeit gestartet und bedient zu werden. Der automatische Start mit dem Host-Betriebssystem ist zunächst nicht vorgesehen und muss über Skripte konstruiert werden. Auch eine Integration der Benutzerkennungen zwischen den beiden Umgebungen existiert nicht, sodass in der WSL Umgebung ein eigenes lokales Benutzermanagement erfolgen muss. Schließlich fehlt auch die Kommunikation des Host-Betriebssystems mit der Docker Engine in der WSL Umgebung, sodass Portfreigaben händisch gesetzt werden müssen.

Fazit unserer Tests für diese Variante ist, dass das benötigte Linux-Server Know How sogar größer ist, als für den Betrieb eines vollwertigen Servers. Auch die Anzahl der komplexen Workarounds aufgrund der mangelnden automatischen Integration mit dem Windows Server Betriebssystem spricht gegen einen ernsthaften Produktivbetrieb von Airflow.

Im Vergleich der beiden aussichtsreichsten Varianten, Apache Airflow auf Windows Server Betriebssystemen zu installieren, gewinnt trotz zusätzlicher Lizenzkosten eindeutig der Weg über Docker Desktop. Ideal ist diese Variante trotzdem nicht, wirkt sie doch eher für den Test und die Entwicklung von System im Einzelbenutzermodus optimiert.

Die Alternativen

Aufgrund unserer langjährigen Erfahrung empfehlen wir auch Kunden mit Windows-Serverlandschaft den Betrieb von Apache Airflow auf einem nativen Linux-Betriebssystem. Die Integration von etablierten Distributionen wie Ubuntu, Red Hat Enterprise Linux oder OpenSuse mit Microsoft Active Directory Domänen geht mittlerweile leicht von der Hand. Identity Management und Zugriffskontrolle lassen sich so auch gut auf einen Linux-Server übertragen. Support für das Betriebssystem selbst gibt es bei vielen Anbietern als Dienstleistung; wir selbst bieten diesen Service gerne im Rahmen von Airflow Supportverträgen direkt mit an. Im Betrieb der Docker Engine von der Airflow Systemumgebung selbst entfallen viele Workarounds und ein stabiler Betrieb ist weltweit unzählige Male erprobt und bewiesen.

Wenn die Compliance auf keinen Fall einen Server mit Linux Betriebssystem in der hauseigenen Verantwortung zulässt, ist der Bezug von Apache Airflow als Cloud Service eine gute Alternative. Hier gibt es die schlüsselfertigen Angebote von Amazon Web Services (“Amazon Managed Workflows for Apache Airflow”, MWAA) oder Google Cloud Platform (“Cloud Composer”). Wenn die Anforderungen spezieller sind oder ein direkter Kontakt und kundennaher technischer Support gewünscht wird, betreiben wir von NextLytics auch gerne eine Airflow-Instanz auf der Infrastruktur Ihrer Wahl. Voraussetzung ist in jedem Fall eine Cloud Strategie und Definition von Datenschutzrichtlinien.

Apache Airflow auf Windows Server - Unser Fazit

Apache Airflow bietet als Orchestrierungsdienst für Data Warehouse und Business Intelligence Plattformen viele Vorteile, die auch von Unternehmen mit einer Windows-basierten Serverlandschaft gerne genutzt werden. Der Betrieb von Airflow direkt auf Windows Server Betriebssystemen ist grundsätzlich möglich, aber immer mit komplexen technischen Kniffen und/oder zusätzlichen Lizenzkosten verbunden.

Apache Airflow funktioniert am besten auf Linux-Servern oder direkt als Cloud Service und lässt sich auch in diesen Varianten in der Regel gut in Windows-Umgebungen integrieren. Wir beraten Sie gerne bei der Auswahl der besten Lösung - NextLytics möchte jedem die Möglichkeiten von Apache Airflow eröffnen.

Erfahren Sie mehr über Apache Airflow

avatar

Markus Suhr

Markus Suhr ist seit 2022 als Senior Berater für Machine Learning und Data Engineering bei der NextLytics AG tätig. Mit einschlägiger Erfahrung als Systemarchitekt und Teamleiter im Bereich Data Engineering kennt er sich bestens mit Microservices, Datenbanken und Workflow Orchestrierung aus - insbesondere im Bereich der Open Source Lösungen. In seiner Freizeit versucht er, das komplexe System des Gemüseanbaus im eigenen Garten zu optimieren.

Sie haben eine Frage zum Blog?
Fragen Sie Markus Suhr

Gender Hinweis Aufgrund der besseren Lesbarkeit wird im Text das generische Maskulinum verwendet. Gemeint sind jedoch immer alle Menschen.

Blog - NextLytics AG 

Welcome to our blog. In this section we regularly report on news and background information on topics such as SAP Business Intelligence (BI), SAP Dashboarding with Lumira Designer or SAP Analytics Cloud, Machine Learning with SAP BW, Data Science and Planning with SAP Business Planning and Consolidation (BPC), SAP Integrated Planning (IP) and SAC Planning and much more.

Informieren Sie mich über Neuigkeiten

Verwandte Beiträge

Letzte Beiträge