Τεχνολογίες εικονικοποίησης και κατανεμημένη επεξεργασία σε υπολογιστικά νέφη
Creators: name: Μαυρίδης, Ηλίας Π.
Publisher: name: Aristotle University of Thessaloniki
Year: 2021
Subjects: Υπολογιστικά νέφη
Κατανεμημένη επεξεργασία
Τεχνολογίες εικονικοποίησης
Συναρτήσεις ως υπηρεσία
Cloud computing
Distributed processing
Virtualization technologies
Function as a Service

description: Τα υπολογιστικά νέφη είναι πλέον μια ευρέως διαδομένη και συχνά χρησιμοποιούμενη τεχνολογία. Οι δυνητικά άπειροι υπολογιστικοί πόροι των νεφών, είναι προσβάσιμοι σε οποιονδήποτε έχει τη δυνατότητα σύνδεσης στο διαδίκτυο και δεν απαιτούν από τον χρήστη προγενέστερη επένδυση σε υλικό ή λογισμικό. Μερικοί λόγοι που οδηγούν στην όλο και αυξανόμενη υιοθέτησή τους από μεγάλες εταιρίες και οργανισμούς καθώς και από απλούς χρήστες είναι ότι ακολουθούν ένα ευέλικτο μοντέλο χρονοχρέωσης, παρέχουν υψηλό επίπεδο κλιμακωσιμότητας (scalability), ευελιξίας και ελαστικότητας. Από την απαρχή των υπολογιστικών νεφών μέχρι και σήμερα, οι τεχνολογίες εικονικοποίησης αποτελούν αναπόσπαστο συστατικό τους. Οι διάφορες τεχνολογίες εικονικοποίησης επιτρέπουν την ταυτόχρονη διαμοίραση της υπάρχουσας υπολογιστικής υποδομής σε πολλούς χρήστες, αυξάνοντας τη χρησιμοποίηση των πόρων και παράλληλα μειώνοντας το συνολικό κόστος και την ενεργειακή κατανάλωση. Οι εικονικές μηχανές (virtual machines - VMs) αποτελούν το πρώτο μέσο που χρησιμοποιήθηκε στα νέφη για την κατανομή των υπολογιστικών πόρων και τη δημιουργία απομονωμένων περιβαλλόντων μεταξύ των χρηστών. Πρόσφατα, μια πιο ελαφριά τεχνολογία εικονικοποίησης (lightweight virtualization) έκανε την εμφάνισή της στα νέφη, τα containers. Η κύρια διαφορά των containers με τα VMs, από την οποία προκύπτουν όλες οι επιμέρους διαφορές τους, είναι ότι τα containers μοιράζονται το λειτουργικό σύστημα του εξυπηρετητή στον οποίο εκτελούνται, εν αντιθέσει με τα VMs, όπου το κάθε VM εκτελεί το δικό του λειτουργικό σύστημα. Η άνοδος των υπολογιστικών νεφών συνέβαλε στη μείωση του κόστους και διευκόλυνε την αποθήκευση και επεξεργασία μεγάλου όγκου δεδομένων από πλαίσια κατανεμημένης επεξεργασίας. Πολλές πλατφόρμες νεφών, απλοποιούν ακόμη περισσότερο την εκτέλεση τέτοιου είδους διεργασιών, προσφέροντας σχετικές υπηρεσίες, εργαλεία ή ακόμη και VMs με προ-εγκατεστημένα πλαίσια κατανεμημένης επεξεργασίας. Δύο από τα πιο διαδεδομένα πλαίσια κατανεμημένης επεξεργασίας, τα οποία μελετώνται και σε αυτή τη διατριβή, είναι το Hadoop και Spark. Η παρούσα διπλωματική διατριβή αποτελείται από δύο θεματικές ενότητες. Στην πρώτη ενότητα μελετώνται, ερευνώνται και γίνεται εμπειρική αξιολόγηση των πλαισίων κατανεμημένης επεξεργασίας Hadoop και Spark. Στη δεύτερη ενότητα παρουσιάζονται και ερευνώνται καινοτόμες τεχνολογίες εικονικοποίησης, συστήνεται και αξιολογείται ο συνδυασμός αυτών και προτείνεται και αξιολογείται η υιοθέτησή τους στις σύγχρονες υπηρεσίες υπολογιστικών νεφών.
description: Cloud computing is currently a widespread and commonly used technology. The potentially infinite computing resources of the cloud are accessible to anyone with internet access and do not require any prior investment in hardware or software by the user. There are several reasons, such as the Pay As You Go cost model, the high level of scalability and flexibility, which lead to the increasing adoption of the cloud by large companies and organizations as well as by ordinary users. Since the beginning of cloud computing, virtualization technologies have been an integral part of the cloud. Various virtualization technologies allow multiple users to share existing computing infrastructure simultaneously and, at the same time, virtualization technologies increase resource utilization and reduce overall costs and energy consumption. Virtual Machines (VMs) are traditionally used to allocate computing resources and create isolated environments among users. Recently, a lighter virtualization technology has appeared in the clouds, containers. The main difference between containers and VMs is that containers share the operating system of the host machine, whereas each VM has its own operating system. The rise of cloud computing and distributed processing frameworks has contributed to reduce costs and facilitate the storage and processing of big data. Many cloud platforms further simplify the execution of distributed workloads by offering services, tools and even VM images with pre-installed distributed processing frameworks. Two of the most common distributed processing frameworks, which have been also studied in this thesis, are Hadoop and Spark. This thesis consists of two sections. In the first section, the Hadoop and Spark distributed processing frameworks are studied, researched, and empirically evaluated. In the second section, modern virtualization technologies are presented and researched, their combination is recommended and evaluated and their adoption in latest cloud computing services is proposed and evaluated.