dc.contributor.author |
Διαμαντή, Χριστίνα
|
el |
dc.contributor.author |
Diamanti, Christina
|
en |
dc.date.accessioned |
2025-04-03T08:29:59Z |
|
dc.date.available |
2025-04-03T08:29:59Z |
|
dc.identifier.uri |
https://dspace.lib.ntua.gr/xmlui/handle/123456789/61598 |
|
dc.identifier.uri |
http://dx.doi.org/10.26240/heal.ntua.29294 |
|
dc.rights |
Default License |
|
dc.subject |
εξισορρόπηση φορτίου |
el |
dc.subject |
αυτόματη κλιμάκωση |
el |
dc.subject |
υπολογιστικό νέφος |
el |
dc.subject |
διαχείριση πόρων |
el |
dc.subject |
αρχιτεκτονική χωρίς διακομιστές |
el |
dc.subject |
Knative |
en |
dc.subject |
AIMD |
en |
dc.subject |
cloud computing |
en |
dc.subject |
serverless |
en |
dc.subject |
load balancing |
en |
dc.subject |
kubernetes |
en |
dc.subject |
autoscaling |
en |
dc.title |
Δυναμικός προγραμματισμός διεργασιών σε περιβάλλοντα Knative |
el |
heal.type |
bachelorThesis |
|
heal.secondaryTitle |
Design and Implementation of a Dynamic Load Balancer Based on AIMD for Knative |
el |
heal.classification |
Υπολογιστικά Νέφη |
el |
heal.classification |
Εξισσορόπηση Φορτίου |
el |
heal.classification |
Μοντέλο Serverless |
el |
heal.language |
el |
|
heal.access |
free |
|
heal.recordProvider |
ntua |
el |
heal.publicationDate |
2024-10-30 |
|
heal.abstract |
Η παρούσα διπλωματική εργασία ασχολείται με την πρόκληση του δυναμικού χρονοπρογραμματισμού διεργασιών και της εξισορρόπησης φορτίου σε περιβάλλοντα χωρίς διακομιστές, συγκεκριμένα στα πλαίσια του Knative. Καθώς οι σύγχρονες cloud-native εφαρμογές αντιμετωπίζουν κυμαινόμενα φορτία εργασίας, η διατήρηση της βέλτιστης απόδοσης και της αποδοτικής χρήσης πόρων καθίσταται κρίσιμη, ιδίως σε περιβάλλοντα κατανεμημένου και περιφερειακού υπολογισμού. Η εργασία που παρουσιάζεται εδώ προτείνει τον σχεδιασμό και την υλοποίηση ενός προσαρμοσμένου εξισορροπιστή φορτίου, βασισμένου στον αλγόριθμο Additive Increase Multiplicative Decrease (AIMD), ο οποίος ενσωματώνεται στο οικοσύστημα Knative. Αυτός ο εξισορροπιστής φορτίου προσαρμόζει δυναμικά τους ρυθμούς αποδοχής των εισερχόμενων αιτημάτων, διασφαλίζοντας την αποτελεσματική κατανομή της κίνησης σε πολλαπλές υπηρεσίες. Η λύση αξιοποιεί τόσο το Knative Pod Autoscaler (KPA) όσο και το Horizontal Pod Autoscaler (HPA) για τη διαχείριση της κλιμάκωσης των πόρων, σε απόκριση σε πραγματικού χρόνου μοτίβα κίνησης. Η ενσωμάτωση του RabbitMQ για τη διαχείριση των μηνυμάτων και του Redis για τη διαχείριση της κατάστασης επιτρέπει την απρόσκοπτη επικοινωνία μεταξύ των ελεγκτών αποδοχής και των υπηρεσιών κατανάλωσης. Πραγματοποιήθηκαν εκτεταμένες δοκιμές και αξιολογήσεις επιδόσεων υπό διάφορες συνθήκες φόρτου, συμπεριλαμβανομένων σταθερών και εκρηκτικών μοτίβων κίνησης. Τα αποτελέσματα καταδεικνύουν ότι η προσέγγιση που βασίζεται στο AIMD εξισορροπεί αποτελεσματικά την κυκλοφορία, αποτρέπει τη συμφόρηση στις ουρές αναμονής και κλιμακώνει δυναμικά τους πόρους, οδηγώντας σε βελτιωμένη απόδοση του συστήματος. Εκτός από την αντιμετώπιση του βασικού ζητήματος της εξισορρόπησης του φορτίου, η διατριβή εξετάζει τη δυνατότητα ενσωμάτωσης πιο εξελιγμένων μηχανισμών αυτόματης κλιμάκωσης. Η μελλοντική εργασία περιλαμβάνει την υιοθέτηση μοντέλων πρόβλεψης φόρτου εργασίας και σκιαγράφησης πόρων, βασισμένων στη μηχανική μάθηση, για την περαιτέρω βελτιστοποίηση των αποφάσεων κλιμάκωσης. Η προτεινόμενη λύση προσφέρει μια ευέλικτη και κλιμακούμενη αρχιτεκτονική για τη δυναμική διαχείριση πόρων σε περιβάλλοντα χωρίς διακομιστές, συμβάλλοντας στον ευρύτερο τομέα του cloud-native και του edge computing. |
el |
heal.abstract |
The present thesis deals with the challenge of the dynami- scheduling of
processes and load balancing in a process environments without servers, specifically
in the context of Knative. modern cloud-native applications are faced with fluctuating
workloads and workloads, maintaining optimal performance and efficient resource
utilization becomes critical, especially in distributed and peripheral environments.
computing. The work presented here proposes the design and implementation of
a custom load balancer based on the Additive Increase Multiplicative Decrease
(AIMD) algorithm, which integrates the integrated into the Knative ecosystem.
This load balancer adap- dynamically adjusts the acceptance rates of incoming
requests, ensuring that ensuring efficient distribution of traffic across multiple
services. The solution leverages both the Knative Pod Autoscaler (KPA) and the
Horizontal Pod Autoscaler (HPA) to manage the scaling of resources, from in
response to real-time traffic patterns. The integration of RabbitMQ for message
management and Redis for managing the message flow and the allows for seamless
communication between the admission controllers and the and consumption
services.Extensive testing and performance evaluations were carried out under
various load conditions, including steady and explosive driving patterns. The
results demonstrate that the AIMD-based approach effectively balances traffic,
prevents congestion in queues and dynamically scales resources, leading to improved
system performance.
In addition to addressing the key issue of load balancing, the thesis explores
the possibility of incorporating more sophisticated automatic scaling mechanisms.
Future work includes the adoption of workload prediction and resource profiling
models based on machine learning to further optimize scaling decisions. The
proposed solution offers a flexible and scalable architecture for dynamic resource
management in serverless environments, contributing to the broader field of cloudnative
and edge computing. |
en |
heal.advisorName |
Παπαβασιλείου, Συμεών |
el |
heal.committeeMemberName |
Παπαβασιλείου, Συμεών |
el |
heal.committeeMemberName |
Ρουσσάκη, Ιωάννα |
el |
heal.committeeMemberName |
Καρυώτης, Βασίλειος |
el |
heal.academicPublisher |
Εθνικό Μετσόβιο Πολυτεχνείο. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Τομέας Επικοινωνιών, Ηλεκτρονικής και Συστημάτων Πληροφορικής |
el |
heal.academicPublisherID |
ntua |
|
heal.numberOfPages |
168 σ. |
el |
heal.fullTextAvailability |
false |
|