HEAL DSpace

Application distribution to computing systems

Αποθετήριο DSpace/Manakin

Εμφάνιση απλής εγγραφής

dc.contributor.author Dimitrios, Dologlou en
dc.contributor.author Δόλογλου, Δημήτριος el
dc.date.accessioned 2022-10-12T10:16:43Z
dc.date.available 2022-10-12T10:16:43Z
dc.identifier.uri https://dspace.lib.ntua.gr/xmlui/handle/123456789/55900
dc.identifier.uri http://dx.doi.org/10.26240/heal.ntua.23598
dc.rights Default License
dc.subject Application distribution en
dc.subject Κατανομή Εφαρμογών el
dc.subject Resource management en
dc.subject Kubernetes en
dc.subject Scheduler en
dc.subject Interference Awareness en
dc.subject Νεφοϋπολογιστιικό Σύστημα el
dc.subject Διαθεσιμότητα el
dc.subject Κυβερνήτης el
dc.subject Αλγόριθμοι el
dc.title Application distribution to computing systems en
dc.title Κατανομή εφαρμογών σε υπολογιστικά συστήματα el
heal.type bachelorThesis
heal.classification Computer Engineering en
heal.classification Τομέας Τεχνολογίας Πληροφορικής και Υπολογιστών el
heal.language el
heal.language en
heal.access free
heal.recordProvider ntua el
heal.publicationDate 2022-03
heal.abstract Ο σκοπός της διπλωματικής εργασίας ήταν η ανάπτυξη αλγορίθμων για την βελτιστοποίηση της διαδικασίας κατανομής εφαρμογών σε υπολογιστικά νέφη. Καθώς η χρήση του υπολογιστικού νέφους αυξάνεται, ταυτόχρονα αυξάνονται και οι απαιτήσεις υπολογιστικών πόρων για την διάθεση υπηρεσιών, όπως η εξυπηρέτηση εφαρμογών. Όμως, η παροχή υπολογιστικών πόρων αποτελεί σημαντικό κόστος και είναι φυσικά αδύνατο να έχουμε απεριόριστους πόρους. Συνεπώς είναι επιτακτική η υλοποίηση αλγοριθμικών τεχνικών που κατανέμουν εφαρμογές σε υπολογιστικά νέφη με τέτοιον τρόπο, ώστε αφενός να εξοικονομούμε τη διάθεση πόρων κατά το μέγιστο δυνατό και αφετέρου να διατηρούμε την εξυπηρέτηση των εφαρμογών στο απαιτούμενο επίπεδο. Για την κατανομή εφαρμογών σε υπολογιστικά συστήματα, χρησιμοποιείται ευρέως ένα σύστημα ενορχήστρωσης γνωστό ως Kubernetes. Το Kubernetes αξιοποιεί την χρήση των containers για την διαχείριση και κατανομή εφαρμογών. Μάλιστα ένα από τα main components του Kubernetes είναι ο Scheduler του, ο οποίος καθορίζει το πως και το πότε θα κατανεμηθούν οι εφαρμογές που καταφτάνουν στον cluster. Σε αυτό ακριβώς το σημείο προσπαθούμε να εισάγουμε αλγοριθμικές τεχνικές, οι οποίες επηρεάζουν την συμπεριφορά του Scheduler και καθορίζουν τον τρόπο που θα κατανεμηθούν οι εφαρμογές. Ως αποτέλεσμα, δημιουργούνται ζεύγη εφαρμογών, με σκοπό την καλύτερη εξοικονόμηση των διαθέσιμων πόρων αλλά και την αδιάλειπτη διαθεσιμότητα των εφαρμογών Για την πειραματική αξιολόγηση των παραπάνω, υλοποιήθηκε ένας server από φυσικά μηχανήματα, που επιτρέπει την εξυπηρέτηση εφαρμογών. Η βελτίωση της απόδοσης των εφαρμογών που παρατηρήθηκε όμως, δεν αποτελεί μονοσήμαντο συμβάν του συγκεκριμένου φυσικού server, καθώς οι αλγόριθμοι είναι υλοποιημένοι με τέτοιο τρόπο, ώστε να επηρεάζουν την συμπεριφορά του Kubernetes Scheduler ασχέτως του συστήματος που βρίσκονται. Συνεπώς, η παραπάνω τεχνική κατανομής εφαρμογών, μπορεί να βελτιώσει αισθητά την αντιστοίχιση εφαρμογών σε οποιοδήποτε server, εξοικονομώντας υπολογιστικούς πόρους στο μέγιστο δυνατό. el
heal.abstract The purpose of this thesis was the development of algorithmic concepts, in order to optimize the process of distributing applications to cloud-based environments. Considering that the usage of cloud computing has been increasing steadily over time, consequently has increased the demand of more computing resources, in order to provide services, such as hosting applications. Nonetheless, providing computing resources is a significant cost and it is physically impossible to have unlimited assets. Therefore, it is imperative to implement algorithmic techniques, which distribute applications to cloud computing services in such manner, so that on one hand, we save the disposal of resources as much as possible and on the other hand, we maintain hosting applications at the desired level. In order to distribute applications to computing systems, an increasingly famous orchestration system is used, known as Kubernetes. Kubernetes makes use of containers to manage and distribute applications. Moreover, one of Kubernetes’ main components is its Scheduler, which dictates when and how applications will be distributed, when arriving at the cluster. At that exact point, we aim at adding algorithmic techniques, which will affect the Scheduler’s behavior and determine the assignment of applications to server sockets. As a result, pairs of applications are created, with the intension of conserving as many resources as possible, whilst also maintaining the availability of our applications. Regarding evaluating the above mentioned, a physical server was set up, so that to allow application hosting. The improvement observed on application performance, is not dedicated to this specific physical server, since the algorithms are constructed in such way, so that they alter the behavior of the Kubernetes Scheduler, in spite of the system they are operating on. In conclusion, the aforementioned technique of distributing applications, can improve noticeably the workload share on any server, preserving computing resources as much as possible. en
heal.advisorName Γκούμας, Γεώργιος el
heal.advisorName Goumas, Georgios en
heal.committeeMemberName Γκούμας, Γεώργιος el
heal.committeeMemberName Πνευματικάτος, Διονύσιος el
heal.committeeMemberName Κοζύρης, Νεκτάριος el
heal.academicPublisher Εθνικό Μετσόβιο Πολυτεχνείο. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Τομέας Τεχνολογίας Πληροφορικής και Υπολογιστών el
heal.academicPublisherID ntua
heal.numberOfPages 80 σ. el
heal.fullTextAvailability false


Αρχεία σε αυτό το τεκμήριο

Αυτό το τεκμήριο εμφανίζεται στην ακόλουθη συλλογή(ές)

Εμφάνιση απλής εγγραφής