<div class="csl-bib-body">
<div class="csl-entry">Rashed, A. (2019). <i>Optimized container scheduling for serverless edge computing</i> [Diploma Thesis, Technische Universität Wien]. reposiTUm. https://doi.org/10.34726/hss.2019.63525</div>
</div>
-
dc.identifier.uri
https://doi.org/10.34726/hss.2019.63525
-
dc.identifier.uri
http://hdl.handle.net/20.500.12708/1515
-
dc.description.abstract
Edge Computing ist ein neues Paradigma, welches heterogene Rechen- und Speicherressourcen am Netzwerkrand in unmittelbarer Nähe zu den eigentlichen Datenproduzenten wie Sensoren und mobilen Geräten ermöglicht. Aufgrund ihrer Heterogenität leiden Edge-Computing-Umgebungen unter hoher Komplexität. Diese Komplexität kann jedoch durch den Einsatz von Serverless Computing reduziert werden, einem neuen Cloud Computing-Ausführungsmodell, bei dem die Infrastrukturkomponenten für den Anwendungsentwickler völlig transparent sind. Darüber hinaus passt der ereignisgesteuerte Charakter des Internet der Dinge das eines der Hauptanwendungsgebiete von Edge Computing sein wird perfekt zum ereignisgesteuerten Charakter von Function-as-a-Service, einer speziellen Implementierung von Serverless Computing. Die meisten Function-as-a-Service Plattformen verwenden containerbasierte Virtualisierung. Um Container im großen Maßstab in einem Cluster zu integrieren und zu verwalten wurden mehrere Container-Orchestrierungsplattformen eingeführt, wobei Kubernetes zum De-Facto-Standard wurde. Der Kubernetes-Scheduler ist zwar flexibel, basiert aber auf der Grundannahme, dass die Cluster-Infrastruktur sehr homogen ist. Diese Arbeit beschreibt das Design, die Implementierung und die Evaluierung eines integrierten, latenz- und fähigkeitsbewussten Schedulers für den Betrieb einer Function-as-a-Service Plattform in einer gemischten Cloud-Edge-Computerumgebung. Wir stellen den Skippy-Scheduler vor, der den standardmäßigen Kubernetes-Scheduler um domänen-spezifische Prioritätsfunktionen erweitert, um die Platzierungsqualität für Funktionen in gemischten Cloud-Edge-Clustern zu erhöhen. Diese domänenspezifischen Prioritätsfunktionen verwenden zusätzliche Metadaten der Funktionen sowie der Knoten im Cluster. Um das Sammeln dieser Metadaten der Knoten zu automatisieren, wird der Skippy-Daemon eingeführt. Da die Konfiguration der einzelnen Gewichte der Prioritätsfunktionen nicht trivial ist, implementieren wir einen Optimierungsansatz. Unsere Ergebnisse zeigen, dass unser Scheduler den standardmäßigen Kubernetes-Scheduler im Durchschnitt über alle getesteten Szenarien übertrifft. Darüber hinaus erhöht die Optimierung die Platzierungsqualität zusätzlich deutlich. Im Vergleich zum standardmäßigen Kubernetes-Scheduler reduziert unser optimierter Scheduler die Bandbreitenauslastung um 67,52%, senkt die Kosten um 100%, erhöht die Ressourcenauslastung der Edge-Geräte um 245,37% und reduziert die Task-Ausführungszeit um 71,18% im Durchschnitt über alle getesteten Szenarien.
de
dc.description.abstract
Edge computing is a new paradigm which enables heterogeneous computing and storage resources located at the network edge, in close proximity to the actual data producers like sensors and mobile devices. Due to their heterogeneous nature, edge computing environments are suffering from high complexity. However, this complexity can be decreased by leveraging serverless computing, a new cloud computing execution model in which the infrastructure components are entirely transparent to the application developer. Additionally, the event-centric nature of the Internet of Things which will be one of the main application fields of edge computing fits perfectly to the event-driven nature of Function-as-a-Service, a specific implementation of serverless computing. Most Function-as-a-Service platforms are utilizing container-based virtualization. In order to integrate and manage containers at scale in a cluster, multiple container orchestration platforms have been introduced, with Kubernetes becoming the de-facto standard. While the Kubernetes scheduler is flexible, it is based on the basic assumption that the cluster infrastructure is highly homogeneous. This thesis describes the design, implementation, and evaluation of an integrated, latency-, and capability-aware scheduler for running a Function-as-a-Service platform in a mixed cloud-edge computing environment. We introduce the Skippy scheduler, which extends the default Kubernetes scheduler with domain-specific priority functions in order to increase the placement quality for functions in mixed cloud-edge clusters. Those domain-specific priority functions are utilizing additional metadata of the functions as well as of the nodes in the cluster. In order to automate the gathering of this metadata of nodes, the Skippy daemon is introduced. Since the configuration of the individual weights of the priority functions isnt trivial, we implement an optimization approach. Our results show that our scheduler outperforms the default Kubernetes scheduler on average across all tested scenarios. Furthermore, the optimization additionally increases its placement quality significantly. Compared to the default Kubernetes scheduler, our optimized scheduler decreases the bandwidth usage by 67.52%, decreases the cost by 100%, increases the edge device resource utilization by 245.37%, and decreases the task execution time by 71.18% on average across all tested scenarios.
en
dc.language
English
-
dc.language.iso
en
-
dc.rights.uri
http://rightsstatements.org/vocab/InC/1.0/
-
dc.subject
Serverless
en
dc.subject
Scheduling
en
dc.subject
Edge Computing
en
dc.subject
Fog Computing
en
dc.subject
FaaS
en
dc.subject
Function-as-a-Service
en
dc.subject
IoT
en
dc.subject
Internet-of-Things
en
dc.subject
Container
en
dc.subject
Kubernetes
en
dc.subject
Docker
en
dc.title
Optimized container scheduling for serverless edge computing
en
dc.type
Thesis
en
dc.type
Hochschulschrift
de
dc.rights.license
In Copyright
en
dc.rights.license
Urheberrechtsschutz
de
dc.identifier.doi
10.34726/hss.2019.63525
-
dc.contributor.affiliation
TU Wien, Österreich
-
dc.rights.holder
Alexander Rashed
-
dc.publisher.place
Wien
-
tuw.version
vor
-
tuw.thesisinformation
Technische Universität Wien
-
dc.contributor.assistant
Rausch, Thomas
-
tuw.publication.orgunit
E194 - Institut für Information Systems Engineering
-
dc.type.qualificationlevel
Diploma
-
dc.identifier.libraryid
AC15562534
-
dc.description.numberOfPages
137
-
dc.identifier.urn
urn:nbn:at:at-ubtuw:1-133872
-
dc.thesistype
Diplomarbeit
de
dc.thesistype
Diploma Thesis
en
dc.rights.identifier
In Copyright
en
dc.rights.identifier
Urheberrechtsschutz
de
tuw.advisor.staffStatus
staff
-
tuw.assistant.staffStatus
staff
-
tuw.advisor.orcid
0000-0001-6872-8821
-
tuw.assistant.orcid
0000-0001-5988-9041
-
item.languageiso639-1
en
-
item.openairetype
master thesis
-
item.grantfulltext
open
-
item.fulltext
with Fulltext
-
item.cerifentitytype
Publications
-
item.mimetype
application/pdf
-
item.openairecristype
http://purl.org/coar/resource_type/c_bdcc
-
item.openaccessfulltext
Open Access
-
crisitem.author.dept
E194 - Institut für Information Systems Engineering