Master Thesis MSTR-2019-10

BibliographySahin, Müslüm: GitOps basiertes Continuous Delivery für Serverless Anwendungen.
University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Master Thesis No. 10 (2019).
119 pages, german.
Abstract

Das Ziel dieser Masterarbeit ist ein Konzept für eine anbieterunabhängige Continuous Delivery Lösung für Serverless Anwendungen zu entwickeln und prototypisch umzusetzten. Serverless bezeichnet ein Paradigma, bei dem die Infrastruktur komplett vom Entwickler verborgen bleibt und vom Cloud Anbieter verwaltet wird. Function-as-a-Service (FaaS) beschreibt ein Serverless Cloud-Service mit der kleine, kurzlebige und ereignisgesteuerte Funktionen bereitgestellt werden. Aufgrund der feinen Granularität von Business Services erhöht sich die Komplexität für Deployment und Management der Anwendung. Daher sind automatisierte DevOps Methoden durch Continuous Delivery und Infrastructure-as-Code (IaC) essentiell für eine zuverlässige, sichere und schnellere Softwareauslieferung. Dies wird bereits von einigen Cloud Providern mit eigenen Cloud-Services unterstützt, was jedoch zu einem Vendor Lock-in führt, da individuelle Implementierungen und DevOps-Prozesse vom Anbieter abhängig sind. Daher untersucht diese Arbeit den Stand der Technik im Bereich Herausforderungen, Konzepte, Technologien im gemeinsamen Kontext von Serverless, Continuous Delivery und Multi-Cloud. Hierfür wird eine systematische Literaturrecherche (SLR) verwendet. Statistische Analysen der SLR und weitere Recherchen haben ergeben, dass die Einschränkungen von proprietären FaaS-Plattformen durch Abstraktionen und Multi-Cloud Tools ein alternatives Konzept ergeben, der Vendor Lock-in aber immer noch existiert. Ein Pseudo-Algorithmus wurde entwickelt, um das geeignete Infrastructure-as-Code (IaC) Modell für das Vendor Lock-in Problem zu finden, solange keine Standards für Serverless Anwendungen existieren. Auf Basis weiterer Recherchen wurde ein Konzept für eine GitOps basierte Continuous Delivery Pipeline entwickelt. Um das Konzept zu zeigen wurde eine prototypische CI/CD Pipeline anhand einer Beispielanwendung implementiert. Das Konzept bietet eine Isolierung der Plattform-Anbieter und ist anbieterunabhängig. Das Ergebnis der Arbeit hat gezeigt, dass die Technologie noch jung in Bezug auf Tooling-Support, Standardisierung und Forschung ist. Weiterhin wird zu erwarten sein, dass sich die Lücke zwischen Serverless und Container-Orchestrierung irgendwann schließen wird.

Full text and
other links
Volltext
Department(s)University of Stuttgart, Institute of Architecture of Application Systems
Superviser(s)Leymann, Prof. Frank; Wurster, Michael
Entry dateJune 6, 2019
   Publ. Computer Science