Ιδρυματικό Αποθετήριο
Πολυτεχνείο Κρήτης
EN  |  EL

Αναζήτηση

Πλοήγηση

Ο Χώρος μου

Στρατηγικές τοποθέτησης μικρο-υπηρεσιών στο Kubernetes για βελτιστοποίηση του κόστους

Aznavouridis Alkiviadis

Απλή Εγγραφή


URIhttp://purl.tuc.gr/dl/dias/D9614663-A54C-4D0B-B85C-36F1E8B6C74C-
Αναγνωριστικόhttps://doi.org/10.26233/heallink.tuc.91386-
Γλώσσαen-
Μέγεθος3.4 megabytesen
Μέγεθος103 pagesen
ΤίτλοςMicroservice placement strategies in Kubernetes for cost optimizationen
ΤίτλοςΣτρατηγικές τοποθέτησης μικρο-υπηρεσιών στο Kubernetes για βελτιστοποίηση του κόστουςel
ΔημιουργόςAznavouridis Alkiviadisen
ΔημιουργόςΑζναβουριδης Αλκιβιαδηςel
Συντελεστής [Επιβλέπων Καθηγητής]Petrakis Evripidisen
Συντελεστής [Επιβλέπων Καθηγητής]Πετρακης Ευριπιδηςel
Συντελεστής [Μέλος Εξεταστικής Επιτροπής]Samoladas Vasilisen
Συντελεστής [Μέλος Εξεταστικής Επιτροπής]Σαμολαδας Βασιληςel
Συντελεστής [Μέλος Εξεταστικής Επιτροπής]Sotiriadis Stelios, Associate Professor at Birkberk, University of Londonen
ΕκδότηςΠολυτεχνείο Κρήτηςel
ΕκδότηςTechnical University of Creteen
Ακαδημαϊκή ΜονάδαTechnical University of Crete::School of Electrical and Computer Engineeringen
Ακαδημαϊκή ΜονάδαΠολυτεχνείο Κρήτης::Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστώνel
ΠεριγραφήΔιπλωματική εργασίαel
ΠερίληψηThe current Thesis proposes efficient microservice placement strategies in Kubernetes for optimizing the total monetary costs for hosting an application running in a Cloud environment. The problem of service placement is formulated as an application’s graph clustering one. The services form graphs with nodes representing services and edges representing communicating services. Both nodes and edges are labeled by resources consumed (i.e. mainly CPU and RAM resources) by the application’s microservices and affinities between these microservices (i.e. messages load exchanged per second). The result of an algorithm is a set clusters comprising nodes (i.e. microservices) communicating heavily with each other. This in turn guides to placement of service clusters to nodes (or VMs) by using heuristic methods. For collecting the essential data and for monitoring an application, Service Mesh technologies, like Istio and its related services, are utilized to supervise the network communication and the resource usage of the microservices. These strategies are implemented and tested into two microservice-based applications, iXen and Google’s OnlineBoutique eShop, into a homogeneous Cloud environment and particularly in the Google Cloud Platform. The experimental results reveal that the proposed microservice placement solutions reduce both the size of allocated resources and the network traffic of the host machines. This is achieved by reducing the number of the utilized machines and by increasing the internal communication volume of microservices in every host machine respectively. As a result, these solutions minimize the total monetary cost for the end-user.en
ΠερίληψηΗ παρούσα διπλωματική εργασία προτείνει αποδοτικές στρατηγικές τοποθέτησης μικροϋπηρεσιών στο Kubernetes για την βελτιστοποίηση του συνολικού χρηματικού κόστους φιλοξενίας μιας εφαρμογής σε ένα περιβάλλον νέφους. Το πρόβλημα της τοποθέτησης μικροϋπηρεσιών διατυπώνεται ως πρόβλημα συσταδοποίησης του γράφου μιας εφαρμογής. Οι υπηρεσίες σχηματίζουν γράφους με τους κόμβους να αντιπροσωπεύουν μικροϋπηρεσίες και οι ακμές να αντιπροσωπεύουν επικοινωνούσες μικροϋπηρεσίες. Τόσο οι κόμβοι, όσο και οι ακμές, χαρακτηρίζονται από τους πόρους που καταναλώνουν (δηλαδή κυρίως πόρους CPU και RAM) από τις μικροϋπηρεσίες μιας εφαρμογής και από τις συσχετίσεις μεταξύ αυτών των μικροϋπηρεσιών (δηλαδή το φορτίο των μηνυμάτων που ανταλλάσσονται ανά δευτερόλεπτο). Το αποτέλεσμα ενός αλγορίθμου είναι ένα σύνολο συστάδων που περιλαμβάνει κόμβους (δηλαδή μικροϋπηρεσίες) που επικοινωνούν σε μεγάλο βαθμό μεταξύ τους. Αυτό με τη σειρά του οδηγεί στην τοποθέτηση συστάδων υπηρεσιών σε κόμβους (ή VMs) χρησιμοποιώντας ευρηματικές μεθόδους. Για την συλλογή των απαραίτητων δεδομένων και την επόπτευση της εφαρμογής χρησιμοποιούνται τεχνολογίες εξυπηρέτησης πλέγματος (Service Mesh), όπως είναι το Istio και οι επιμέρους υπηρεσίες του, για την επόπτευση της επικοινωνίας και της χρήσης πόρων των υπηρεσιών. Οι στρατηγικές αυτές εφαρμόζονται και ελέγχονται σε δύο εφαρμογές μικροϋπηρεσιών, το iXen και το Google's OnlineBoutique eShop, σε ένα ομοιογενές περιβάλλον νέφους και συγκεκριμένα στο Google Cloud Platform. Τα πειραματικά αποτελέσματα αποκαλύπτουν ότι οι προτεινόμενες λύσεις τοποθέτησης μικροϋπηρεσιών μειώνουν τόσο το μέγεθος των κατανεμημένων πόρων, όσο και την κίνηση του δικτύου των μηχανών φιλοξενίας. Αυτό επιτυγχάνεται μειώνοντας τον αριθμό των χρησιμοποιούμενων μηχανημάτων και αυξάνοντας τον όγκο της εσωτερικής επικοινωνίας των μικροϋπηρεσιών σε κάθε μηχάνημα φιλοξενίας αντίστοιχα. Ως αποτέλεσμα, αυτές οι λύσεις ελαχιστοποιούν το συνολικό χρηματικό κόστος για τον τελικό χρήστη.el
ΤύποςΔιπλωματική Εργασίαel
ΤύποςDiploma Worken
Άδεια Χρήσηςhttp://creativecommons.org/licenses/by/4.0/en
Ημερομηνία2022-02-04-
Ημερομηνία Δημοσίευσης2022-
Θεματική ΚατηγορίαMicroservicesen
Θεματική ΚατηγορίαHeuristic Methodsen
Θεματική ΚατηγορίαGraph-Partitioning algorithmsen
Θεματική ΚατηγορίαIstio Service Meshen
Θεματική ΚατηγορίαCloud computingen
Θεματική ΚατηγορίαKubernetesen
Βιβλιογραφική ΑναφοράAlkiviadis Aznavouridis, "Microservice placement strategies in Kubernetes for cost optimization", Diploma Work, School of Electrical and Computer Engineering, Technical University of Crete, Chania, Greece, 2022en
Βιβλιογραφική ΑναφοράΑλκιβιάδης Αζναβουρίδης, "Στρατηγικές τοποθέτησης μικρο-υπηρεσιών στο Kubernetes για βελτιστοποίηση του κόστους", Διπλωματική Εργασία, Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών, Πολυτεχνείο Κρήτης, Χανιά, Ελλάς, 2022el

Διαθέσιμα αρχεία

Υπηρεσίες

Στατιστικά