dc.description.abstract
Cloud Computing hat in den letzten Jahren reges Interesse erfahren. Die Vision von Cloud Computing, Kunden Rechenleistung als Dienstleistung wie Wasser, Strom oder Gas anzubieten, impliziert das Vorhandensein von schier unlimitierten und augenblicklich verfügbaren Rechenresourcen. Jedoch gibt es noch viele Hindernisse auf dem Weg dieses Ziel zu erreichen. Diese Dissertation nimmt zwei davon in Angriff, die im Bezug zu Service Level Agreements (deutsch etwa Dienstgütevereinbarung, Abk. SLA) stehen: adaptive SLA Mappings (deutsch etwa SLA Zuordnungen) und resource- und energieeffizientes SLA enactement (deutsch etwa das Einhalten von SLAs). Ein Anbieter von Cloud Computing, der seine Rechenresourcen anbieten möchte, unterzeichnet einen Vertrag, ein sogenanntes SLA, mit seinem Kunden. In diesem SLA spezifiziert der Anbieter die Gütekriterien (englisch Quality of Service, Abk. QoS), die er einhalten möchte, den Preis, den der Kunde bezahlen muss, sowie die Strafe, die der Anbieter bezahlen muss, falls er die QoS-Garantien bricht. Der Kunde hat sein eigenes SLA mit QoS-Garantien, die er sucht, und mit den Preisen, die er zu zahlen bereit ist. Das Zusammenbringen von Angebot und Nachfrage ist speziell deshalb schwierig, weil nicht standardisierte, sich häufig ändernde Definitionen von Rechenresourcen in elektronischen Märkten eine große Vielfalt an verschiedenen SLAs verursachen. Des Weiteren sind diese SLAs meistens in internen Geschäftsprozessen verankert und können daher nicht leicht verändert werden.<br />Wir verwenden in dieser Dissertation SLA-Vorlagen (englisch SLA templates) und SLA Mappings, die es Anbietern und Kunden erlauben sich Parameter ihrer SLAs gegenseitig zuzuordnen ohne die originalen SLAs verändern zu müssen. Von diesen Mappings lernen wir die Präferenzen der Anwender. Dadurch sind wir in der Lage öffentliche SLA-Vorlagen zu generieren und zu adaptieren, die die Anwenderpräferenzen widerspiegeln und die uns helfen SLAs zu standardisieren. Wir präsentieren eine Kosten-Nutzenrechnung von diesem Ansatz und evaluieren verschiedene Lern- und Adaptionsstrategien. Nachdem sich Angebot und Nachfrage gefunden haben und das SLA unterzeichnet worden ist, muss der Cloud Computing-Anbieter seine Versprechen trotz dynamischer Auslastungsveränderungen einhalten um SLA-Strafzahlungen zu vermeiden. Andererseits sind auch Resourceunterauslastung und die dadurch entstehende Energieverschwendung große Kostenfaktoren in großen verteilen Systemen (englisch large-scale distributed systems). Daher haben Cloud Computing-Anbieter das Ziel SLA-Verletzungen zu minimieren, die Resourceauslatung zu maximieren und Energieverschwendung zu minimieren. Allerdings ist dies nicht einfach, da Cloud Computing-Infrastrukturen aus vielen verschieden konfigurierbaren Elementen bestehen. Diese Elemente sind Applikationen, virtuelle Maschinen (VM), physische Maschinen (Server, Abk. PM) und andere Cloud-Anbieter, zu denen man Applikationen outsourcen kann. Dies führt zu einer unüberschaubaren Anzahl an möglichen Rekonfigurations- und Reallokationssaktionen von diesen Elementen und den Resourcen, denen sie zugeordnet sind. Viele der entstehenden Probleme sind typischerweise NP-schwer.<br />Diese Dissertation benutzt Autonomic Computing und Wissensmanagement (englisch knowledge management, Abk. KM) um Cloud Computing-Infrastrukturen zu verwalten und zu steuern. Wir finden und strukturieren mögliche reaktive und proaktive Aktionen, die SLA-Verletzungen vermeiden, die Resourcenauslastung erhöhen und den Energieverbrauch reduzieren. Zuerst konzentrieren wir uns auf die (Re-)konfiguration von VM-Resourcen und betrachten einige Wissensmanagementmethoden wie Case Based Reasoning (deutsch Fallbasiertes Schließen), Default Logic, Situationskalkül (englisch situation calculus) und einen regelbasierten Ansatz. Wir entwerfen und implementieren eine KM-agnostische Simulationsumgebung, mit der wir die Eignung dieser Ansätze evaluieren. Der regelbasierte Ansatz schneidet am besten ab, sowohl was die Qualität der empfohlenen Aktionen, als auch seine Skalierbarkeit (englisch scalability) betrifft. Allerdings wurden auch Parameter identifiziert, die die Leistung des regelbasierten Ansatzes stark beeinflussen. Deswegen wurde ein selbstadaptiver regelbasierter Ansatz entwickelt, der sich schwankender Auslastungsvolatilität (englisch workload volatility) autonom anpasst.<br />Weiters beschreiben wir Lösungen und Modelle für das Migrieren von VMs und das PM-Power-Management. Wir zeigen, dass dieses Managementproblem eine Instanz des NP-schweren binary integer programming-Problems ist und evaluieren mehrere Heuristiken, die den Energieverbrauch reduzieren.<br />Dabei zeigen wir auch, dass die (Re-)konfigurationen der VMs nicht nur die Resource-, sondern auch die Energieeffizienz steigern. Schließlich präsentieren wir eine mögliche Erweiterung der KM-Lösung für Cloud-Föderationen (englisch Cloud federations).<br />
de