Copil, E. G. (2016). Cloud services elasticity control: from requirements specification to operations management [Dissertation, Technische Universität Wien]. reposiTUm. https://doi.org/10.34726/hss.2016.34128
Utility basiertes Computing, wie etwa Cloud Computing, ist eine treibende Kraft für die Etablierung stark verteilter Anwendungen (z.B. microservice-basierte Anwendungen). Cloud Computing ermöglicht es unterschiedlichen Gruppen von Akteuren aus einer Vielzahl von Konfigurationen zu wählen um ihre Anwendungen zu betreiben (z.B. öffentlich-private bzw. multi-Cloud Bereitstellung). Zusätzlich können Applikationen an unterschiedliche Technologie- und Geschäftsperspektiven optimal angepasst werden. Nach Entwicklung der Anwendung können Interessenvertreter entscheiden ihre Anwendung als Cloud Dienste (d.h. Software als Service) anzubieten und profitieren damit von den bereitgestellten Cloud Diensten (die z.B. Ressourcen je nach Bedarf bereitzustellen in der Form von Infrastruktur als Service oder Plattform als Service). Um die ganze Bandbreite an Cloud Diensten zu nutzen, müssen Interessengruppen ihre Anwendungen entsprechend anpassen und dabei die Last, sowie die Anforderungen der Benutzer, berücksichtigen. Dabei ist es wichtig die gewünschte Qualität zu einem möglichst niedrigen Preis für die bereitgestellten Cloud Ressourcen zu erreichen. Um jedoch diese Vorgaben zu erfüllen, müssen Betreiber solcher Anwendungen entweder fachkundige Personen, die Überwachung und Anpassung übernehmen, bezahlen, oder vorhandene Lösungen die von Cloud Anbietern bereitgestellt werden, verwenden. Diese Lösungen bieten allerdings nur einfache Skalierungsmöglichkeiten, die es nicht erlauben komplexe Anwendungen, Anwendungseinstellungen, und Abhängigkeiten zwischen Anwendungskomponenten zu betrachten. In dieser Arbeit wird ein Framework zur Elastizitätssteuerung von Cloud Diensten vorgestellt. Beginnend mit den Elastizitätsanforderungen wird die Sprache SYBL vorgestellt. SYBL unterstützt Akteure bei der Beschreibung von Anwendungsanforderungen durch Verwendung mehrerer Abstraktionsgrade. Mit dieser Sprache als Grundlage wird das Werkzeug rSYBL vorgestellt um die Elastizität von Cloud Diensten zu steuern. Dabei werden Verhalten sowie spezifizierte Anforderungen betrachtet. Um diese Steuerung zu verbessern, wird das Verhalten von Cloud Diensten über die Zeit und mittels mehrfacher Abstraktionsgrade geschätzt, welche auf Mechanismen basieren, die ebenfalls in rSYBL integriert werden. Das Framework wird weiter ausgebaut um das Operationsmanagement zur Laufzeit zu unterstützen und dabei Elastizitätsinteressen zu berücksichtigen. Dies erlaubt die Integration von unterschiedlichen Akteuren in den ganzen Elastizitätskontrollprozess. Unter Verwendung eines illustrativen Szenarios wird jeder der vorgeschlagenen Mechanismen überprüft und analysiert. Die gewonnenen Ergebnisse zeigen, dass rSYBL in der Lage ist, während der Laufzeit, Cloud Dienste, unter Verwendung von Überwachungsinformationen und Elastizitätsanforderungen, zu steuern.
de
Utility based computing, such as cloud computing, is a driving force for the adoption of highly distributed applications (e.g., microservices-based applications). Through the use of cloud computing, application stakeholders can choose from a multitude of configurations for their application deployment, e.g., public-private deployments, multi-cloud deployments, and can adapt to whatever is best for their application from the technology and business perspectives. After the application deployment, stakeholders may choose to offer the application as a cloud service (i.e., Software as a Service), benefiting from cloud providers services (e.g., resources on-demand offered by Infrastructure as a Service providers or platforms on-demand offered by Platform as a Service providers). For fully using cloud-offered services, the application needs to be adapted by its stakeholders, considering the load, and their users' requirements, to obtain the desired quality at the minimum price to be paid to cloud providers in exchange for their resources. However, for achieving this, the application owner needs to pay a specialized person for monitoring and adapting whenever needed the application, or to use existing solutions offered by cloud providers which enable solely simple scaling, without considering complex applications, application-level configurations, and dependencies among application components. In this thesis, a framework for elasticity control of cloud services is proposed. Starting from high-level requirements, a language, SYBL, is proposed, which supports service stakeholders in describing their requirements at multiple levels of abstraction. With this language as a basis, a framework, rSYBL, is proposed, in order to control cloud service elasticity considering its behavior and the specified requirements. For improving the control, the behavior of cloud services, in time, at multiple levels of abstraction, is estimated, based on mechanisms that are also integrated in rSYBL. The framework is further extended for supporting operations management at runtime, considering elasticity concerns, integrating stakeholders/employees in the whole control process. Using an illustrative case study, each of the proposed mechanisms is evaluated. Results show that rSYBL is able to control cloud services, during runtime using monitoring information and requirements coming from stakeholders.