Το έργο με τίτλο Στρατηγικές τοποθέτησης μικρο-υπηρεσιών στο Kubernetes για βελτιστοποίηση του κόστους από τον/τους δημιουργό/ούς Aznavouridis Alkiviadis διατίθεται με την άδεια Creative Commons Αναφορά Δημιουργού 4.0 Διεθνές
Βιβλιογραφική Αναφορά
Αλκιβιάδης Αζναβουρίδης, "Στρατηγικές τοποθέτησης μικρο-υπηρεσιών στο Kubernetes για βελτιστοποίηση του κόστους", Διπλωματική Εργασία, Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών, Πολυτεχνείο Κρήτης, Χανιά, Ελλάς, 2022
https://doi.org/10.26233/heallink.tuc.91386
Η παρούσα διπλωματική εργασία προτείνει αποδοτικές στρατηγικές τοποθέτησης μικροϋπηρεσιών στο Kubernetes για την βελτιστοποίηση του συνολικού χρηματικού κόστους φιλοξενίας μιας εφαρμογής σε ένα περιβάλλον νέφους. Το πρόβλημα της τοποθέτησης μικροϋπηρεσιών διατυπώνεται ως πρόβλημα συσταδοποίησης του γράφου μιας εφαρμογής. Οι υπηρεσίες σχηματίζουν γράφους με τους κόμβους να αντιπροσωπεύουν μικροϋπηρεσίες και οι ακμές να αντιπροσωπεύουν επικοινωνούσες μικροϋπηρεσίες. Τόσο οι κόμβοι, όσο και οι ακμές, χαρακτηρίζονται από τους πόρους που καταναλώνουν (δηλαδή κυρίως πόρους CPU και RAM) από τις μικροϋπηρεσίες μιας εφαρμογής και από τις συσχετίσεις μεταξύ αυτών των μικροϋπηρεσιών (δηλαδή το φορτίο των μηνυμάτων που ανταλλάσσονται ανά δευτερόλεπτο). Το αποτέλεσμα ενός αλγορίθμου είναι ένα σύνολο συστάδων που περιλαμβάνει κόμβους (δηλαδή μικροϋπηρεσίες) που επικοινωνούν σε μεγάλο βαθμό μεταξύ τους. Αυτό με τη σειρά του οδηγεί στην τοποθέτηση συστάδων υπηρεσιών σε κόμβους (ή VMs) χρησιμοποιώντας ευρηματικές μεθόδους. Για την συλλογή των απαραίτητων δεδομένων και την επόπτευση της εφαρμογής χρησιμοποιούνται τεχνολογίες εξυπηρέτησης πλέγματος (Service Mesh), όπως είναι το Istio και οι επιμέρους υπηρεσίες του, για την επόπτευση της επικοινωνίας και της χρήσης πόρων των υπηρεσιών. Οι στρατηγικές αυτές εφαρμόζονται και ελέγχονται σε δύο εφαρμογές μικροϋπηρεσιών, το iXen και το Google's OnlineBoutique eShop, σε ένα ομοιογενές περιβάλλον νέφους και συγκεκριμένα στο Google Cloud Platform. Τα πειραματικά αποτελέσματα αποκαλύπτουν ότι οι προτεινόμενες λύσεις τοποθέτησης μικροϋπηρεσιών μειώνουν τόσο το μέγεθος των κατανεμημένων πόρων, όσο και την κίνηση του δικτύου των μηχανών φιλοξενίας. Αυτό επιτυγχάνεται μειώνοντας τον αριθμό των χρησιμοποιούμενων μηχανημάτων και αυξάνοντας τον όγκο της εσωτερικής επικοινωνίας των μικροϋπηρεσιών σε κάθε μηχάνημα φιλοξενίας αντίστοιχα. Ως αποτέλεσμα, αυτές οι λύσεις ελαχιστοποιούν το συνολικό χρηματικό κόστος για τον τελικό χρήστη.