Browsing by Author "Harzenetter, Lukas"
Now showing 1 - 3 of 3
- Results Per Page
- Sort Options
Item Open Access An integrated management system for composed applications deployed by different deployment automation technologies(2023) Harzenetter, Lukas; Breitenbücher, Uwe; Binz, Tobias; Leymann, FrankAutomation is the key to enable an efficient, fast, and reliable deployment of applications. Therefore, several deployment automation technologies emerged in recent years whereby each technology has its specific field of application: While some are bound to cloud providers and offer provider-specific functionalities, others enable multi-cloud deployments but mostly do not support provider-specific features. As a consequence, often companies have to use multiple deployment technologies in combination to deploy large applications. However, the management capabilities of most deployment technologies are limited or even non-existent. This issue becomes even more severe if different parts of a single application are deployed by different technologies. To tackle this issue, we present an approach that enables generating automatically executable management workflows for applications that consist of multiple components deployed by different deployment technologies. Our approach builds on top of instance models that are automatically generated based on information retrieved from the different deployment technologies involved. Based on the derived instance model, we generate workflows that manipulate the running application. We prove the technical feasibility by an open-source prototype and discuss a detailed case study.Item Open Access Modellbasiertes Management von Anwendungen(2023) Harzenetter, Lukas; Leymann, Frank (Prof. Dr. Dr. h. c.)Cloud-Anwendungen bestehen meist aus zahlreichen verschiedenen Komponenten, die zusammen die Funktionalität einer Anwendung umsetzen. Der Betrieb einer solchen Cloud-Anwendung umfasst dabei nicht nur die Bereitstellung der Anwendung, sondern auch ihr Management zur Laufzeit sowie ihre Außerbetriebnahme. Durch Deployment-Technologien lassen sich die Komponenten einer Cloud-Anwendung automatisiert und reproduzierbar bereitstellen sowie außer Betrieb nehmen. Dabei wird meist ein Deployment-Modell verwendet, welches den Zielzustand der Anwendung beschreibt und das von der entsprechenden Deployment-Technologie verarbeitet wird. Allerdings ist für das Erstellen eines Deployment-Modells Expertenwissen über die in der Anwendung verwendeten Komponenten und Technologien erforderlich, zum Beispiel welche Komponenten zusammenarbeiten können und welche Technologien sich gegenseitig ausschließen. Des Weiteren ist das Management ein zentraler Bestandteil einer sich im Betrieb befindlichen Anwendung. Wie auch für die Bereitstellung wird für das Management einer Anwendung Expertenwissen über die eingesetzten Komponenten und Technologien benötigt. Dabei können die Komponenten der Anwendung über mehrere Cloud-Anbieter und in-Haus-Lösungen verteilt sein und steigern somit die Komplexität dieser Aufgabe. Aktuelle Arbeiten und Deployment-Technologien unterstützten das automatisierte Management von verteilten Anwendungskomponenten jedoch kaum. Da die Komponenten einer Anwendung darüber hinaus meist von mehreren interdisziplinären Teams entwickelt werden, werden zudem unterschiedliche Deployment-Technologien für einzelne Komponenten eingesetzt. Dies erschwert das ganzheitliche Management einer Anwendung zusätzlich. In der vorliegenden Dissertation werden diese Herausforderungen angegangen, indem eine Methode vorgestellt wird, mit der (i) Anwendungen modelliert werden können, ohne dass Expertenwissen über Komponenten, Technologien und deren Konfigurationen benötigt wird. Anstelle der konkreten Komponenten und Technologien können Deployment-Modelle mit Muster modelliert werden, die abstrakte Lösungen zu wiederkehrenden Problemen beschreiben. Anschließend werden die Muster in einem solchen musterbasierten Deployment-Modell automatisiert zu passenden Komponenten und Technologien verfeinert. Bevor eine Anwendung im nächsten Schritt automatisiert bereitgestellt wird, kann das nun ausführbare Deployment-Modell (ii) automatisiert um zusätzliche Managementfunktionalitäten erweitert werden. Diese können zur Laufzeit der Anwendung ausgeführt werden und unterstützen sowohl verteilte Multi-Cloud-Anwendungen als auch Anwendungen, die mit mehreren Deployment-Technologien bereitgestellt werden. Zum Beispiel wird ein Managementkonzept eingeführt, das (iii) Anwendungen im aktuellen Zustand außer Betrieb nehmen und im selben Zustand wieder bereitstellen kann. Neben neu modellierten Anwendungen können die in dieser Arbeit vorgestellten Konzepte auch (iv) auf bereits laufende Anwendungen übertragen und angewendet werden. Die Umsetzbarkeit der Konzepte wird durch einen Open-Source Prototyp gezeigt.Item Open Access Versioning of applications modeled in TOSCA(2018) Harzenetter, LukasCloud applications are subject to frequent changes to enable fast feedback on user requests about problems and features, or to provide security updates. In both cases, the topology of a cloud application may change. If, for instance, these changes are only applied to one software component and are not propagated into the service’s topology, the whole application stack may not start anymore. Thus it is crucial to maintain a runnable version of the service’s topology to ensure the availability of the cloud application. The Topology Orchestration Specification for Cloud Applications (TOSCA) is an emerging standard to describe and manage cloud applications. Since it is not able of handling multiple versions of an artifact, this thesis presents an approach to version TOSCA definitions. It is achieved by appending a version identifier at the end of each root element’s id. This way it is ensured that the approach conforms to the TOSCA specification. Further, it ensures the validity of all artifacts by preventing users from performing changes to committed versions. In addition to the versioning approach, a second approach for determining differences between two versions is presented. Besides a generic difference representation, it provides two types of visualizing changes: 1.) a textual visualization for all elements and 2.) a graphical visualization for Topology Templates. Both approaches are implemented prototypically in the context of Eclipse Winery, a web-based modeling tool for TOSCA elements.