ΔΙΑΤΜΗΜΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Διπλωματική Εργασία ΥΨΗΛΕΣ ΕΠΙΔΟΣΕΙΣ ΜΕ ΤΗ ΧΡΗΣΗ ΥΠΟΛΟΓΙΣΤΙΚOY ΝΕΦΟΥΣ.

Σχετικά έγγραφα
Όλες οι υπηρεσίες είναι διαθέσιμες μέσω διαδικτύου.

Διαδίκτυο των Αντικειμένων - IoT.

ΜΕΛΕΤΗ ΣΧΕΔΙΑΣΗ ΕΦΑΡΜΟΓΗΣ ΣΕ ΥΠΟΛΟΓΙΣΤΙΚΟ ΝΕΦΟΣ (CLOUD COMPUTING) ΜΕ ΕΜΦΑΣΗ ΣΤΗΝ ΚΑΤΑΣΚΕΥΗ ΔΕΝΤΡΩΝ.

Κεφάλαιο 13: : Εφαρμογές νέφους. Καραμαούνας Π. 1

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ - Π.Μ.Σ. ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΤΕΙ Δυτικής Ελλάδας Τμήμα Μηχανικών Πληροφορικής ΤΕ. Τεχνολογίες Υπολογιστικού Νέφους

Υπολογιστική Νέφους Cloud computing

VERSION 1.0 ΝΟΕΜΒΡΙΟΣ, 2016 ΤΕΧΝΟΛΟΓΙΕΣ ΥΠΟΛΟΓΙΣΤΙΚΟΥ ΝΕΦΟΥΣ ΤΟ ΠΕΡΙΒΑΛΛΟΝ ΠΡΟΣΟΜΟΙΩΣΗΣ CLOUDSIM ΕΠΙΜΕΛΕΙΑ: ΒΑΣΙΛΕΙΟΣ ΤΣΑΚΑΝΙΚΑΣ

cloud computing εφαρμογές νέφους Κεφάλαιο 13

Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α

Ενότητα 2. Πηγές Λογισμικού. Πληροφοριακά Συστήματα Διοίκησης ΙI Νίκος Καρακαπιλίδης 2-1

ΚΕΦΑΛΑΙΟ 13. Εφαρμογές νέφους. ΕΝΟΤΗΤΑ 4 Συνεργασία και Ασφάλεια στο Διαδίκτυο. Εφαρμογές Πληροφορικής

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΙΑ ΙΚΑΣΙΑ ΜΕΤΑΒΑΣΗΣ ΣΤΟ CLOUD COMPUTING ΜΑΘΗΣΙΑΚΟΙ ΣΤΟΧΟΙ

Παρουσίαση του Έργου SECOVIA: στόχοι και αποτελέσματα

AN IMPLEMENTATION OF THE CLOUD BASED SCHOOL

Λειτουργικά. Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Σιώζιος Κων/νος - Πληροφορική Ι

Εισαγωγή στην Πληροφορική

Υπολογιστική Νέφους: Εργαστήριο 1

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

Διαφορές single-processor αρχιτεκτονικών και SoCs

1 Συστήματα Αυτοματισμού Βιβλιοθηκών

Η Oracle ανακοίνωσε την πιο ολοκληρωμένη λύση στον τομέα της Ανάλυσης δεδομένων στο Cloud

Τι είναι το Cloud; Είναι κάτι διαφορετικό ανάλογα ποιος το βλέπει. Administrator Technical Salesman MarkeHng Boss User

Φιλίππου Θεοδόσιος Εκπαιδευτικός Πληροφορικής

Cloud Computing with Google and Microsoft. Despoina Trikomitou Andreas Diavastos Class: EPL425

Πληροφοριακά Συστήματα Απομακρυσμένης Εποπτείας και Μετρήσεων

Συστήματα μνήμης και υποστήριξη μεταφραστή για MPSoC

2- Μοντέλα, Επίπεδα, Συμπράξεις, ROI, Υπολ/κό νέφος, Πλατφόρμες και Κινητή Διακυβέρνηση ΕΘΝΙΚΗ ΣΧΟΛΗ ΔΗΜΟΣΙΑΣ ΔΙΟΙΚΗΣΗΣ & ΑΥΤΟΔΙΟΙΚΗΣΗΣ

ΜΑΘΗΣΙΑΚΗ ΕΝΟΤΗΤΑ 4: ΜΕΤΑΒΑΣΗ ΣΤΟ ΥΠΟΛΟΓΙΣΤΙΚΟ ΝΕΦΟΣ: Ο ΙΚΟΣ ΧΑΡΤΗΣ

Η Oracle μετασχηματίζει την αγορά λύσεων υποδομής Cloud

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

ΕΝΤΥΠΟ ΔΗΜΟΣΙΑΣ ΔΙΑΒΟΥΛΕΥΣΗΣ ΤΕΧΝΙΚΩΝ ΠΡΟΔΙΑΓΡΑΦΩΝ

Εισαγωγή στα Πληροφοριακά Συστήματα. Ενότητα 11: Αρχιτεκτονική Cloud

Λειτουργικά Συστήματα Ι. Καθηγήτρια Παπαδάκη Αναστασία

Στρατηγική Επιλογή Capital B.O.S. Capital B.O.S.

Σταύρος Καουκάκης Ευτύχιος Βαβουράκης

Αλλάξτε τον τρόπο που κάνετε τη δουλειά σας

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12

Αξιοποίηση της Τεχνολογίας των Εικονικών Μηχανών στην Επαγγελματική Εκπαίδευση και την Κατάρτιση Πληροφορικής. Βασιλάκης Βασίλειος Τζανάκης Δημήτριος

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Δυναμική προσωποποιημένη ενημέρωση προσφορών Super Markets στη Θεσσαλονίκη

Η ΤΑΥΤΟΤΗΤΑ ΜΑΣ. Αναλαμβάνουμε τη μελέτη, εγκατάσταση και υποστήριξη όλων των τηλεπικοινωνιακών συστημάτων VοIP.

Νεογεωγραφία και Χαρτογραφική Διαδικτυακή Απεικόνιση. Η χρήση Ελεύθερων Γεωγραφικών Δεδομένων και Λογισμικού Ανοιχτού Κώδικα σε Φορητές Συσκευές.

Συστήματα πανταχού παρόντος υπολογιστή σε περιβάλλοντα υβριδικών βιβλιοθηκών

Βασικές Έννοιες Διαδικτύου, Wordpress και BuddyPress

Ανακαλύψτε την αξία της ηλεκτρονικής τιµολόγησης

ΗΜΕΡΙΔΑ Cloud Computing: Νέοι Ορίζοντες

Εφαρμογές Υπολογιστών. Κεφάλαιο 4 Λογισμικό Συστήματος

Κεφάλαιο 3 Πολυπλεξία

Κατανεμημένα Συστήματα: Θεωρία και Προγραμματισμός. Ενότητα # 6: Κατανομή φόρτου Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

Κινητά και Διάχυτα Συστήματα. Ενότητα # 10: Κατανομή φόρτου Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές

Θέματα Ατομικής Διπλωματικής Εργασίας Ακαδημαϊκό Έτος 2017/2018. Γεωργία Καπιτσάκη (Επίκουρη Καθηγήτρια)

Σχολή Προγραµµατιστών Ηλεκτρονικών Υπολογιστών (ΣΠΗΥ) Τµήµα Προγραµµατιστών Σειρά 112

Cloud Computing και Ζητήματα Προστασίας Προσωπικών Δεδομένων. Λ. Μήτρου, Αναπληρώτρια Καθηγήτρια Πανεπιστήμιο Αιγαίου

ΠΟΙΟΙ ΜΠΟΡΟΥΝ ΝΑ ΣΥΜΜΕΤΕΧΟΥΝ ΣΤΗΝ ΠΙΛΟΤΙΚΗ ΛΕΙΤΟΥΡΓΙΑ

SGA Διαχείριση Πρωτόκολλου

ΓΙΑ ΜΙΑ ΑΝΟΙKΤΗ ΕΠΙΧΕΙΡΗΣΗ. mobile CRM ΔΩΣΤΕ ΝΕΑ ΠΝΟΗ ΣΤΙΣ ΣΧΕΣΕΙΣ ΜΕ ΤΟΥΣ ΠΕΛΑΤΕΣ ΣΑΣ

Σχεδιαστικά Προγράμματα Επίπλου

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12

Υποδομή ΤΠ: Υλικό και λογισμικό

ΕΝΙΑΙΟ ΠΛΑΙΣΙΟ ΠΡΟΓΡΑΜΜΑΤΟΣ ΣΠΟΥΔΩΝ

Ενσωματωμένα controls τα οποία προσαρμόζονται και χρησιμοποιούνται σε οποιαδήποτε ιστοσελίδα επιλέγει ο φορέας.

Cloud ERP. Αλλάξτε τον τρόπο που κάνετε τη δουλειά σας

Διαχείριση Πολιτισμικών Δεδομένων

ΚΕΦΑΛΑΙΟ 8 ΣΥΜΠΕΡΑΣΜΑΤΑ. 8.1 Εισαγωγή

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

Μηχανική Λογισμικού για Διαδικτυακές & Φορητές Εφαρμογές

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο

Σχεδιασµός βασισµένος σε συνιστώσες

Επικοινωνία Ανθρώπου- Υπολογιστή Σχεδίαση Αλληλεπίδρασης Ενότητα: 8 η

Είδη Groupware. Λογισμικό Συνεργασίας Ομάδων (Groupware) Λογισμικό Groupware. Υπάρχουν διάφορα είδη groupware ανάλογα με το αν οι χρήστες εργάζονται:

ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΕΠΙΧΕΙΡΗΣΙΑΚΩΝ ΠΟΡΩΝ

Αυτοματοποίηση Ροών Εργασιών & Ηλεκτρονικής Διαχείρισης Αλληλογραφίας και εγγράφων

SharePoint Online. Δημιουργήστε μια τοποθεσία ή μια δημοσίευση ειδήσεων. Αναζήτηση Βρείτε Τοποθεσίες, Άτομα ή Αρχεία.

12/5/18. συστημάτων. Το λογισµικό συστηµάτων. Κεφάλαιο 5

ΑΝΑΚΟΙΝΩΣΗ ΔΙΑΔΙΚΑΣΙΑΣ ΑΠΕΥΘΕΙΑΣ ΑΝΑΘΕΣΗΣ. Αριθμ. Πρωτ.: /2017 Ο ΕΙΔΙΚΟΣ ΛΟΓΑΡΙΑΣΜΟΣ ΚΟΝΔΥΛΙΩΝ ΕΡΕΥΝΑΣ

Τεχνολογική Υποδομή Πληροφοριακών Συστημάτων

01 SOLUTIONS HELLAS Ε.Π.Ε. Χελμού 20, Μαρούσι Αττικής Τηλ FAX Ηλεκτρονικό Πρωτόκολλο & Διακίνηση Εγγράφων

Τεχνολογίες Πληροφορικής και Επικοινωνιών (ΤΠΕ) στις Μικρομεσαίες Επιχειρήσεις (ΜΜΕ)

Σύντομη παρουσίαση των εργαλείων/εντολών telnet, ping, traceroute nslookup και nmap, zenmap

Μία μέθοδος προσομοίωσης ψηφιακών κυκλωμάτων Εξελικτικής Υπολογιστικής

Λειτουργικά Συστήματα. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

ΣΥΓΚΡΙΤΙΚΗ ΜΕΛΕΤΗ ΤΕΧΝΟΛΟΓΙΩΝ ΔΙΑΔΙΚΤΥΑΚΩΝ ΥΠΗΡΕΣΙΩΝ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΤΕΧΝΟΛΟΓΙΑΣ REST ΠΛΑΣΤΑΡΑΣ ΕΥΡΙΠΙΔΗΣ

Τεχνικές Εκτίμησης Υπολογιστικών Συστημάτων Ενότητα 1: Εισαγωγή. Γαροφαλάκης Ιωάννης Πολυτεχνική Σχολή Τμήμα Μηχ/κών Η/Υ & Πληροφορικής

IBM Decision Optimization on Cloud

Η εποχή του SaaS έφτασε! Το λογισμικό ως υπηρεσία SaaS συμφέρει!

Ποιότητα μετάδοσης πολυμεσικού περιεχομένου στο διαδίκτυο

Server Virtualization με εργαλεία ΕΛ/ΛΑΚ. ΛΑΚ Δήμος Ρεθύμνης.

Ανάπτυξη Δικτυακής Εφαρμογής Διάχυσης και Ανάλυσης Γεωχωρικών Δεδομένων και Πληροφοριών

Τεχνολογία Δικτύων Επικοινωνιών (Ενότητα Πρωτόκολλα και Αρχιτεκτονική Δικτύου)

Εισαγωγή στη Σχεδίαση Λογισμικού

J-GANNO. Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β, Φεβ.1998) Χάρης Γεωργίου

Πληροφορική 2. Τεχνολογία Λογισμικού

Cloud Computing & Data Management (Υπολογιστικά Νέφη & Διαχείριση Δεδομένων)

Προσομοίωση Συστημάτων Χειμερινό εξάμηνο Εξάμηνο 5 ο. Ατομική εργασία προς παράδοση στο CloudAnalyst

Περιεχόμενα. Visio / White paper 1

EΠΙΣΗΜΑΝΣΗ ΑΠΟΡΡΗΤΟΥ (PRIVACY NOTICE)

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)

Κεφάλαιο 6 ο. Διαχείριση στοιχείων λογισμικού

Transcript:

ΔΙΑΤΜΗΜΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Διπλωματική Εργασία ΥΨΗΛΕΣ ΕΠΙΔΟΣΕΙΣ ΜΕ ΤΗ ΧΡΗΣΗ ΥΠΟΛΟΓΙΣΤΙΚOY ΝΕΦΟΥΣ της ΙΩΑΝΝΑΣ ΣΑΛΙΑΚΟΥΡΑ Θεσσαλονίκη, Μάρτιος 2018

ΔΙΑΤΜΗΜΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Διπλωματική Εργασία ΥΨΗΛΕΣ ΕΠΙΔΟΣΕΙΣ ΜΕ ΤΗ ΧΡΗΣΗ ΥΠΟΛΟΓΙΣΤΙΚOY ΝΕΦΟΥΣ της ΙΩΑΝΝΑΣ ΣΑΛΙΑΚΟΥΡΑ Υποβλήθηκε ως απαιτούμενο για την απόκτηση του Μεταπτυχιακού Διπλώματος Ειδίκευσης στα Πληροφοριακά Συστήματα Επιβλέπουσα Καθηγήτρια Σατρατζέμη Μαρία Εγκρίθηκε από τριμελή εξεταστική στις.. /.. /.. II

ΠΕΡΙΕΧΌΜΕΝΑ ΠΕΡΙΛΗΨΗ... V ABSTRACT... VI 1. ΕΙΣΑΓΩΓΗ... 1 1.1 Πρόβλημα Σημαντικότητα του θέματος... 1 1.2 Σκοπός Στόχοι... 1 1.3 Διάθρωση της μελέτης... 1 1.4 Λίγα Λόγια... 2 2. ΒΙΒΛΙΟΓΡΑΦΙΚΗ ΑΝΑΣΚΟΠΗΣΗ... 6 2.1 Αρχιτεκτονική Cloud Computing... 6 2.2 Μοντέλα Παροχής Υπηρεσιών Υπολογιστικού Νέφους... 6 2.2.1 Cloud Software as a Service (SaaS)... 6 2.2.2 Cloud Platform as a Service(PaaS)... 7 2.2.3 Cloud Infrastructure as a Service(IaaS)... 7 2.3 Μοντέλα Ανάπτυξης Υπολογιστικού Νέφους... 8 2.3.1 Private cloud... 8 2.3.2 Community cloud... 8 2.3.3 Public cloud... 9 2.3.4 Hybrid cloud... 9 2.4 Βασικά Χαρακτηριστικά Cloud Computing... 9 2.5 Σύγκριση Μοντέλων Εφαρμογής για Mobile Cloud Computing (MCC)... 10 2.6 Διαδικτυακές Εφαρμογές ως Υπηρεσίες... 13 2.6.1 Dropbox... 13 2.6.2 WeTransfer... 13 2.6.3 Gmail... 14 2.7 Πάροχοι Cloud Computing... 14 2.7.1 Amazon Elastic Cloud (Amazon EC2)... 14 2.7.2 Windows Azure... 15 2.7.3 Google App Engine... 15 3. ΠΡΟΣΟΜΟΙΩΣΗ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ ΣΥΓΧΡΟΝΩΝ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΥΨΗΛΗΣ ΑΠΟΔΟΣΗΣ... 16 3.1 Επιλογή Προσομοιωτή... 17 3.2 Δομικά στοιχεία του Cloudsim... 18 3.3 Προσαρμοστικές ευρετικές μέθοδοι για δυναμική τοποθέτηση εικονικών μηχανών.. 21 3.3.1 Τεχνικές Ανίχνευσης Υπερφόρτωσης host... 21 3.3.2 Πολιτικές Επιλογής Μετανάστευσης VM... 22 4. Διαδικασία Εκτέλεση Πειράματος... 23 4.1 Πολιτική DVFS... 26 4.2 Πολιτική LrMc... 28 III

4.3 Πολιτική LrMmt... 32 4.4 Πολιτική MadMc... 36 4.5 Πολιτική MadMmt... 39 4.6 Πολιτική IqrMc... 43 4.7 Πολιτική IqrMmt... 46 4.8 Πολιτική LrrMc... 50 4.9 Πολιτική LrrMmt... 53 4.10 Σύγκριση Πολιτικών... 57 4. ΣΥΜΠΕΡΑΣΜΑΤΑ - ΣΥΝΟΨΗ... 63 ΒΙΒΛΙΟΓΡΑΦΙΑ... 64 ΠΑΡΑΡΤΗΜΑ Α-ΠΗΓΙΑΙΟΣ ΚΩΔΙΚΑΣ ΠΟΛΙΤΙΚΩΝ... 67 ΠΑΡΑΡΤΗΜΑ B-ΠΑΡΑΜΕΤΡΟΠΟΙΗΣΗ ΠΕΙΡΑΜΑΤΟΣ... 76 IV

ΠΕΡΙΛΗΨΗ Σκοπός της παρούσας διπλωματικής είναι η βιβλιογραφική επισκόπηση του μοντέλου και των υπηρεσιών του υπολογιστικού νέφους καθώς και ο σχεδιασμός και η ανάπτυξη μιας εφαρμογής νέφους αλλά και η εγκατάστασή της σε κάποια παρεχόμενη υποδομή ως υπηρεσία. Η προσομοίωση και η δοκιμή σε πραγματικές συνθήκες είναι δύσκολο να πραγματοποιηθεί, οπότε για το σκοπό αυτό χρησιμοποιούνται εργαλεία προσομοίωσης. Για λόγους ευχρηστίας επιλέχθηκε το εργαλείο ανοιχτού κώδικα Cloudsim για την εκτέλεση εργαλείων σεναρίων προσομοίωσης ενός αντίστοιχου περιβάλλοντος. Κατά την εκτέλεση των σεναρίων γίνεται προσομοίωση σε ένα ετερογενές κέντρο δεδομένων στο οποίο χρησιμοποιήθηκαν εννέα αλγόριθμοι πρόβλεψης υπερφόρτωσης σε συνδυασμό με άλλες πολιτικές για την επιλογή του VM που θα μεταναστεύσει σε άλλον Host. Με την σύγκριση των στατιστικών στοιχείων αυτών των πολιτικών θα έχουμε πλήρη εικόνα για τα σημεία που υπερτερεί ή/και υστερεί η κάθε πολιτική, έτσι ώστε να επιλέγεται κάθε φορά η βέλτιστη πολιτική για να αναβαθμιστεί η εμπειρία του χρήστη. Λέξεις- Κλειδιά = υπολογιστική νέφους, προσομοίωση, λογισμικό ως υπηρεσία, πολιτικές προσομοίωσης V

ABSTRACT The purpose of this diploma thesis is to provide a bibliographic overview of the computing cloud model and services. Furthermore, the design and the development of a cloud application and its installation in some provided infrastructure as a service. Simulation and testing in real conditions is difficult to carry out, so simulation tools are used for this purpose. Cloudsim open source tool was chosen to run simulation scenarios of a corresponding environment. Executing the scenarios, simulation is performed on a heterogeneous data center in which ten overload prediction algorithms were used in conjunction with other policies for selecting the VM to migrate to another Host. By comparing the statistics of these policies, we will have full insight into the points that are overriding and / or lagging behind each policy so that the optimal policy is always chosen to upgrade the user experience. VI

1. ΕΙΣΑΓΩΓΗ 1.1 Πρόβλημα Σημαντικότητα του θέματος Το ΥΝ (υπολογιστικό νέφος) έχει στόχο να παραδώσει αξιόπιστες, ασφαλείς και ανεκτικές σε αστοχίες, βιώσιμες και επεκτάσιμες υποδομές για τη φιλοξενία εφαρμογών που είναι βασισμένες στο διαδίκτυο. Η μοντελοποίηση και ο προγραμματισμός αυτών των εφαρμογών και των υπηρεσιών σε μια υποδομή υπολογιστικού νέφους, είναι μια τεράστια πρόκληση, η οποία απαιτεί διαφορετικό φόρτο και ενεργειακή απόδοση. Όσο ο αριθμός των χρηστών στις υπηρεσίες υπολογιστικού νέφους αυξάνεται, τόσο οι ερευνητές και οι εταιρείες χρησιμοποιούν τους προσομοιωτές νέφους, οι οποίοι μπορούν εύκολα και γρήγορα να προσομοιώσουν την κατάσταση και την συμπεριφορά μιας υποδομής νέφους, τις πολιτικές που ακολουθούν και το φόρτο που μπορεί να αντέξει μια τέτοια υποδομή. 1.2 Σκοπός Στόχοι Στόχος της παρούσας μεταπτυχιακής διατριβής σε ερευνητικό επίπεδο, είναι η διερεύνηση των πτυχών του υπολογιστικού νέφους και των εφαρμογών του, με ποιον τρόπο μας εξυπηρετεί αλλά και τι προβλήματα μπορεί να δημιουργήσει. Αναπόσπαστο μέρος της αποτελεί η προσομοίωση με τη βοήθεια του πακέτου Cloudsim, χρησιμοποιώντας περιβάλλον Netbeans IDE 8.2. Εκτός από την ανάλυση της αρχιτεκτονικής, των χαρακτηριστικών και των δομικών στοιχείων του προσομοιωτή Cloudsim, εκτελούνται πειράματα χρησιμοποιώντας διάφορες πολιτικές τοποθέτησης εικονικών μηχανών. Τέλος, παρουσιάζονται σε διαγράμματα τα αποτελέσματα των πειραμάτων καθώς και τα συμπεράσματα αυτών των πειραμάτων τα οποία οδηγούν στην εύρεση της βέλτιστης πολιτικής αναλόγως με τα χαρακτηριστικά που αναζητά ο χρήστης. 1.3 Διάθρωση της μελέτης Η παρούσα μελέτη απαρτίζεται από τρία μέρη. Στο πρώτο μέρος, αφού αναλυθεί η ευρεία έννοια του υπολογιστικής νέφους, γίνεται βιβλιογραφική επισκόπηση όσον αφορά τα μοντέλα παροχής υπηρεσιών (SaaS, PaaS, IaaS), τα μοντέλα ανάπτυξης, τα κύρια χαρακτηριστικά του υπολογιστικού νέφους, τις διαδικτυακές εφαρμογές του και τους κύριους πάροχους. Έπειτα, αναλύονται τα βασικά χαρακτηριστικά, τα βασικά δομικά στοιχεία καθώς και η σκοπιμότητα του προσομοιωτή Cloudsim. Τέλος, διεξάγεται η προσομοίωση με διάφορα σενάρια και

αναλύεται η εικόνα των αποτελεσμάτων. Κλείνοντας, ακολουθούν τα συμπεράσματα από τη χρήση πολιτικών του πακέτου Cloudsim. Για τη συγγραφή της διατριβής χρησιμοποιήθηκαν οι πηγές που προέρχονται από επιστημονικά άρθρα, από δημοσιεύσεις για τις τεχνολογίες προσομοιωτών και από διάφορες ιστοσελίδες με οδηγίες εγκατάστασης. 1.4 Λίγα Λόγια Το ΥΝ είναι η αποθήκευση, η επεξεργασία και η χρήση δεδομένων από απομακρυσμένους υπολογιστές στους οποίους εξασφαλίζεται πρόσβαση μέσω του διαδικτύου. Πολλοί άνθρωποι χρησιμοποιούν σήμερα το ΥΝ δίχως καν να το συνειδητοποιούν. Στο ΥΝ, η επεξεργαστική ισχύς εξασφαλίζεται από μεγάλα κέντρα δεδομένων με εκατοντάδες εξυπηρετητές και συστήματα αποθήκευσης δεδομένων που στην πράξη είναι σε θέση να χειριστούν σχεδόν οποιοδήποτε λογισμικό υπολογιστή (από την επεξεργασία δεδομένων μέχρι επαγγελματικές κάθετες εφαρμογές). Όσο το ΥΝ αναδεικνύεται ως ο επόμενος σταθμός στην επιστήμη των υπολογιστών, γίνεται σαφές ότι απαιτείται ένα μοντέλο που να εφαρμόζεται σε μεγάλα συστήματα αποθήκευσης δεδομένων, που χρησιμοποιούνται για την επίλυση ζητημάτων, το οποίο θα προκύπτει από μια αυξανόμενη ζήτηση. Τρεις ανεπτυγμένες πλατφόρμες που υποστηρίζουν ένα παρόμοιο μοντέλο είναι οι OpenStack, Eucalyptus and OpenNebula. [1] Το Eucalyptus μάλιστα ήταν μια από τις πρώτες εφαρμογές ανοιχτού κώδικα που υποστήριξαν την δημιουργία IaaS Νεφών. Δημιουργήθηκε με σκοπό να προσφέρει λειτουργίες παρόμοιες με το Amazon Web Services API αλλά με τη διαφορά ότι διατίθεται ως εφαρμογή open source. Οι χρήστες μπορούν να αλληλεπιδρούν με το Νέφος Eucalyptus χρησιμοποιώντας τα ίδια εργαλεία που χρησιμοποιούν για να έχουν πρόσβαση στο Amazon EC2. Επιπλέον όμως παρέχεται ένα Νέφος αποθήκευσης API για την αποθήκευση των γενικών δεδομένων των χρηστών. Το μεγαλύτερο πλεονέκτημα στο ΥΝ είναι ότι οι χρήστες δεν χρειάζεται να αγοράζουν λογισμικά ή να αγοράζουν και να συντηρούν ακριβούς εξυπηρετητές και εγκαταστάσεις αποθήκευσης δεδομένων. Τοιουτοτρόπως εξοικονομούνται χρήματα, χώρος γραφείων και έξοδα για εσωτερικό προσωπικό υποστήριξης των παρεχόμενων υπηρεσιών πληροφορικής. Οι χρήστες διαθέτουν επίσης σχεδόν απόλυτη ευελιξία όσον αφορά το χώρο αποθήκευσης και τα εργαλεία που χρησιμοποιούν. Σήμερα, φορητές συσκευές όπως smartphones και tablets έχουν αντικαταστήσει τους συμβατικούς υπολογιστές. Ωστόσο αυτές οι συσκευές έχουν περιορισμένες δυνατότητες λόγω της 2

υπολογιστικής δύναμης, μνήμης, αποθήκευσης, και της ενέργειας. Εδώ εδραιώνεται το λεγόμενο Mobile Cloud Computing(MCC), μια τεχνολογία κατά την οποία ξεπερνιούνται τα παραπάνω μειονεκτήματα και παρέχονται υπηρεσίες στους χρήστες κινητών μέσω του διαδικτύου και όχι σε μεμονωμένες συσκευές. [2], [3] Η πρωτοποριακή τεχνολογία του Mobile Cloud Computing(MCC) είναι αποτέλεσμα της ραγδαίας εξέλιξης του υπολογιστικού νέφους καθώς και της σημαντικής ανάπτυξης των κινητών. Η MCC ενσωματώνει τις υπηρεσίες του υπολογιστικής νέφους στο περιβάλλον των κινητών, με σκοπό να προσπεράσει εμπόδια που σχετίζονται με: την απόδοση (π.χ., διάρκεια ζωής της μπαταρίας, την αποθήκευση και το εύρος δεδομένων), το περιβάλλον(π.χ., ετερογένεια, επεκτασιμότητα και διαθεσιμότητα) καθώς και την ασφάλεια(π.χ., την αξιοπιστία και την προστασία της ιδιωτικής ζωής). [4],[5], [6],[7],[8], [9]. Οι κινητές συσκευές μπορούν να συλλέγουν προσωπικά δεδομένα, από διάφορους αισθητήρες, σε μικρό χρονικό διάστημα, τα οποία αποτελούν πολύτιμες πληροφορίες για τους χρήστες. Έτσι όμως δημιουργούνται διάφορα ζητήματα ασφαλούς πρόσβασης και ασφάλειας δεδομένων, τα οποία επιλύονται με διάφορες τεχνικές. [10],[11] Βέβαια για την επίτευξη όλων των παραπάνω, χρειάζονται και οι κατάλληλες υποδομές στα δίκτυα. Έτσι εμφανίζεται η έννοια Long Term Evolution (LTE) που αντιπροσωπεύει την τεχνολογία τέταρτης γενιάς (4G), η οποία δύναται να παρέχει υψηλούς ρυθμούς δεδομένων, καθώς και κινητικότητα υψηλής ταχύτητας. Παράλληλα, με την εξελιγμένη τεχνολογία ασύρματων δικτύων 4G και 5G εξασφαλίζεται υψηλός ρυθμός δεδομένων (throughput), μικρή καθυστέρηση (latency), υψηλή κινητικότητα (speed) καθώς και μεγάλη χωρητικότητα. [12],[13],[14] Το ΥΝ έχει αναλάβει πλέον καθοριστικό ρόλο στη βιομηχανία της πληροφορικής. Επιτρέπει ευέλικτη, on-demand δικτυακή πρόσβαση σε ένα κοινόχρηστο σύνολο παραμετροποιήσιμων υπολογιστικών πόρων (όπως δίκτυα, servers, αποθηκευτικοί χώροι, εφαρμογές και υπηρεσίες), το οποίο μπορεί να τροφοδοτηθεί γρήγορα και διατεθεί με ελάχιστη προσπάθεια διαχείρισης ή αλληλεπίδραση με τον πάροχο της υπηρεσίας. [15] Τα μοντέλα παροχής υπηρεσιών ποικίλουν, [16] προσφέροντας διαφορετικές δυνατότητες και είναι τα ακόλουθα: Software as a Service(SaaS), Platform as a Service(PaaS), Infrastructure as a Service(IaaS). Το μοντέλο SaaS παρουσιάζει τη δυνατότητα που παρέχεται στον καταναλωτή για να χρησιμοποιεί τις εφαρμογές του παρόχου που τρέχουν σε μια υποδομή νέφους. Οι εφαρμογές είναι προσβάσιμες από διάφορες client συσκευές μέσω μιας διεπαφής, όπως ένα πρόγραμμα περιήγησης στο 3

Web (π.χ. web-based email). Το μοντέλο PaaS παρουσιάζει τη δυνατότητα που παρέχεται στον καταναλωτή για να αναπτύσσει πάνω στην υποδομή νέφους, εφαρμογές που έχει δημιουργήσει ή εφαρμογές που έχει αποκτήσει, οι οποίες έχουν δημιουργηθεί με χρήση γλωσσών προγραμματισμού και εργαλείων που υποστηρίζονται από τον πάροχο. Ο καταναλωτής δεν διαχειρίζεται, ούτε ελέγχει τη σχετική υποδομή νέφους που συμπεριλαμβάνει τα δίκτυα, τους servers, τα λειτουργικά συστήματα ή τα αποθηκευτικά μέσα, αλλά έχει τον έλεγχο των εφαρμογών που έχουν αναπτυχθεί, και ενδεχομένως, των παραμετροποιήσεων του περιβάλλοντος φιλοξενίας των εφαρμογών. Τέλος, το μοντέλο IaaS παρουσιάζει τη δυνατότητα που παρέχεται στον καταναλωτή για να μπορεί να δεσμεύσει προς χρήση επεξεργαστική ισχύ, αποθηκευτικά μέσα, δίκτυα, και άλλους θεμελιώδεις υπολογιστικούς πόρους, όπου ο καταναλωτής είναι σε θέση να αναπτύξει και να εκτελέσει αυθαίρετο λογισμικό, το οποίο μπορεί να περιλαμβάνει λειτουργικά συστήματα και εφαρμογές. Ο καταναλωτής δεν έχει τη διαχείριση ή τον έλεγχο της χρησιμοποιούμενης υποδομής νέφους, αλλά έχει τον έλεγχο των λειτουργικών συστημάτων, των αποθηκευτικών μέσων, των εφαρμογών που έχουν αναπτυχθεί και πιθανόν κάποιον περιορισμένο έλεγχο επιλεγμένου εξοπλισμού δικτύωσης (π.χ. firewalls). [17],[18],[19],[20],[21],[22] Η Υποδομή ως Υπηρεσία(IaaS) είναι ένα μοντέλο παροχής υπηρεσιών στο ΥΝ, που αναπτύσσεται και εξελίσσεται ραγδαία. Σε αυτό το μοντέλο παροχής υπηρεσιών, οι πάροχοι νέφους προσφέρουν πόρους για τους χρήστες, δυνατότητα αποθήκευσης, firewalls και συσκευές δικτύου. Ένα από τα πιο έντονα ζητήματα στο ΥΝ, για το μοντέλο IaaS είναι η διαχείριση αυτών των πόρων. Τα συνήθη προβλήματα διαχείρισης πόρων είναι η κατανομή, ο εφοδιασμός, η χαρτογράφηση των απαιτήσεων, η προσαρμογή, η ανακάλυψη, η εκτίμηση και η μοντελοποίηση των πόρων. Για τον λόγο αυτό απαιτούνται τεχνικές διαχείρισης πόρων για το μοντέλο IaaS, που θα εξασφαλίζουν τα ακόλουθα οφέλη: επεκτασιμότητα, ποιότητα υπηρεσιών, βέλτιστη χρησιμότητα, μείωση των γενικών εξόδων, βελτιωμένη απόδοση, μειωμένη καθυστέρηση, εξειδικευμένο περιβάλλον, αποτελεσματικότητα του κόστους και απλοποιημένη διεπαφή. [23] Ο ρόλος της Πλατφόρμας ως Υπηρεσία(PaaS) είναι εξίσου σημαντικός. Παρόλο που δεν είναι άμεσα ορατό στους χρήστες, η PaaS δημιουργεί μια εικονική πλατφόρμα βελτίωσης και ανάπτυξης εφαρμογών λογισμικού. Πρακτικά προσφέρει πολλά πλεονεκτήματα στους αναλυτές λογισμικού όπως αύξηση παραγωγικότητας προγραμματιστή, λιγότερο χρόνο ανάπτυξης λογισμικού και βελτίωση στο marketing. [23],[24] 4

Σήμερα πολλά ERP συστήματα προσφέρονται μέσω του Λογισμικού ως Υπηρεσία (SaaS). Για μικρομεσαίες επιχειρήσεις είναι μια ιδανική λύση καθώς απαλλάσσει τους τελικούς αποδέκτες από το κόστος της αγοράς εξοπλισμού. Οι πιο σημαντικοί παράγοντες που επηρεάζονται θετικά από τη χρήση της του SaaS είναι: το κόστος, η ασφάλεια, η άμεση διαθεσιμότητα, η χρηστικότητα, η υλοποίηση, η ευελιξία, η συμβατότητα, καθώς και οι βέλτιστες πρακτικές. Από την άλλη μεριά, η ασφάλεια των δεδομένων και η διαθεσιμότητα του συστήματος αποτελούν καίρια ζητήματα ανησυχίας. [25] Επιπρόσθετα, μια από τις σπουδαιότερες προκλήσεις που αντιμετωπίζει το ΥΝ είναι η ασφάλεια. Υπάρχουν πολλές τεχνολογικές προσεγγίσεις που βελτιώνουν την ασφάλεια των διεργασιών που υφίστανται αλλά όχι μια ολοκληρωμένη που να προσφέρει ασφάλεια στο έπακρο. [26],[27],[28],[29],[30] Εικόνα 1.1: Μοντέλα Υπηρεσιών Εικόνα 1 Το ΥΝ προσφέρει ένα καινοτόμο επιχειρηματικό μοντέλο χωρίς να είναι απαραίτητη 5 αρχική επένδυση. Τα οφέλη που προσφέρει είναι πολλά, το θέμα της ασφάλειας όμως γίνεται ακόμα πιο περίπλοκο όσο εμβαθύνουμε στο αρχιτεκτονική του μοντέλου, στην ελαστικότητα του και στα εμπλεκόμενα στρώματα της στοίβας (βλ. εικόνα 1.1). Μια λεπτομερή περιγραφή των προβλημάτων ασφάλειας που προκύπτουν και τα βασικά χαρακτηριστικά που πρέπει να καλύπτονται από οποιαδήποτε λύση ασφάλειας, βλέπουμε στην παρακάτω παράθεση.[31] Ένα κέντρο δεδομένων (data center) είναι μια υποδομή που υποστηρίζει την υπηρεσία Internet. Το ΥΝ αλλάζει ταχύτατα την εικόνα της υποδομής των υπηρεσιών διαδικτύου, επιτρέποντας ακόμη και μικρές επιχειρήσεις να χτίσουν γρήγορα web και mobile εφαρμογές για τα εκατομμύρια χρήστες, εκμεταλλευόμενοι το εύρος και την ευελιξία των κοινών φυσικών υποδομών που παρέχονται από το ΥΝ. Η ασφάλεια σε αυτά τα κέντρα δεδομένων είναι πολύ σημαντική. Η εφαρμογή του συστήματος vcnsms, είναι ένα συμβατικό πρότυπο σύστημα ασφάλειας των δικτύων που χρησιμοποιείται ευρέως σε κέντρα δεδομένων πολλαπλών ενοικιαστών. [32] Η ασφάλεια των δεδομένων και την προστασία της ιδιωτικής ζωής είναι τα δυο σημαντικά θέματα που σχετίζονται με την αρχιτεκτονική cloud τόσο βάση του υλικού(hardware) όσο και βάση λογισμικού(software). Η επανεξέταση διαφορετικών τεχνικών ασφάλειας και προκλήσεων, τόσο από πλευράς λογισμικού όσο και από

πλευράς υλικού για την προστασία των δεδομένων στο νέφος και η ενίσχυση της ασφάλειας των δεδομένων αλλά και η προστασία της ιδιωτικής ζωής είναι επιτακτικές ενέργειες για ένα αξιόπιστο περιβάλλον cloud. [33],[34] 2. ΒΙΒΛΙΟΓΡΑΦΙΚΗ ΑΝΑΣΚΟΠΗΣΗ 2.1 Αρχιτεκτονική Cloud Computing Λέγοντας αρχιτεκτονική νέφους εννοούμε τον σχεδιασμό εφαρμογών λογισμικού οι οποίες χρησιμοποιούν κατ απαίτηση πόρους διαθέσιμους στο διαδίκτυο. Βάση αυτής της αρχιτεκτονικής είναι συστήματα τα οποία λαμβάνουν υπολογιστικούς πόρους (ως υπηρεσίες) όταν τους χρειάζονται, επιτελούν την εργασία τους και έπειτα τους επιστρέφουν στο νέφος. Οι υπηρεσίες είναι διαθέσιμες οπουδήποτε, αλλά το σύστημα νέφους εμφανίζεται ως το σημείο επαφής των εξωτερικών συστημάτων με τους πόρους που χρειάζονται. 2.2 Μοντέλα Παροχής Υπηρεσιών Υπολογιστικού Νέφους Το ΥΝ είναι ένα μοντέλο που επιτρέπει ευέλικτη, on-demand δικτυακή πρόσβαση σε ένα κοινόχρηστο σύνολο παραμετροποιήσιμων υπολογιστικών πόρων (όπως δίκτυα, servers, αποθηκευτικοί χώροι, εφαρμογές και υπηρεσίες), το οποίο μπορεί να τροφοδοτηθεί γρήγορα και να διατεθεί με ελάχιστη προσπάθεια διαχείρισης ή αλληλεπίδραση με τον πάροχο της υπηρεσίας. Αυτό το μοντέλο νέφους προωθεί την διαθεσιμότητα και αποτελείται από πέντε βασικά χαρακτηριστικά, τρία μοντέλα παροχής υπηρεσιών, και τέσσερα μοντέλα ανάπτυξης. Τα μοντέλα παροχής υπηρεσιών ποικίλουν, προσφέροντας διαφορετικές δυνατότητες. Συνοπτικά, αυτά που ισχύουν την δεδομένη στιγμή, είναι τα ακόλουθα: Cloud Software as a Service (SaaS), Cloud Platform as a Service (PaaS) και Cloud Infrastructure as a Service (IaaS). 2.2.1 Cloud Software as a Service (SaaS) Η δυνατότητα που παρέχεται στον καταναλωτή είναι να χρησιμοποιεί τις εφαρμογές του παρόχου που τρέχουν σε μια cloud υποδομή. Οι εφαρμογές είναι προσβάσιμες από διάφορες client συσκευές μέσω ενός thin client interface, όπως ένα πρόγραμμα περιήγησης στο Web (π.χ. web-based email). Ένα καλό παράδειγμα, είναι το GoogleDrive και οι εφαρμογές που μπορούν να τρέξουν απ' ευθείας σε αυτό. Ο 6

καταναλωτής συνήθως δεν έχει τη διαχείριση ή τον έλεγχο της χρησιμοποιούμενης υποδομής νέφους συμπεριλαμβανομένων των δικτύων, των servers, των λειτουργικών συστημάτων, των αποθηκευτικών μονάδων, ή ακόμα και μεμονωμένων δυνατοτήτων της εφαρμογής, με την πιθανή εξαίρεση κάποιων περιορισμένων user-specific ρυθμίσεων παραμετροποίησης των εφαρμογών. 2.2.2 Cloud Platform as a Service(PaaS) Η δυνατότητα που παρέχεται στον καταναλωτή είναι να αναπτύσσει πάνω στην cloud υποδομή εφαρμογές που έχει δημιουργήσει ή εφαρμογές που έχει αποκτήσει, οι οποίες έχουν δημιουργηθεί με χρήση γλωσσών προγραμματισμού και εργαλείων που υποστηρίζονται από τον πάροχο. Ο καταναλωτής δεν διαχειρίζεται ούτε ελέγχει τη σχετική cloud υποδομή που συμπεριλαμβάνει τα δίκτυα, τους servers, τα λειτουργικά συστήματα ή τα αποθηκευτικά μέσα, αλλά έχει τον έλεγχο των εφαρμογών που έχουν αναπτυχθεί, και ενδεχομένως, των παραμετροποιήσεων του περιβάλλοντος φιλοξενίας των εφαρμογών. 2.2.3 Cloud Infrastructure as a Service(IaaS) Η δυνατότητα που παρέχεται στον καταναλωτή είναι να μπορεί να δεσμεύσει προς χρήση επεξεργαστική ισχύ, αποθηκευτικά μέσα, δίκτυα, και άλλους θεμελιώδεις υπολογιστικούς πόρους, όπου ο καταναλωτής είναι σε θέση να αναπτύξει και να εκτελέσει αυθαίρετο λογισμικό, το οποίο μπορεί να περιλαμβάνει λειτουργικά συστήματα και εφαρμογές. Ο καταναλωτής δεν έχει τη διαχείριση ή τον έλεγχο της χρησιμοποιούμενης cloud υποδομής, αλλά έχει τον έλεγχο των λειτουργικών συστημάτων, των αποθηκευτικών μέσων, των εφαρμογών που έχουν αναπτυχθεί και πιθανόν κάποιον περιορισμένο έλεγχο επιλεγμένου εξοπλισμού δικτύωσης (π.χ. firewalls). Δίπλα εμφανίζεται η στοίβα Υπηρεσιών Νέφους: Υποδομή ως Υπηρεσία(IaaS: Εφαρμογές, Κοινωνική Δικτύωση), Πλατφόρμα ως Υπηρεσία(PaaS: Βάσεις Δεδομένων, Εξυπηρετητές Ιστοσελίδων), Λογισμικό ως Υπηρεσία(SaaS: Αποθηκευτικός Χώρος, Εξυπηρετητές, Εικόνα 2.1: Στοίβα Υπηρεσιών Νέφους 7

Εικονικές Μηχανές). Εικόνα 2.2: Εφαρμογές Υπηρεσιών Νέφους(Wikipedia, 2017) 2.3 Μοντέλα Ανάπτυξης Υπολογιστικού Νέφους 2.3.1 Private cloud Η cloud υποδομή λειτουργεί αποκλειστικά και μόνο για έναν. Η διαχείρισή της μπορεί να γίνεται από τον ίδιο τον οργανισμό ή από τρίτους και μπορεί να βρίσκεται εντός ή εκτός των εγκαταστάσεων του οργανισμού. 2.3.2 Community cloud Η cloud υποδομή μοιράζεται μεταξύ πολλών οργανισμών και υποστηρίζει μια συγκεκριμένη κοινότητα που έχει κοινές ανησυχίες (π.χ. αποστολή, απαιτήσεις ασφαλείας, πολιτική και θέματα συμμόρφωσης). Η διαχείρισή της μπορεί να γίνεται από τον ίδιο τον οργανισμό ή από τρίτους και μπορεί να βρίσκεται εντός ή εκτός των εγκαταστάσεων του οργανισμού. 8

2.3.3 Public cloud Η cloud υποδομή διατίθεται στο ευρύ κοινό ή σε μια μεγάλη ομάδα εταιρειών και ανήκει σε έναν οργανισμό που εμπορεύεται υπηρεσίες cloud. 2.3.4 Hybrid cloud Η υποδομή νέφους είναι μια σύνθεση από δύο ή περισσότερα νέφη (private, community or public) τα οποία παραμένουν μοναδικές οντότητες, αλλά συνδέονται μεταξύ τους με τυποποιημένη ή αποκλειστική τεχνολογία που επιτρέπει τη φορητότητα δεδομένων και εφαρμογών (π.χ. εξισορρόπηση φόρτου εργασίας μεταξύ των νεφών). 2.4 Βασικά Χαρακτηριστικά Cloud Computing Αυτοεξυπηρέτηση κατά απαίτηση. Ο καταναλωτής μπορεί να κάνει χρήση των υπολογιστικών πόρων που χρειάζεται (για παράδειγμα το χρόνο που θα χρησιμοποιήσει στον server και το μέγεθος του αποθηκευτικού χώρου που θα χρησιμοποιήσει αυτόματα μέσω δικτύου) χωρίς ανθρώπινη διαμεσολάβηση με τον πάροχο της εκάστοτε υπηρεσίας. Ευρεία δικτυακή πρόσβαση. Ο κάθε χρήστης μπορεί να έχει πρόσβαση δια μέσω δικτύου σε διάφορες διαθέσιμες δυνατότητες και δια μέσου διάφορων μηχανισμών και ετερόκλητων πλατφορμών (π.χ. κινητά. Tablet, pda, φορητοί υπολογιστές) Κοινή διάθεση πόρων. Οι υπολογιστικοί πόροι του παρόχου χρησιμοποιούνται για να εξυπηρετήσουν πολλαπλούς καταναλωτές με τη χρήση του μοντέλου πολλαπλών μισθωτών (multi-tenant), με τους διάφορους φυσικούς και εικονικούς πόρους να ανατίθενται δυναμικά και εκ νέου ανάλογα με τη ζήτηση των καταναλωτών. Ο καταναλωτής γενικά δεν έχει κανένα έλεγχο και γνώση για την ακριβή τοποθέτηση του παρεχόμενου πόρου, αλλά μπορεί να δύναται να προσδιορίσει σε ένα πιο αφηρημένο επίπεδο την τοποθεσία όπως η χώρα, η πόλη ή το συγκεκριμένο data-center. Τέτοιοι πόροι δεν είναι άλλοι από: τον αποθηκευτικό χώρο, επεξεργασία, μνήμη, εύρος ζώνης δικτύου και εικονικές μηχανές. Ταχεία ελαστικότητα. Αυτοί οι πόροι μπορούν να δεσμευτούν άμεσα, ελαστικά και πολλές φορές αυτόματα, με αποτέλεσμα να εμφανίζουν άμεσα την ένδειξη ως μη διαθέσιμοι. Στον καταναλωτή οι δυνατότητες αυτές που είναι διαθέσιμες μοιάζουν να είναι άπειρες και μπορούν να αγορασθούν αποκτηθούν σε οποιαδήποτε ποσότητα, οποιαδήποτε στιγμή. 9

Μετρήσιμα επίπεδα παροχής υπηρεσιών. Τα συστήματα Cloud ελέγχουν και βελτιστοποιούν αυτόματα τη χρήση υπολογιστικών πόρων, χρησιμοποιώντας μετρητικά συστήματα σε κάποιο από τα επίπεδα αφαίρεσης που εισάγουν, το οποίο είναι κατάλληλο για την συγκεκριμένη παρεχόμενη υπηρεσία(αποθηκευτικού χώρου, υπολογιστικής ισχύος, εύρους ζώνης, ενεργού αριθμού χρηστών κλπ). Η χρήση των πόρων μπορεί να παρακολουθείται, να ελέγχεται έτσι ώστε να παρέχει διαφάνεια και για τις δυο πλευρές: του τελικού χρήστη-καταναλωτή και του παρόχου της χρησιμοποιούμενης υπηρεσίας. 2.5 Σύγκριση Μοντέλων Εφαρμογής για Mobile Cloud Computing (MCC) Υπάρχουν διάφορα μοντέλα εφαρμογής σχεδιασμένα για MCC που πετυχαίνουν την βελτίωση συγκεκριμένων προβλημάτων κάθε φορά, όπως για παράδειγμα διαχείριση εκτελέσιμων εφαρμογών που διαθέτουν μειωμένους πόρους ή ταχύτερη απόκριση αυτών των εφαρμογών ή ακόμη βελτίωση της ενεργειακής απόδοσης σε κινητές συσκευές. Ορισμένα μοντέλα βελτιώνουν πολλά χαρακτηριστικά, μερικές φορές όμως θέλοντας να ενισχυθεί ένα χαρακτηριστικό ίσως επιβαρύνουμε κάποιο άλλο. Για παράδειγμα εάν στόχος είναι η γρήγορη απόκριση μιας εφαρμογής, πιθανόν να πρέπει να θυσιαστεί η εκτέλεση κάποιων άλλων εφαρμογών. [20] Πλεονεκτήματα και μειονεκτήματα υπάρχουν σε όλα τα μοντέλα, η ασφάλεια και η προστασία προσωπικών δεδομένων όμως δεν έχει πάντοτε την προτεραιότητα και την προσοχή μειονέκτημα του MCC. [35] που θα έπρεπε, για αυτό το λόγο και αποτελούν το μεγαλύτερο Όπως αναφέραμε παραπάνω υπάρχουν διαφορετικά μοντέλα για διαφορετικές απαιτήσεις α) μοντέλα ενίσχυσης απόδοσης: κύριος σκοπός τους είναι η κατάλληλη αξιοποίηση πόρων από το ΥΝ προς βελτίωση της απόδοσης των εκάστοτε εφαρμογών. Με την πάροδο του χρόνου, οι συνεχώς αυξανόμενες απαιτήσεις των εφαρμογών σε πόρους και επεξεργαστική ισχύ κάνουν επιτακτική την ανάγκη τέτοιων μοντέλων. Χαρακτηριστικό μοντέλο είναι το CloneCloud: όπως υποδηλώνει και το όνομα του, το συγκεκριμένο μοντέλο δημιουργεί ένα κλώνο στην υποδομή νέφους. To Smartphone και ο κλώνος πρέπει να συγχρονίζονται απόλυτα. Το CloneCloud υποστηρίζει μια τεχνική εκτεταμένης εκτέλεσης η οποία μεταφέρει τα δεδομένα από την συσκευή στην πλησιέστερη υποδομή νέφους. Κατά την διάρκεια της εκτέλεσης η συσκευή παραμένει αδρανής μέχρι να επιστραφούν τα επεξεργασμένα δεδομένα από το κλώνο. Κατά τη διαδικασία της κλωνοποίησης δημιουργείται ένα εικονικό τερματικό που μπορεί να ζητήσει οποιαδήποτε στιγμή, οποιοδήποτε όγκο 10

πληροφοριών(η δυναμική αυτής της διαδικασίας εξαρτάται από τους διαθέσιμους πόρους και την επεξεργαστική ισχύ του συστήματος). Πλεονεκτήματα αυτού του μοντέλου είναι ότι όταν ένα smartphone χαθεί ή καταστραφεί, ο κλώνος μπορεί να χρησιμοποιηθεί ως ένα αντίγραφο ασφαλείας για την ανάκτηση των δεδομένων και των εφαρμογών, επιπλέον η τεχνική που χρησιμοποιεί δίνει την δυνατότητα να κατακερματίζονται και να εκτελούνται σε τμήματα οι εφαρμογές χωρίς να παραβιάζονται οι κανόνες φόρτωσης δεδομένων στο νέφος και των περιορισμών. Μειονέκτημα του μοντέλου είναι ότι τα διάφορα σημεία που χρησιμοποιεί δεν είναι δυνατό να ανακτηθούν γιατί δεν υφίσταται η φυσική τους υπόσταση, επιπλέον το CloneCloud απαιτεί την ανάπτυξη ενός μοντέλου κόστους για κάθε εφαρμογή κάτω από διαφορετικές κατατμήσεις, όπου κάθε τμήμα του εκτελείται ξεχωριστά για το smartphone και ξεχωριστά στο νέφος, [36] β) μοντέλα ενίσχυσης ενέργειας: κύριος σκοπός τους είναι η αποδοτικότερη χρήση των πόρων του νέφους χρησιμοποιώντας τα smartphones για να ελαχιστοποιήσουν την κατανάλωση ενέργειας, άλλωστε η μεγιστοποίηση της διάρκειας ζωής μιας μπαταρίας είναι από τα πιο περιζήτητα πράγματα σε ένα smartphone. Χαρακτηριστικό μοντέλο είναι το μcloud: η αξιοπιστία και η φορητότητα των εφαρμογών αυτού του μοντέλου παρέχουν ένα υποστηρικτικό ρόλο σε αυτές τις εφαρμογές που το χρησιμοποιούν. Οι πληροφορίες παραμέτρων εισόδου, η τοπική μνήμη και πληροφορίες σχηματισμού αποθηκεύονται για να προσδιορίζουν ένα και μόνο στοιχείο. Όταν το στοιχείο επεξεργαστεί γίνεται είσοδος στο επόμενο στοιχείο και αυτή η διαδικασία επαναλαμβάνεται έως ότου τελειώσουν τα επιμέρους στοιχεία. Tα πλεονεκτήματα αυτού του μοντέλου είναι ότι υποστηρίζει αυτόνομες εφαρμογές που δεν αλληλοεξαρτώνται. Τα μειονεκτήματα είναι ότι απαιτείται εξειδικευμένο λογισμικό για να επεξεργαστεί τα αποτελέσματα αυτού του μοντέλου και η αδύναμη ασφάλεια που προσφέρει, [36] γ) υβριδικά μοντέλα: περιλαμβάνουν ταυτόχρονα τεχνικές Ενίσχυσης Απόδοσης κινητών εφαρμογών όσο και Ενεργειακής Απόδοσης. Τα μοντέλα αυτά συνήθως δεν απαιτούν παρέμβαση προγραμματιστή για τη μεταφορά δεδομένων στο cloud. Χαρακτηριστικά μοντέλα αποτελούν i) MAUI, ii) ThinkAir και iii) Cuckoo. Το μοντέλο MAUI προάγει ένα μοντέλο που δεν χρειάζεται παρέμβαση προγραμματιστή για τη μεταφορά δεδομένων στο νέφος. Γενικά κάτι τέτοιο αποφεύγεται στις εφαρμογές κινητών συσκευών. Το μοντέλο MAUI εστιάζει στην ενεργειακή απόδοση των εφαρμογών, ορίζοντας πολύπλοκες εφαρμογές να εκτελούνται σε γειτονικές υποδομές νέφους. Επιπλέον βασίζεται στο ιστορικό, δημιουργεί ένα προφίλ και μαντεύει με αυτό τον τρόπο ποιες εφαρμογές χρειάζεται να εκτελεσθούν ή πόσοι πόροι βάση μιας προγενέστερης βάσης 11

δεδομένων. Ο κατακερματισμός των εκάστοτε διεργασιών γίνεται δυναμικά κάτι που οδηγεί σε μείωση του χρόνου απόκρισης των εφαρμογών. Το MAUI χρησιμοποιεί δύο εκδοχές για τις εφαρμογές των smartphone, μία τοπική και μία απομακρυσμένη χρησιμοποιώντας τη γλώσσα Microsoft.NET Common Language Runtime (CLR). Μειονέκτημα του μοντέλου είναι ότι χρησιμοποιώντας το ιστορικό, εάν το χρησιμοποιήσει ένας καινούριος χρήστης δεν είναι τόσο αποδοτικό, επίσης οι μηχανές που χρησιμοποιεί για να δημιουργεί τα προφίλ βάσει του ιστορικού καταλαμβάνουν πολύ χώρο και αρκετούς πόρους, τα οποία είναι ήδη αρκετά περιορισμένα στα smartphone. Το μοντέλο ThinkAir λειτουργεί παρόμοια με το μοντέλο MAUI με τη διαφορά ότι χρειάζεται την παρέμβαση προγραμματιστή για την μεταφορά αρχείων στο νέφος και επίσης βασίζεται σε σύστημα 32bit. Το μοντέλο Cuckoo αποτελεί ένα ευέλικτο μοντέλο αρκεί να υπάρχει εξοικείωση με τα υπάρχοντα εργαλεία cloud που μπορεί να ενσωματωθούν. Εξαιτίας της αυξανόμενης ζήτησης του, έχει υλοποιηθεί σε πλατφόρμα Android. Κατά την διαδικασία πρωταρχικά στοιχεία όπως το όνομα της διαδικασίας, πρέπει να συμπληρωθούν από τον προγραμματιστή. Στη συνέχεια τμήματα της εφαρμογής εκτελούνται στο cloud. Αυτό το μοντέλο ευνοεί και την βελτίωση της απόδοσης όσο και την μείωση της απαιτούμενης ενέργειας. [37], [35-36], [38], [39] Στο παρακάτω πίνακα βλέπουμε την απόδοση που παρουσιάζουν τα μοντέλα που αναπτύχθηκαν παραπάνω στα βασικά χαρακτηριστικά. 1.1. Πίνακας Σύγκρισης Μοντέλων. Model Ba L Sc S Pr C G Plat. MC μcloud Low Low Low Low Low Medium Medium Android Energy CloneCloud High Low Medium Low Low Low High - Performance MAUI High Medium Low Low Low Medium High - High ThinkAir Low Low Low Low Low High Medium Java High Cuckoo Low Medium Low Low Low High Medium Android High Ba = Bandwidth Utilization L = Latency Sc = Scalability S = Security C = Complexity G = Generality Pl = Platform MC = Model Category Pr = Programming Abstraction 12

2.6 Διαδικτυακές Εφαρμογές ως Υπηρεσίες Η ραγδαία εξέλιξη του cloud computing έχει ως αποτέλεσμα να εφαρμόζεται και να καθορίζει τη συμπεριφορά όλο και περισσότερων προγραμμάτων και εφαρμογών. Έτσι λοιπόν παρόλο που ο περισσότερος κόσμος δεν έχει άμεση σχέση με την τεχνολογία και δεν μπορεί να αντιληφθεί την έννοια του υπολογιστικού νέφους, έχουν υλοποιηθεί πολλές εφαρμογές τις οποίες χρησιμοποιεί εδώ και αρκετά χρόνια, σε καθημερινή βάση. Βασικό παράδειγμα είναι οι διάφορες υπηρεσίες ηλεκτρονικής αλληλογραφίας οι οποίες σε πολλές περιπτώσεις έχουν αντικαταστήσει τις εφαρμογές οι οποίες αποθηκεύουν τοπικά, στον προσωρινό υπολογιστή του χρήστη την ηλεκτρονική του αλληλογραφία. Παρακάτω αναφέρονται ενδεικτικά κάποιες από τις δημοφιλέστερες εφαρμογές που αναφέραμε παραπάνω καθώς και ορισμένα από τα βασικά χαρακτηριστικά τους. 2.6.1 Dropbox DROBOX. Το dropbox είναι μια υπηρεσία φύλαξης αρχείων που παρέχει δυνατότητες για αποθήκευση και συγχρονισμό αρχείων. Η συγκεκριμένη υπηρεσία προσφέρει δωρεάν αποθηκευτικό χώρο από 2-16 GB και διαθέσιμη σε διάφορα λειτουργικά συστήματα όπως: Windows, Mac, Linux, iphone, ipad και Android. Το μόνο που έχουν να κάνουν οι χρήστες για να μοιράζονται αρχεία και φακέλους είναι να στείλουν μια πρόσκληση μέσω ηλεκτρονικού ταχυδρομείου σε όσους επιθυμούν να τα παραλάβουν και ενδεχομένως να τα επεξεργαστούν. Παρόμοια υπηρεσία είναι και το Google drive. 2.6.2 WeTransfer WE TRANSFER. To We Transfer, σε αντίθεση με το dropbox, δεν διαθέτει μια εφαρμογή προς εγκατάσταση τοπικά στο τερματικό του χρήστη. Επικεντρώνεται στο να στείλει αρχεία που δεν μπορούν να σταλούν μέσω ηλεκτρονικού ταχυδρομείου λόγω μεγέθους. Είναι εύκολο στη χρήση καθώς το μόνο που χρειάζεται να κάνει ο χρήστης είναι να εισάγει τη δική του διεύθυνση ηλεκτρονικού ταχυδρομείου, την διεύθυνση του παραλήπτη, το αρχείο που θέλει να στείλει καθώς και κάποιο σύντομο μήνυμα(προαιρετικά). Η εφαρμογή αυτή συνίσταται και για επαγγελματική χρήση καθώς είναι εύκολη, γρήγορη, απλή και ασφαλής αλλά και γιατί οι εικόνες που προβάλλονται στην εφαρμογή από διαφημίσεις είναι προσεγμένες και επαγγελματικές. 13

2.6.3 Gmail GMAIL. Το Gmail είναι μια από τις πρώτες υπηρεσίες που συνεργάστηκαν με τις υπηρεσίες cloud. Με αυτό τον τρόπο δόθηκε στους χρήστες η δυνατότητα πολλαπλών ενεργειών πέρα από τις συνηθισμένες χρήσεις των συνηθισμένων λειτουργιών ηλεκτρονικής αλληλογραφίας. Την ίδια πορεία ακολούθησαν και άλλες υπηρεσίες ηλεκτρονικού ταχυδρομείου όπως hotmail και yahoo. 2.7 Πάροχοι Cloud Computing Οι εταιρείες που προσφέρουν τις παραπάνω υπηρεσίες υπολογιστών που αναφέραμε ονομάζονται πάροχοι νέφους και συνήθως χρεώνουν για υπηρεσίες νέφους βασισμένες στη χρήση. Τέτοιες εταιρείες είναι συνήθως κολοσσοί του χώρου της τεχνολογίας, προκειμένου να είναι δυνατή η άμεση κάλυψη των απαιτήσεων των χρηστών τους και όσο το δυνατό μεγαλύτερη η αξιοπιστία του συστήματος. Παρακάτω παρουσιάζονται τρεις από τις δημοφιλέστερες υπηρεσίες νέφους. 2.7.1 Amazon Elastic Cloud (Amazon EC2) Το Amazon Elastic Cloud είναι μια διαδικτυακή υπηρεσία, η οποία αποτελεί ένα κεντρικό κόμβο του υπολογιστικού νέφους πλατφόρμας Amazon, και παρέχει τη δυνατότητα χρησιμοποίησης υπολογιστικής δύναμης εφαρμόζοντας την τεχνική των εικονικών εξυπηρετητών. Το Amazon EC2 μειώνει το χρόνο που απαιτείται για την απόκτηση και την εκκίνηση νέων περιπτώσεων server σε μερικά λεπτά, επιτρέποντας εκτεταμένη ευελιξία αυξομείωσης των υπολογιστικών πόρων σύμφωνα με τις απαιτήσεις του χρήστη. Για την χρήση του EC2 χρειάζεται από τον καταναλωτή να επιλέξει μια προρυθμισμένη εικόνα για να ιδρυθεί και να λειτουργήσει αμέσως ή να δημιουργήσει ένα Amazon Machine Image (AMI) που θα περιέχει τις βιβλιοθήκες, τα δεδομένα και τις ρυθμίσεις της. Να ρυθμίσει την ασφάλεια και την πρόσβαση στο δίκτυο για τα instances του Amazon EC2. Να επιλέξει με ποιον τύπο εικονικής μηχανής και με ποιο λειτουργικό σύστημα επιθυμεί να ξεκινήσει και να παρακολουθήσει όσα instances της AMI της χρειάζεται, μέσω των υπηρεσιών API ή μιας ποικιλίας διοικητικών εργαλείων που παρέχονται. Να προσδιορίζει αν θέλει να εκτελούνται οι διαδικασίες της σε διάφορες τοποθεσίες, χρησιμοποιώντας στατικές IP ή τα instances της να λειτουργούν 14

σε μια συγκεκριμένη τοποθεσία. Να πληρώνει μόνο για τους πόρους που πραγματικά καταναλώνει. 2.7.2 Windows Azure Τα Windows Azure είναι πλατφόρμα της Microsoft. Είναι απόλυτα συμβατή με τις εφαρμογές της Microsoft αλλά όχι απόλυτα συμβατό με τις υπόλοιπες εφαρμογές που τρέχουν σε Windows. H κύρια παροχή του Windows Azure, είναι μια πλατφόρμα, η οποία περιλαμβάνει ένα λειτουργικό σύστημα και έναν ή περισσότερους τρόπους αποθήκευσης δεδομένων. Έτσι οι εφαρμογές που εκτελούνται και η αποθήκευση των δεδομένων σε ένα διαδικτυακά προσβάσιμο κέντρο δεδομένων, να μπορούν να προσφέρουν πολλά πλεονεκτήματα στον χρήστη. Η πλατφόρμα του Windows Azure αποτελεί το θεμέλιο για την εκτέλεση εφαρμογών και την αποθήκευση των δεδομένων στο νέφος. 2.7.3 Google App Engine Το Google App Engine επιτρέπει στον χρήστη να εκτελεί εφαρμογές διαδικτύου στην υποδομή της Google. Σε σύγκριση με την EC2 υστερεί ως προς την ευρεία χρήση, καθώς δεν επιτρέπει ευελιξία στην υποδομή του συστήματος. Ωστόσο, παρέχοντας μια υποδομή που απαλλάσσει τους κατασκευαστές τόσο από τις ανάγκες διαχείρισης όσο και από τα προβλήματα τα οποία απορρέουν από την εγκατάσταση μεγάλων εφαρμογών. Ο χρήστης μπορεί φορτώσει την εφαρμογή και αυτή να είναι έτοιμη να εξυπηρετήσει τους υπόλοιπους χρήστες, καθώς και να χρησιμοποιηθεί από ένα συγκεκριμένο domain name. Οι διάφορες εφαρμογές στο Google App Engine μπορούν να μοιραστούν μεταξύ των χρηστών, ή και να περιοριστεί η πρόσβασή τους σε ορισμένα μέλη. Όλες οι εφαρμογές στο App Engine ανεβαίνουν δωρεάν και μπορούν να χρησιμοποιήσουν έως και 1 GB της αποθήκευσης, αρκετή επεξεργαστική ισχύ και μνήμη έτσι ώστε να είναι αποτελεσματικές και να μπορούν να εξυπηρετούν περίπου πέντε εκατομμύρια προβολές το μήνα. Κόστος υπάρχει μόνο στην περίπτωση που υπάρξει υπέρβαση ορίων. 15

3. ΠΡΟΣΟΜΟΙΩΣΗ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ ΣΥΓΧΡΟΝΩΝ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΥΨΗΛΗΣ ΑΠΟΔΟΣΗΣ To ΥΝ είναι ένας τομέας που επιτρέπει σε άτομα και επιχειρήσεις ή οργανισμούς να καταναλώσουν πόρους, με την ελάχιστη ανθρώπινη παρέμβαση. Ήδη ένας μεγάλος αριθμός εταιριών έχουν υλοποιήσει τη μετάπτωση των συστημάτων τους σε περιβάλλον νέφους. Εντούτοις όμως, παρά της μεγάλης δεκτικότητας η τεχνολογία βρίσκεται σε πρωταρχικό στάδιο. Υπάρχουν πολλά ζητήματα όπως: η αυτοματοποιημένη παροχή υπηρεσιών (automated service provisioning), η ενοποίηση των διακομιστών (server consolidation), η εναλλαγή Εικονικών Μηχανών (Virtual Machines migration), η διαχείριση της ενέργειας (energy managment), η ανάλυση της κίνησης (traffic analysis), η προστασία των δεδομένων (data security), καθώς και προβλήματα του λογισμικού που τα πλαισιώνει (software frameworks). Η διεξαγωγή των ερευνών σε πραγματικό περιβάλλον νέφους από μικρές εταιρίες ή ερευνητές φαντάζει ακατόρθωτη λόγω του κόστους υλοποίησης που συνδέεται με την εγκατάσταση και λειτουργία ενός νέφους, όπως επίσης δεν είναι δυνατή η συχνή εκτέλεση πειραμάτων συγκριτικής αξιολόγησης σε περιβάλλοντα νέφους πραγματικού χρόνου. Την λύση δίνει η χρήση προσομοιωτών, οι οποίοι μπορούν να προσομοιώνουν ένα πραγματικό περιβάλλον νέφους βοηθώντας την μοντελοποίηση εφαρμογών νέφους με αποτέλεσμα την ευκολία της ανάλυσης των αποτελεσμάτων. Μέχρι σήμερα έχουν αναπτυχθεί και χρησιμοποιούνται δεκάδες προσομοιωτές οι οποίοι διαφέρουν μεταξύ τους σε ποικίλα χαρακτηριστικά. Τα σύγχρονα υπολογιστικά συστήματα υψηλής απόδοσης διαχειρίζονται συνήθως και λειτουργούν από μεμονωμένους χρήστες ή ιδιωτικές οργανώσεις. Ωστόσο, η ζήτηση της υπολογιστικής ισχύος κυμαίνεται, με αποτέλεσμα κατά περιόδους οι πόροι είτε να μην χρησιμοποιούνται στο έπακρο (παρόλο που είναι δεσμευμένοι) ή να υπερφορτώνονται οπότε να μην αρκούν. Μια υποδομή-ως-υπηρεσία βασισμένη σε σύννεφο (IaaS) για υπολογιστικές εφαρμογές υψηλής απόδοσης, υπόσχεται εξοικονόμηση κόστους και μεγαλύτερη ευελιξία. Το μοντέλο αυτό έχει προσομοιωθεί έτσι ώστε και οι ελαστικοί πόροι να χρησιμοποιούνται κατ 'απαίτηση από τους πάροχους των υπηρεσιών υπολογιστικής νέφους, κατασκευάζοντας εικονικές συστάδες που να ταιριάζουν ακριβώς με τις συγκεκριμένες απαιτήσεις του χρήστη. Η προσέγγιση του υπολογιστικού νέφους, υπόσχεται αυξημένη ευελιξία και αποδοτικότητα όσον αφορά το κόστος και την κατανάλωση ενέργειας. Το παρόν έγγραφο παρέχει μια γενική εικόνα της τρέχουσας κατάστασης τεχνολογίας νέφους υψηλής απόδοσης και αποδίδει 16

μια επαρκή περιγραφή για τις υποκείμενες τεχνικές προσομοίωσης και τις μεθόδους διαχείρισης. [40] Σε αυτό το κεφάλαιο θα αναλυθεί η επιλογή του προσομοιωτή που είναι ο Cloudsim, τα χαρακτηριστικά του, τα βασικά δομικά στοιχεία του, οι βασικές τεχνικές ανίχνευσης υπερφόρτωσης host καθώς και τρεις πολιτικές ανίχνευσης εικονικών μηχανών (VM) που χρησιμοποιούν οι αλγόριθμοι που θα χρησιμοποιηθούν στο πειραματικό μέρος. 3.1 Επιλογή Προσομοιωτή Ως πιο κατάλληλος και εύχρηστος προσομοιωτής επιλέχθηκε το πακέτο Cloudsim. Το CloudSim [41] είναι ένα προγραμματιστικό εργαλείο, το οποίο παρέχει ένα πλαίσιο για ανάπτυξη, μοντελοποίηση και προσομοίωση Cloud υποδομών και υπηρεσιών. Το CloudSim δίνει τη δυνατότητα στους προγραμματιστές να ελέγξουν δωρεάν σε ένα ελεγχόμενο εικονικό περιβάλλον τις υπηρεσίες τους πριν αυτές εγκατασταθούν και λειτουργήσουν σε μια πραγματική Cloud υποδομή. Το πακέτο του CloudSim περιέχει κλάσεις για την υλοποίηση data centers, virtual machines, hosts, brokers, εφαρμογών, χρηστών, υπολογιστικών πόρων, για τη δημιουργία στρατηγικών διαχείρισης πόρων και συστημάτων και ούτω καθεξής. Με αυτό τον τρόπο μπορούν να πραγματοποιηθούν και να ελεγχθούν διάφορα σενάρια προσομοίωσης της λειτουργίας των υπηρεσιών για το υπολογιστικό νέφος, έτσι ώστε να επιτευχθούν τα επιθυμητά αποτελέσματα των σεναρίων που θα καλύπτουν τις προσδοκώμενες απαιτήσεις. Ολόκληρη η εφαρμογή του CloudSim παρέχεται δωρεάν. Η γλώσσα που χρησιμοποιεί για την ανάπτυξη των εφαρμογών για σενάρια προσομοίωσης Cloud υποδομών είναι η Java. Βασικά χαρακτηριστικά: Υπολογίζει την μοντελοποίηση και προσομοίωση για μεγάλης κλίμακας υπολογιστικά περιβάλλοντα. Αυτοδύναμη πλατφόρμα για μοντελοποίηση clouds, service brokers, provisioning και allocations policies. Υποστηρίζει την προσομοίωση δικτυακών ζεύξεων μεταξύ των στοιχείων της προσομοίωσης. Διευκολύνει την προσομοίωση υβριδικών cloud περιβαλλόντων που περιέχουν πόρους ταυτόχρονα από δημόσιους και ιδιωτικούς τομείς. 17

Παρέχει μια μηχανή εικονικοποίησης που βοηθά στη δημιουργία και στη διαχείριση πολλαπλών ανεξάρτητων και εξαρτημένων εικονικών υπηρεσιών σε ένα κόμβο επεξεργασίας δεδομένων. Ευελιξία στην εναλλαγή μεταξύ space shared και time shared κατανομής των πυρήνων επεξεργασίας σε εικονικές υπηρεσίες. ΑΡΧΙΤΕΚΤΟΝΙΚΗ CLOUDSIM Εικόνα 3.1.1: Αρχιτεκτονική Cloudsim(http://cse564.wikispaces.asu.edu/1) 3.2 Δομικά στοιχεία του Cloudsim Σε αυτή την ενότητα, δίνονται λεπτομέρειες σχετικά με τις βασικές κλάσεις του CloudSim [41] τα οποία αποτελούν και τα βασικά δομικά στοιχεία του προσομοιωτή. Το συνολικό διάγραμμα σχεδίασης της βασικής κλάσης για το CloudSim φαίνεται στην παρακάτω εικόνα. 18

Εικόνα 3.2.1: Δομικά Στοιχεία Cloudsim(Calheiros, R. et al,2011) BwProvisioner: [41] Αυτή είναι μια αφηρημένη κλάση που διαμορφώνει την πολιτική για την παροχή εύρους ζώνης στις VMs. Ο κύριος ρόλος αυτού του στοιχείου είναι να αναλάβει την κατανομή των εύρους ζώνης του δικτύου σε ένα σύνολο ανταγωνιστικών VMs, που αναπτύσσονται σε όλο το κέντρο δεδομένων. Προγραμματιστές και ερευνητές μπορούν να επεκτείνουν αυτή την κλάση με τις δικές τους πολιτικές(προτεραιότητας) ώστε να αντανακλούν τις ανάγκες των εφαρμογών τους. Η κλάση BwProvisioningSimple επιτρέπει σε ένα VM να κρατήσει όσο εύρος ζώνης απαιτείται, ωστόσο, αυτό περιορίζεται από το συνολικό διαθέσιμο εύρος ζώνης του host. CloudCoordinator: [41] Αυτή η αφηρημένη κλάση είναι υπεύθυνη για την περιοδική παρακολούθηση της εσωτερικής κατάστασης των πόρων των κέντρων δεδομένων και με βάση το τελευταίο αναλαμβάνει δυναμικές αποφάσεις διανομής του φορτίου. Cloudlet: [41] Αυτή η κλάση μοντελοποιεί τις υπηρεσίες εφαρμογών που βασίζονται σε Cloud(όπως η διανομή περιεχομένου, η κοινωνική δικτύωση και η ροή εργασιών). Το CloudSim ενορχηστρώνει την πολυπλοκότητα μιας εφαρμογής σε όρους των υπολογιστικών του απαιτήσεων. Κάθε εργασία μιας εφαρμογής έχει μία εντολή με προκαθορισμένο μήκος και μέγεθος δεδομένων που θα μεταφέρει, τα οποία πρέπει να εκτελέσει κατά τη διάρκεια του κύκλου ζωής της. Αυτή η κλάση μπορεί επίσης να επεκταθεί για υποστηρίξει τη μοντελοποίηση επιδόσεων και σύνθετες μετρήσεις που αφορούν εφαρμογές όπως για παράδειγμα συναλλαγές με database-oriented εφαρμογές. 19

CloudletScheduler: [41] Αυτή η αφηρημένη κλάση επεκτείνεται με την εφαρμογή διαφορετικών πολιτικών που καθορίζουν το ποσοστό ισχύος επεξεργασίας μεταξύ των Cloudlets σε ένα VM. Υπάρχουν δύο τύποι πολιτικών παροχής: κοινή χρήση χώρου(cloudetschedulerspaceshared) και κοινή χρήση χρόνου(cloudletschedulertimeshared). Datacenter: [41] Αυτή η κλάση διαμορφώνει τις βασικές υπηρεσίες (hardware) που παρέχονται σε επίπεδο υποδομής από τους παρόχους Cloud (Amazon, Azure, App Engine). Ενσωματώνει ένα σύνολο host που μπορούν είτε να είναι ομοιογενείς ή ετερογενείς ανάλογα με τις διαμορφώσεις υλικού τους (μνήμη, πυρήνες, χωρητικότητα και αποθήκευση). Επιπλέον, κάθε στοιχείο Datacenter δημιουργεί ένα γενικευμένο στοιχείο που εφαρμόζει ένα σύνολο πολιτικών για την κατανομή του εύρους ζώνης, της μνήμης και των συσκευών αποθήκευσης σε host και VM. DatacenterBroker or Cloud Broker: [41] Αυτή η κλάση μοντελοποιεί ένα broker, ο οποίος είναι υπεύθυνος μεσολάβησης στις διαπραγματεύσεις μεταξύ SaaS και παρόχων νέφους, και αυτές οι διαπραγματεύσεις κατευθύνονται από απαιτήσεις QoS. Ανακαλύπτει το κατάλληλο νέφος για παροχή υπηρεσιών μέσω ερωτημάτων στο CIS και αναλαμβάνει ηλεκτρονικές διαπραγματεύσεις για την κατανομή πόρων/υπηρεσιών που μπορούν να ικανοποιήσουν τις ανάγκες QoS της εφαρμογής. DatacenterCharacteristics: [41] Αυτή η κλάση περιέχει πληροφορίες διαμόρφωσης των πόρων του κέντρου δεδομένων. Host: [41] Αυτή η κλάση διαμορφώνει έναν φυσικό πόρο όπως ένας υπολογιστής ή διακομιστής αποθήκευσης. Ενσωματώνει σημαντικές πληροφορίες όπως το μέγεθος μνήμης και αποθήκευσης, τη λίστα και τον τύπο των επεξεργαστών(για να αναπαριστά μια μηχανή πολλαπλών πυρήνων), την πολιτική κατανομής για την κατανομή της ισχύος επεξεργασίας μεταξύ των VM και πολιτικές για την παροχή μνήμης και εύρους ζώνης στα VM. Vm: [41] Αυτή η κλάση μοντελοποιεί μια VM, η οποία διαχειρίζεται και φιλοξενείται από ένα στοιχείο Cloud host. Κάθε στοιχείο VM έχει πρόσβαση σε ένα στοιχείο που αποθηκεύει τα ακόλουθα χαρακτηριστικά που σχετίζονται με μια VM: προσπελάσιμη μνήμη, επεξεργαστής, μέγεθος αποθήκευσης και εσωτερική πολιτική παροχής VM που είναι υποκλάση της CloudletScheduler. VmmAllocationPolicy: [41] Αυτή η αφηρημένη κλάση αναπαριστά μια πολιτική προβλέψεων όπου ένα VM Monitor χρησιμοποιείται για την κατανομή VMs στους hosts. Η βασική λειτουργικότητα του VmmAllocationPolicy είναι να επιλέξει τον 20

διαθέσιμος host σε ένα κέντρο δεδομένων που πληρεί τις απαιτήσεις μνήμης, αποθήκευσης και διαθεσιμότητας για την δημιουργία της VM. VmScheduler: [41] Πρόκειται για μια αφηρημένη κλάση που υλοποιείται από ένα host και διαμορφώνει τις πολιτικές (CloudetSchedulerSpaceShared, CloudletSchedulerTimeShared) που απαιτείται για την κατανομή των πυρήνων στις VMs. 3.3 Προσαρμοστικές ευρετικές μέθοδοι για δυναμική τοποθέτηση εικονικών μηχανών. Προκειμένου να αποφασιστεί ο χρόνος για την έναρξη της μετανάστευσης των VM από έναν host, προτάθηκε αρχικά η ευρετική μέθοδος για τον καθορισμό ανώτερου και κατώτερου κατωφλίου χρήσης. Όμως, λόγω απρόβλεπτου και δυναμικού φόρτου εργασίας, μια σταθερή τιμή κατωφλίου χρήσης δεν ήταν κατάλληλη. [42] Ως εκ τούτου, αναφέρονται παρακάτω τέσσερις τεχνικές ανίχνευσης υπερφόρτωσης των hosts [42] και τρεις πολιτικές επιλογής VM (συνδυασμό των οποίων χρησιμοποιούν οι αλγόριθμοι, που θα μελετηθούν στο πειραματικό μέρος). 3.3.1 Τεχνικές Ανίχνευσης Υπερφόρτωσης host Μέση Απόλυτη Απόκλιση(Mean Absolute Deviation(MAD)): Για την προσαρμογή του κατωφλίου, χρησιμοποιείται μια στατιστική διασπορά η MAD. Η τεχνική MAD δεν επηρεάζεται σε μεγάλο βαθμό από τις ακραίες τιμές, επομένως το μέγεθος των αποστάσεων των αποδόσεων δεν έχει σημασία. Ορισμός: Ως μέση απόλυτη απόκλιση ορίζεται ο μέσος των απολύτων τιμών των αποκλίσεων των παρατηρήσεων από το μέσο των παρατηρήσεων αυτών. Δηλαδή n X i X i MAD 1, όπου η μέση τιμή ενός συνόλου τιμών και n πλήθος τιμών n ενός συνόλου. Ενδοτερτημοριακό Εύρος (Interquartile Range(IQR)): Δεύτερη μέθοδος για τη ρύθμιση ενός προσαρμοστικού κατωφλίου όπου για τη συμμετρική κατανομή το ήμισυ του IQR είναι ίδιο με το κατώφλι που προκύπτει από την τεχνική MAD. Ορισμός: Ως Ενδοτερτημοριακό Εύρος ορίζεται η διαφορά του πρώτου από το τρίτο τεταρτημόριο. Στο μεταξύ τους διάστημα βρίσκεται το 50% των τιμών της κατανομής. Επομένως, όσο μικρότερο είναι αυτό το διάστημα, τόσο μεγαλύτερη θα είναι η συγκέντρωση των τιμών και άρα μικρότερη η διασπορά των τιμών της 21

μεταβλητής, και αντίστοιχα, μεγάλη τιμή του IQR δείχνει μεγάλη μεταβλητότητα. Το μισό του ενδοτεταρτημοριακού εύρους είναι γνωστό ως ημιενδοτεταρτημοριακό εύρος (semi-interquantile range) και συμβολίζεται με Q. Μετριέται με τις ίδιες μονάδες της μεταβλητής και δεν εξαρτάται από όλες τις τιμές αλλά μόνο από εκείνες που περιλαμβάνονται στον υπολογισμό του πρώτου και τρίτου τεταρτημορίου. Εικόνα 3.3.1: Τύπος Interquartile Range(IQR By Jhguch at en.wikipedia, CC BY-SA 2.5, https://commons.wikimedia.org/w/index.php?curid=14524285) Τοπική Παλινδρόμηση (Local Regression(LR)): Η τεχνική LR δημιουργεί μια καμπύλη που προσεγγίζει τα αρχικά δεδομένα, ρυθμίζοντας δείγματα μοντέλων δεδομένων σε τοπικό υποσύνολο δεδομένων. Ισχυρή τοπική παλινδρόμηση (Robust Local Regression(LRR)): Η τεχνική της τοπικής παλινδρόμησης είναι ευάλωτη σε απομεινάρια που θα μπορούσαν να προκληθούν από τη διανομή μεγάλων ουρών. Προκειμένου να αποφευχθεί αυτό το πρόβλημα, η τεχνική LR, με την προσθήκη μιας ισχυρής μεθόδου εκτίμησης που ονομάζεται bisquare, μετασχηματίστηκε σε μια «ισχυρή» επαναληπτική μέθοδο που ονομάζεται Robust Local Regression. 3.3.2 Πολιτικές Επιλογής Μετανάστευσης VM Μετά τον εντοπισμό ενός υπερφορτωμένου host, το επόμενο βήμα είναι η επιλογή συγκεκριμένων VM για να μεταναστεύσουν από ένα host σε άλλο. Σε αυτήν την ενότητα θα αναλυθούν οι τρεις πολιτικές επιλογής VM που χρησιμοποιήσαμε στο έργο μας. [42] 22

Ελάχιστος χρόνος μετανάστευσης (Minimum migration time(mmt)): Αυτή η πολιτική επιλέγει να μεταναστεύσει ένα VM που απαιτεί ελάχιστο χρόνο για να ολοκληρωθεί η μετανάστευση, σε σύγκριση με άλλα VM που έχουν κατανεμηθεί στον host. Μέγιστη πολιτική συσχέτισης(maximum Correlation policy(mc)): Όσο μεγαλύτερη είναι η συσχέτιση μεταξύ της χρήσης των πόρων από εφαρμογές που εκτελούνται σε ένα διακομιστή, τόσο μεγαλύτερη είναι η πιθανότητα υπερφορτώσεως του διακομιστή. Για την εκτίμηση συσχέτισης, εφαρμόστηκαν πολλαπλοί συντελεστές συσχέτισης. 4. ΔΙΑΔΙΚΑΣΙΑ ΕΚΤΕΛΕΣΗ ΠΕΙΡΑΜΑΤΟΣ Για τον προσδιορισμό των υπερφορτωμένων host ξενιστών προτείνουμε μια απλή προσέγγιση. Πρώτον, όλοι οι υπερφορτωμένοι hosts χρησιμοποιούν επιλεγμένο αλγόριθμο ανίχνευσης υπερφόρτωσης host και οι VM που έχουν επιλεγεί για μετανάστευση κατανέμονται στους host προορισμού. Στη συνέχεια, το σύστημα εντοπίζει τον host με την ελάχιστη δυνατή χρήση, σε σύγκριση με τους άλλους host, και προσπαθεί να τοποθετήσει τις VM από αυτόν τον host σε άλλους, αποφεύγοντας την υπερφόρτωση. Εάν αυτό μπορεί να επιτευχθεί, οι VMs ρυθμίζονται για τη μετάβαση προς τους καθορισμένους host-προορισμού και ο host-προέλευσης μεταβαίνει στη λειτουργία αδράνειας μόλις ολοκληρωθούν όλες οι μεταναστεύσεις. Εάν δεν μπορούν να τοποθετηθούν όλα τα VM από τον host-προέλευσης σε άλλα hosts, ο hostπροέλευσης διατηρείται ενεργός. Αυτή η διαδικασία επαναλαμβάνεται επανειλημμένα για όλους τους hosts που δεν θεωρούνται υπερφορτωμένοι. Η εκτέλεση των πειραμάτων έγινε σε περιβάλλον NetBeans 8.2 και η γλώσσα που χρησιμοποιήθηκε για τον κώδικα είναι η java. Επιπλέον η προσομοίωση έγινε σε λειτουργικό σύστημα Windows7 Pro(64bit), επεξεργαστή I3, 1.70GHz και RAM 4 GB. Η πολιτικές που είναι ενσωματωμένες στο πακέτο Cloudsim και θα μελετηθούν είναι εννέα (9) και είναι οι εξής: Πολιτική DVFS Πολιτική LrMc Πολιτική LrMmt Πολιτική MadMc Πολιτική MadMmt 23 Πολιτική IqrMc Πολιτική IqrMmt Πολιτική LrrMc Πολιτική LrrMmt

Τα ακρωνύμια των πολιτικών, όπως θα δούμε και αναλυτικά στις παρακάτω ενότητες, ενσωματώνουν τις τεχνικές που αναλύσαμε στο κεφάλαιο 3.3. Η επιλογή των πολιτικών αυτών έγινε με σκοπό τη μελέτη της λειτουργία τους, ώστε να επιλεχθεί η βέλτιστη και σε μελλοντικό χρόνο να προκύψει ενδεχομένως μια νέα πολιτική. Επιπλέον, θα μελετηθούν πάνω σε πέντε (5) σενάρια επεξεργαστών host με μοντέλα επεξεργαστών Xeon και Pentium, με διαφορετικές δυνατότητες συχνότητας, cores και ram. Η επιλογή αυτών των μοντέλων host έγινε καθώς υπάρχουν ενσωματωμένες κλάσεις για το καθένα στο πακέτο Cloudsim, καθιστώντας εύκολη την παραμετροποίηση τους σε ότι αφορά φόρτο, συχνότητα, cores και ram. Τα σενάρια που προαναφέρθηκαν είναι τα εξής: HP ProLiant ML110 G4(1 x [Xeon 3040 1860 MHz, 2 cores], 4GB) HP ProLiant ML110 G5(1 x [Xeon 3075 2660 MHz, 2 cores], 4GB) HP ProLiant ML110 G3(1 x [Pentium d930 3000 MHz, 2 cores], 4GB) IbmX3250XeonX3470 (1 x [Xeon X3470 2933 MHz, 4 cores}, 8GB) Συνδυασμός Xeon 3040 και Xeon 3075 Η επιλογή των επεξεργαστών host ενδείκνυται καθώς υπάρχουν υλοποιημένες κλάσεις ενσωματωμένες στο πακέτο του προσομοιωτή Cloudsim. Τέλος, για κάθε ένα από τους επεξεργαστές ορίσαμε τέσσερα(4) σενάρια, πρώτα διατηρούμε σταθερό των αριθμό των cores και αλλάζουμε την τιμή της ram σε 4GB ή 8GB και έπειτα διατηρούμε σταθερή την τιμή της ram και αλλάζουμε τον αριθμό των cores σε 2 ή 4. Τα σενάρια που προαναφέρθηκαν είναι τα εξής: Σταθερός ο αριθμός των cores και ram = 4GB Σταθερός ο αριθμός των cores και ram = 8GB Σταθερή τιμή της ram και cores = 2 Σταθερή τιμή της ram και cores = 4 Επιλέξαμε αυτά τα σενάρια έτσι ώστε να μπορέσουμε να μετρήσουμε την επίδραση των αλλαγών των cores και της ram των host στη συμπεριφορά ενός υπολογιστικού νέφους. Στα πλαίσια του πειράματος εξετάσθηκαν και μεγαλύτερες τιμές για ram και cores χωρίς να παρουσιάζουν ιδιαίτερα αποτελέσματα για αυτό το λόγο καταλήξαμε σε αυτές τις τιμές. 24

Για την διεκπεραίωση των σεναρίων χρησιμοποιήσαμε το πηγαίο κώδικα της εκάστοτε πολιτικής, όπου εκτελώντας πήραμε τα αποτελέσματα για όλα τα σενάρια που ορίσαμε αρχικά για κάθε μία από τις εννιά πολιτικές. Στην παρακάτω εικόνα βλέπουμε τον κώδικα της πολιτικής DVFS. Εικόνα4.1: Πηγαίος κώδικας Πολιτικής DVFS Στον πηγαίο κώδικα RandomConstants.java, ορίσουμε τον αριθμό των Host. Στον πηγαίο κώδικα Constants.java ορίζουμε: α) τον επεξεργαστή ή των συνδυασμό των επεξεργαστών των host, β) την τιμή της ram και γ) τον αριθμό των cores. Εικόνα 2: Πηγαίος Κώδικας κλάσης RandomConstants 25

Εικόνα 3: Πηγαίος Κώδικας κλάσης Constants Αφού ορίσουμε τις παραμέτρους των σεναρίων, εκάστοτε πολιτικής. εκτελούμε το αρχείο της 4.1 Πολιτική DVFS Η πολιτική DVFS(Dynamic Voltage and Frequency Scaling) μπορεί να αλλάξει δυναμικά την τάση και τη συχνότητα, μιας CPU ενός host, ανάλογα με το φορτίο του. Η χρήση του DVFS επηρεάζει άμεσα την απόδοση της χωρητικότητας της CPU(και των host), η οποία αλλάζει τακτικά κατά τη διάρκεια προσομοιώσεων. Αυτό συνεπάγεται με την αλλαγή του τρόπου με τον οποίο ο προσομοιωτής χειρίζεται την τοποθέτηση και τη διαχείριση των εικονικών μηχανών. [43] Γίνεται προσομοίωση σε ένα ετερογενές κέντρο δεδομένων στο οποίο χρησιμοποιούνται συνδυαστικά δύο τεχνικές για την μείωση της κατανάλωσης ενέργειας(energy consumption). Δεν υπάρχει κάποια μέθοδος δυναμικής βελτιστοποίησης της κατανομής των εικονικών μηχανών στο σύστημα. Οι δύο τεχνικές είναι: Dynamic Voltage Scaling, Dynamic Frequency Scaling. [44] Ορίσαμε σταθερό αριθμό των Hosts=50. Επιπλέον για κάθε ένα από τους συνδυασμούς επεξεργαστών, διατηρούμε σταθερούς τους cores των host και ορίζουμε την ram στις τιμές 4GB ή 8GB αντίστοιχα. Έπειτα σε συνέχεια της εκτέλεσης του πειράματος, διατηρούμε σταθερούς τους cores των host και ορίζουμε τους cores σε 2 ή 4 και εξάγαμε τα παρακάτω συμπεράσματα. 26

Συμπεράσματα DVFS Διατηρώντας σταθερό τον αριθμό των πυρήνων, όταν αυξηθεί η μνήμη Ram μειώνεται η κατανάλωση ενέργειας(διάγραμμα 4.1.1). Διατηρώντας σταθερό τον αριθμό των πυρήνων, όταν αυξηθεί η μνήμη Ram αυξάνεται ο αριθμός των Hosts που απενεργοποιούνται κατά τη διάρκεια της εκτέλεσης του πειράματος(διάγραμμα 4.1.2). Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, μειώνεται η κατανάλωση ενέργειας(διάγραμμα4.1.1). Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, αυξάνεται ο αριθμός των Hosts που απενεργοποιούνται κατά τη διάρκεια της εκτέλεσης του πειράματος(διάγραμμα 4.1.2). Ο επεξεργαστής Xeon X3470 παρουσιάζει την μικρότερη κατανάλωση ενέργειας,σε σχέση με τους υπόλοιπους με διαφορά(διάγραμμα4.1.1). Διάγραμμα 4.1.1 Παράδειγμα DVFS: Κατανάλωση Ενέργειας 27

Διάγραμμα 4.1.2 Παράδειγμα DVFS: αριθμός των Hosts που απενεργοποιούνται 4.2 Πολιτική LrMc Γίνεται προσομοίωση σε ένα ετερογενές κέντρο δεδομένων στο οποίο χρησιμοποιείται ο αλγόριθμος πρόβλεψης υπερφόρτωσης Local Regression σε συνδυασμό με την πολιτική and Maximum Correlation για την επιλογή του VM που θα μεταναστεύσει σε άλλον Host. Ορίσαμε σταθερό αριθμό των Hosts=50. Επιπλέον για κάθε ένα από τους συνδυασμούς επεξεργαστών, διατηρούμε σταθερούς τους cores των host και ορίζουμε την ram στις τιμές 4GB ή 8GB αντίστοιχα. Έπειτα σε συνέχεια της εκτέλεσης του πειράματος, διατηρούμε σταθερούς τους cores των host και ορίζουμε τους cores σε 2 ή 4 και εξάγαμε τα παρακάτω συμπεράσματα. Συμπεράσματα LrMc Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, μειώνεται η κατανάλωση ενέργειας και ο αριθμός των Hosts που απενεργοποιούνται κατά τη διάρκεια της εκτέλεσης του πειράματος.(διάγραμμα 4.2.1) Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, μειώνεται το ποσοστό υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) και ο Μέσος 28

Χρόνος πριν την απενεργοποίηση ενός Host.(Διάγραμμα 4.2.2, Διάγραμμα 4.2.3) Το ποσοστό υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) κυμαίνεται στα ίδια επίπεδα σε όλους τους συνδυασμούς επεξεργαστών, με εξαίρεση, κρατώντας σταθερή την τιμή της RAM και αυξάνοντας τους πυρήνες των Host, όπου ο επεξεργαστής PentiumD930 έχει την χαμηλότερη τιμή.(διάγραμμα 4.2.4) Κρατώντας σταθερή την τιμή της RAM και αυξάνοντας τους πυρήνες των Host, ο επεξεργαστής Xeon 3040 έχει τον μικρότερο Μέσο Χρόνο πριν την απενεργοποίηση ενός Host άρα και τον μεγαλύτερο αριθμό των Hosts που απενεργοποιούνται κατά τη διάρκεια της εκτέλεσης του πειράματος συγκριτικά με τους υπόλοιπους επεξεργαστές.(διάγραμμα 4.2.3 και Διάγραμμα 4.2.6) Διάγραμμα 4.2.1: Παράδειγμα LrMc/ Κατανάλωση ενέργειας 29

Διάγραμμα 4.2.2: Παράδειγμα LrMc / Ποσοστό υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) Διάγραμμα 4.2.3: Παράδειγμα LrMc / Μέσος Χρόνος πριν την απενεργοποίηση ενός Host 30

Διάγραμμα 4.2.4: Παράδειγμα LrMc / Ποσοστό υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) / ram= σταθερή / cores= 4 Διάγραμμα 4.2.5: Παράδειγμα LrMc / χρόνος συμφωνημένης παρεχόμενης υπηρεσίες ανά host(sla) 31

Διάγραμμα 4.2.6: Παράδειγμα LrMc / αριθμός των Hosts που απενεργοποιούνται 4.3 Πολιτική LrMmt Γίνεται προσομοίωση σε ένα ετερογενές κέντρο δεδομένων στο οποίο χρησιμοποιείται ο αλγόριθμος πρόβλεψης υπερφόρτωσης Local Regression σε συνδυασμό με την πολιτική Minimum Migration Time για την επιλογή του VM που θα μεταναστεύσει σε άλλον Host. Ορίσαμε σταθερό αριθμό των Hosts=50. Επιπλέον για κάθε ένα από τους συνδυασμούς επεξεργαστών, διατηρούμε σταθερούς τους cores των host και ορίζουμε την ram στις τιμές 4GB ή 8GB αντίστοιχα. Έπειτα σε συνέχεια της εκτέλεσης του πειράματος, διατηρούμε σταθερούς τους cores των host και ορίζουμε τους cores σε 2 ή 4 και εξάγαμε τα παρακάτω συμπεράσματα. Συμπεράσματα LrMmt Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, μειώνεται η κατανάλωση ενέργειας και ο αριθμός των Hosts που απενεργοποιούνται κατά τη διάρκεια της εκτέλεσης του πειράματος.(διάγραμμα 4.3.1) Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, μειώνεται το ποσοστό υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) και ο Μέσος 32

Χρόνος πριν την απενεργοποίηση ενός Host.(Διάγραμμα 4.3.2 και Διάγραμμα 4.3.3) Διατηρώντας σταθερή την τιμή της RAM και αυξάνοντας τους πυρήνες των Host, ο επεξεργαστής Xeon 3040 έχει το μεγαλύτερο ποσοστό υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) σε σχέση με τους υπόλοιπους επεξεργαστές.(διάγραμμα 4.3.2) Διατηρώντας σταθερή την τιμή της RAM και αυξάνοντας τους πυρήνες των Host, συγκριτικά με την πολιτική LrMc, ο αριθμός των Hosts που απενεργοποιούνται κατά τη διάρκεια της εκτέλεσης του πειράματος αυξάνεται κατά 50%.(Διάγραμμα 4.3.5) Διάγραμμα 4.3.1: Παράδειγμα LrMmt /Κατανάλωση Ενέργειας 33

Διάγραμμα 4.3.2: Παράδειγμα LrMmt / υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) Διάγραμμα 4.3.3: Παράδειγμα LrMmt / Μέσος Χρόνος πριν την απενεργοποίηση ενός Host 34

Διάγραμμα 4.3.4: Παράδειγμα LrMmt / χρόνος συμφωνημένης παρεχόμενης υπηρεσίες ανά host(sla) Διάγραμμα 4.3.5: Παράδειγμα LrMmt / αριθμός των Hosts που απενεργοποιούνται 35

4.4 Πολιτική MadMc Γίνεται προσομοίωση σε ένα ετερογενές κέντρο δεδομένων στο οποίο εφαρμόζεται ο αλγόριθμος πρόβλεψης υπερφόρτωσης Median Absolute Deviation σε συνδυασμό με την πολιτική Maximum Correlation για την για την επιλογή του VM που θα μεταναστεύσει σε άλλον Host. Ορίσαμε σταθερό αριθμό των Hosts=50. Επιπλέον για κάθε ένα από τους συνδυασμούς επεξεργαστών, διατηρούμε σταθερούς τους cores των host και ορίζουμε την ram στις τιμές 4GB ή 8GB αντίστοιχα. Έπειτα σε συνέχεια της εκτέλεσης του πειράματος, διατηρούμε σταθερούς τους cores των host και ορίζουμε τους cores σε 2 ή 4 και εξάγαμε τα παρακάτω συμπεράσματα. Συμπεράσματα MadMc Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, μειώνεται η κατανάλωση ενέργειας και ο αριθμός των Hosts που απενεργοποιούνται κατά τη διάρκεια της εκτέλεσης του πειράματος.(διάγραμμα 4.4.1 και Διάγραμμα 4.4.5) Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, μειώνεται το ποσοστό υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) και ο Μέσος Χρόνος πριν την απενεργοποίηση ενός Host.(Διάγραμμα 4.4.2 και Διάγραμμα 4.4.3) Διατηρώντας σταθερή την τιμή της RAM και αυξάνοντας τους πυρήνες των Host, ο επεξεργαστής Xeon 3040 έχει την μικρότερη κατανάλωση ενέργειας, το μικρότερο ποσοστό υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) και το μεγαλύτερο αριθμό των Hosts που απενεργοποιούνται κατά τη διάρκεια της εκτέλεσης του πειράματος.(διάγραμμα 4.4.1, Διάγραμμα 4.4.2 και Διάγραμμα 4.4.5) Διατηρώντας σταθερή την τιμή της RAM και αυξάνοντας τους πυρήνες των Host, το μεγαλύτερο ποσοστό υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) το έχει ο συνδυασμός των επεξεργαστών Xeon3040 & Xeon3075.(Διάγραμμα 4.4.2) 36

Διάγραμμα 4.4.1: Παράδειγμα MadMc /Κατανάλωση Ενέργειας Διάγραμμα 4.4.2: Παράδειγμα MadMc / υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) 37

Διάγραμμα 4.4.3: Παράδειγμα MadMc / Μέσος Χρόνος πριν την απενεργοποίηση ενός Host Διάγραμμα 4.4.4: Παράδειγμα MadMc / χρόνος συμφωνημένης παρεχόμενης υπηρεσίες ανά host(sla) 38

Διάγραμμα 4.4.5: Παράδειγμα MadMc / αριθμός των Hosts που απενεργοποιούνται 4.5 Πολιτική MadMmt Γίνεται προσομοίωση σε ένα ετερογενές κέντρο δεδομένων στο οποίο εφαρμόζεται ο αλγόριθμος πρόβλεψης υπερφόρτωσης Median Absolute Deviation σε συνδυασμό με την πολιτική Minimum Migration Time για την για την επιλογή του VM που θα μεταναστεύσει σε άλλον Host. Ορίσαμε σταθερό αριθμό των Hosts=50. Επιπλέον για κάθε ένα από τους συνδυασμούς επεξεργαστών, διατηρούμε σταθερούς τους cores των host και ορίζουμε την ram στις τιμές 4GB ή 8GB αντίστοιχα. Έπειτα σε συνέχεια της εκτέλεσης του πειράματος, διατηρούμε σταθερούς τους cores των host και ορίζουμε τους cores σε 2 ή 4 και εξάγαμε τα παρακάτω συμπεράσματα. Συμπεράσματα MadMmt Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, μειώνεται η κατανάλωση ενέργειας και ο αριθμός των Hosts που απενεργοποιούνται κατά τη διάρκεια της εκτέλεσης του πειράματος.(διάγραμμα 4.5.1 και Διάγραμμα 4.5.3) 39

Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, μειώνεται το ποσοστό υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) και ο Μέσος Χρόνος πριν την απενεργοποίηση ενός Host.(Διάγραμμα 4.5.2 και Διάγραμμα 4.5.3) Ο επεξεργαστής Xeon 3075 παρουσιάζει τη μεγαλύτερη κατανάλωση ενέργειας.(διάγραμμα 4.5.1) Ο επεξεργαστής Xeon 3040 παρουσιάζει το μεγαλύτερο μέσο χρόνο πριν την απενεργοποίηση ενός Host.(Διάγραμμα 4.5.3) Διατηρώντας σταθερή την τιμή της RAM και αυξάνοντας τους πυρήνες των Host, συγκριτικά με την πολιτική MadMc, μειώνεται ο Μέσος Χρόνος πριν την απενεργοποίηση ενός Host. Διάγραμμα 4.5.1: Παράδειγμα MadMmt / Κατανάλωση Ενέργειας 40

Διάγραμμα 4.5.2: Παράδειγμα MadMmt/ υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) Διάγραμμα 4.5.3: Παράδειγμα MadMmt / Μέσος Χρόνος πριν την απενεργοποίηση ενός Host 41

Διάγραμμα 4.5.4: Παράδειγμα MadMmt / χρόνος συμφωνημένης παρεχόμενης υπηρεσίες ανά host(sla) Διάγραμμα 4.5.5: Παράδειγμα MadMmt / αριθμός των Hosts που απενεργοποιούνται 42

4.6 Πολιτική IqrMc Γίνεται προσομοίωση σε ένα ετερογενές κέντρο δεδομένων στο οποίο εφαρμόζεται ο αλγόριθμος πρόβλεψης υπερφόρτωσης Inter Quartile Range σε συνδυασμό με την πολιτική Maximum Correlation για την επιλογή του VM που θα μεταναστεύσει σε άλλον Host. Ορίσαμε σταθερό αριθμό των Hosts=50. Επιπλέον για κάθε ένα από τους συνδυασμούς επεξεργαστών, διατηρούμε σταθερούς τους cores των host και ορίζουμε την ram στις τιμές 4GB ή 8GB αντίστοιχα. Έπειτα σε συνέχεια της εκτέλεσης του πειράματος, διατηρούμε σταθερούς τους cores των host και ορίζουμε τους cores σε 2 ή 4 και εξάγαμε τα παρακάτω συμπεράσματα. Συμπεράσματα IqrMc Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, μειώνεται η κατανάλωση ενέργειας και ο αριθμός των Hosts που απενεργοποιούνται κατά τη διάρκεια της εκτέλεσης του πειράματος εκτός του επεξεργαστή Xeon3040 που αριθμός μειώνεται ελάχιστα.(διάγραμμα 4.6.1 και Διάγραμμα 4.6.4) Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, μειώνεται το ποσοστό υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) και ο Μέσος Χρόνος πριν την απενεργοποίηση ενός Host.(Διάγραμμα 4.6.2 και Διάγραμμα 4.6.5) Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, το μεγαλύτερο ποσοστό υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) το έχει ο επεξεργαστής Xeon X3470.(Διάγραμμα 4.6.2) Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, ο επεξεργαστής Xeon3040 έχει το μεγαλύτερο Μέσος Χρόνος πριν την απενεργοποίηση ενός Host.(Διάγραμμα 4.6.5) 43

Διάγραμμα 4.6.1: Παράδειγμα IqrMc / Κατανάλωση Ενέργειας Διάγραμμα 4.6.2: Παράδειγμα IqrMc / υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) 44

Διάγραμμα 4.6.3: Παράδειγμα IqrMc / χρόνος συμφωνημένης παρεχόμενης υπηρεσίες ανά host(sla) Διάγραμμα 4.6.4: Παράδειγμα IqrMc / αριθμός των Hosts που απενεργοποιούνται 45

Διάγραμμα 4.6.5: Παράδειγμα IqrMc / Μέσος Χρόνος πριν την απενεργοποίηση ενός Host 4.7 Πολιτική IqrMmt Γίνεται προσομοίωση σε ένα ετερογενές κέντρο δεδομένων στο οποίο εφαρμόζεται ο αλγόριθμος πρόβλεψης υπερφόρτωσης Inter Quartile Range σε συνδυασμό με την πολιτική Minimum Migration Time για την για την επιλογή του VM που θα μεταναστεύσει σε άλλον Host. Ορίσαμε σταθερό αριθμό των Hosts=50. Επιπλέον για κάθε ένα από τους συνδυασμούς επεξεργαστών, διατηρούμε σταθερούς τους cores των host και ορίζουμε την ram στις τιμές 4GB ή 8GB αντίστοιχα. Έπειτα σε συνέχεια της εκτέλεσης του πειράματος, διατηρούμε σταθερούς τους cores των host και ορίζουμε τους cores σε 2 ή 4 και εξάγαμε τα παρακάτω συμπεράσματα. Συμπεράσματα IqrMmt Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, μειώνεται η κατανάλωση ενέργειας και ο αριθμός των Hosts που απενεργοποιούνται κατά τη διάρκεια της εκτέλεσης του πειράματος.(διάγραμμα 4.7.1 και Διάγραμμα 4.7.4) 46

Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, μειώνεται το ποσοστό υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) και ο Μέσος Χρόνος πριν την απενεργοποίηση ενός Host.(Διάγραμμα 4.7.2 και Διάγραμμα 4.7.5) Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, ο επεξεργαστής Xeon3040 έχει το μικρότερο ποσοστό υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA), μειωμένο κατά 50% περίπου συγκριτικά με τους υπόλοιπους επεξεργαστές.(διάγραμμα 4.7.5) Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, ο επεξεργαστής Xeon3040 και ο επεξεργαστής X3470 έχουν το μεγαλύτερο αριθμό των Hosts που απενεργοποιούνται κατά τη διάρκεια της εκτέλεσης του πειράματος.(διάγραμμα 4.7.4) Διατηρώντας σταθερή την τιμή της RAM και αυξάνοντας τους πυρήνες των Host, συγκριτικά με την πολιτική IqrMc, μειώνεται ο Μέσος Χρόνος πριν την απενεργοποίηση ενός Host. Διάγραμμα 4.7.1: Παράδειγμα IqrMmt / Κατανάλωση Ενέργειας 47

Διάγραμμα 4.7.2: Παράδειγμα IqrMmt / υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) Διάγραμμα 4.7.3: Παράδειγμα IqrMmt / χρόνος συμφωνημένης παρεχόμενης υπηρεσίες ανά host(sla) 48

Διάγραμμα 4.7.4: Παράδειγμα IqrMmt / αριθμός των Hosts που απενεργοποιούνται Διάγραμμα 4.7.5: Παράδειγμα IqrMmt / Μέσος Χρόνος πριν την απενεργοποίηση ενός Host 49

4.8 Πολιτική LrrMc Γίνεται προσομοίωση σε ένα ετερογενές κέντρο δεδομένων στο οποίο εφαρμόζεται ο αλγόριθμος πρόβλεψης υπερφόρτωσης Local Regression Robust σε συνδυασμό με την πολιτική Maximum Correlation για την επιλογή του VM που θα μεταναστεύσει σε άλλον Host. Ορίσαμε σταθερό αριθμό των Hosts=50. Επιπλέον για κάθε ένα από τους συνδυασμούς επεξεργαστών, διατηρούμε σταθερούς τους cores των host και ορίζουμε την ram στις τιμές 4GB ή 8GB αντίστοιχα. Έπειτα σε συνέχεια της εκτέλεσης του πειράματος, διατηρούμε σταθερούς τους cores των host και ορίζουμε τους cores σε 2 ή 4 και εξάγαμε τα παρακάτω συμπεράσματα. Συμπεράσματα LrrMc Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, μειώνεται η κατανάλωση ενέργειας και ο αριθμός των Hosts που απενεργοποιούνται κατά τη διάρκεια της εκτέλεσης του πειράματος.(διάγραμμα 4.8.1 και Διάγραμμα 4.8.5) Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, μειώνεται το ποσοστό υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) και ο Μέσος Χρόνος πριν την απενεργοποίηση ενός Host.(Διάγραμμα 4.8.2 και Διάγραμμα 4.8.3) Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, ο επεξεργαστής Xeon X3470 έχει τη μικρότερη κατανάλωση ενέργειας αλλά το μεγαλύτερο ποσοστό υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA).(Διάγραμμα 4.8.1 και Διάγραμμα 4.8.2) Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, ο επεξεργαστής PentiumD930 έχει το μικρότερο ποσοστό υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA).(Διάγραμμα 4.8.2) Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, ο επεξεργαστής Xeon3040 έχει τον μικρότερο αριθμό των Hosts που απενεργοποιούνται κατά τη διάρκεια της εκτέλεσης του πειράματος.(διάγραμμα 4.8.5) 50

Διάγραμμα 4.8.1: Παράδειγμα LrrMc / Κατανάλωση Ενέργειας Διάγραμμα 4.8.2: Παράδειγμα LrrMc / υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) 51

Διάγραμμα 4.8.3: Παράδειγμα LrrMc / Μέσος Χρόνος πριν την απενεργοποίηση ενός Host Διάγραμμα 4.8.4: Παράδειγμα LrrMc / χρόνος συμφωνημένης παρεχόμενης υπηρεσίες ανά host(sla) 52

Διάγραμμα 4.8.5: Παράδειγμα LrrMc / αριθμός των Hosts που απενεργοποιούνται 4.9 Πολιτική LrrMmt Γίνεται προσομοίωση σε ένα ετερογενές κέντρο δεδομένων στο οποίο εφαρμόζεται ο αλγόριθμος πρόβλεψης υπερφόρτωσης Local Regression Robust σε συνδυασμό με την πολιτική Minimum Migration Time για την επιλογή του VM που θα μεταναστεύσει σε άλλον Host. Ορίσαμε σταθερό αριθμό των Hosts=50. Επιπλέον για κάθε ένα από τους συνδυασμούς επεξεργαστών, διατηρούμε σταθερούς τους cores των host και ορίζουμε την ram στις τιμές 4GB ή 8GB αντίστοιχα. Έπειτα σε συνέχεια της εκτέλεσης του πειράματος, διατηρούμε σταθερούς τους cores των host και ορίζουμε τους cores σε 2 ή 4 και εξάγαμε τα παρακάτω συμπεράσματα. Συμπεράσματα LrrMmt Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, μειώνεται η κατανάλωση ενέργειας και ο αριθμός των Hosts που απενεργοποιούνται κατά τη διάρκεια της εκτέλεσης του πειράματος.(διάγραμμα 4.9.1 και Διάγραμμα 4.9.5) 53

Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, μειώνεται το ποσοστό υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) και ο Μέσος Χρόνος πριν την απενεργοποίηση ενός Host.(Διάγραμμα 4.9.2 και Διάγραμμα 4.9.3) Διατηρώντας σταθερή την τιμή της μνήμης Ram, αυξάνοντας τους πυρήνες των Hosts, ο συνδυασμός επεξεργαστών Xeon 3040 & Xeon3075 έχει τη μεγαλύτερη κατανάλωση ενέργειας και το μεγαλύτερο μέσο χρόνο πριν απενεργοποίηση ενός Host.(Διάγραμμα 4.9.1 και Διάγραμμα 4.9.3) Η αποκλίσεις των αποτελεσμάτων των πολιτικών LrrMc και LrrMmt για όλα τα σενάρια είναι ελάχιστες. Διάγραμμα 4.9.1: Παράδειγμα LrrMmt / Κατανάλωση Ενέργειας 54

Διάγραμμα 4.8.2: Παράδειγμα LrrMmt / υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) Διάγραμμα 4.8.3: Παράδειγμα LrrMmt / Μέσος Χρόνος πριν την απενεργοποίηση ενός Host 55

Διάγραμμα 4.8.4: Παράδειγμα LrrMmt / χρόνος συμφωνημένης παρεχόμενης υπηρεσίες ανά host(sla) Διάγραμμα 4.8.5: Παράδειγμα LrrMmt / αριθμός των Hosts που απενεργοποιούνται 56

4.10 Σύγκριση Πολιτικών Η κατανάλωση ενέργειας εξαρτάται σε μεγάλο βαθμό από το μέγεθος της μνήμης RAM. Στην πολιτική DVFS, η κατανάλωση ενέργειας είναι μικρότερη για 8GB RAM σε σχέση με 4 GB RAM.(Διάγραμμα 4.10.1) Βελτίωση των αποτελεσμάτων παρουσιάστηκαν στο σενάριο που διατηρούσαμε τη μνήμα RAM σταθερή και αυξάναμε τους πυρήνες παρά όταν γινόταν το αντίστροφο. Μικρότερη κατανάλωση ενέργειας παρουσιάζει ο επεξεργαστής Xeon X3470 για οποιαδήποτε πολιτική.(διάγραμμα 4.10.1) Μεγαλύτερο αριθμό των Hosts που απενεργοποιούνται κατά τη διάρκεια της εκτέλεσης του πειράματος παρουσιάζουν οι πολιτικές MadMc, Madmmt και IqrMmt με τον επεξεργαστή Xeon 3075 να έχει τη μεγαλύτερη τιμή.(διάγραμμα 4.10.3 και Διάγραμμα 4.10.4) Οι πολιτικές lrmc, MadMc, IqrMc και LrrMc κρατάνε τους Hosts ενεργοποιημένους για μεγαλύτερο χρονικό διάστημα με τον επεξεργαστή Xeon X3470 να έχει τις μεγαλύτερες τιμές. Οι πολιτικές LrMc, LrMmt, LrrMc και LrrMmt προσφέρουν μεγαλύτερο μέσο χρόνο πριν την απενεργοποίηση ενός Host αλλά έχουν και το μεγαλύτερο ποσοστό υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA), με τον επεξεργαστή Xeon 3040 να έχει τις μεγαλύτερες τιμές.(διάγραμμα 4.10.5) Τέλος οι πολιτικές LrMc, LrMmt, LrrMc και LrrMmt έχουν τις μικρότερες τιμές μεταναστεύσεων εικονικών μηχανών με τους επεξεργαστές Xeon 3075 και Xeon X3470 να έχουν τις μεγαλύτερες τιμές.(διάγραμμα 4.10.9 και Διάγραμμα 4.10.10) 57

Διάγραμμα 4.10.1 Κατανάλωση Ενέργειας όλων των πολιτικών για cores = 2 Διάγραμμα 4.10.2 Κατανάλωση Ενέργειας όλων των πολιτικών για cores = 4 58

Διάγραμμα 4.10.3 αριθμός των Hosts που απενεργοποιούνται για cores =2 Διάγραμμα 4.10.4 αριθμός των Hosts που απενεργοποιούνται για cores =4 59

Διάγραμμα 4.10.5 υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) για cores=2 Διάγραμμα 4.10.6 υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) για cores=4 60

Διάγραμμα 4.10.7 Μέση τιμή υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) για cores=2 Διάγραμμα 4.10.8 Μέση τιμή υπέρβασης της συμφωνημένης παρεχόμενης υπηρεσίας ανά Host(SLA) για cores=4 61

Διάγραμμα 4.10.9 Αριθμός Μεταναστεύσεων όλων των πολιτικών για cores = 2 Διάγραμμα 4.10.10 Αριθμός Μεταναστεύσεων όλων των πολιτικών για cores = 4 62

4. ΣΥΜΠΕΡΑΣΜΑΤΑ - ΣΥΝΟΨΗ Σκοπός της παρούσης διπλωματικής είναι μια προσπάθεια κατανόησης του όρου υπολογιστικό νέφος, των υπηρεσιών του, των εφαρμογών του, των παρόχων του, καθώς και των βασικών χαρακτηριστικών του. Επιπρόσθετα, διαπιστώσαμε τη πολύτιμη συμβολή των προσομοιωτών μέσω του εργαλείου Cloudsim για την αναπαράσταση του υπολογιστικού νέφους και των εννέα πολιτικών που υπάρχουν ενσωματωμένες στο πακέτο αυτό. Τα στατιστικά στοιχεία των πειραμάτων και η ερμηνεία των αποτελεσμάτων τους, βοηθούν έτσι ώστε να κατανοήσουμε τις πολιτικές αυτές, να ελέγξουμε τα πλεονεκτήματα και τα μειονεκτήματά τους έτσι ώστε να χρησιμοποιήσουμε την βέλτιστη αναλόγως με το στόχο που θέλουμε να επιτύχουμε. Μέσα από την προσομοίωση αντιλαμβανόμαστε ότι μπορούμε να χρησιμοποιούμε το υπολογιστικό νέφος και να επωφεληθούμε σε μεγάλο βαθμό, σε διάφορους τομείς από αυτό. 63

ΒΙΒΛΙΟΓΡΑΦΙΑ 1. A. J. Staring, G. K., <[12] Cloud Computing Models and their Application in LTE based Cellular Systems.pdf>. 2013. 2. Rahimi, M. R.; Ren, J.; Liu, C. H.; Vasilakos, A. V.; Venkatasubramanian, N., Mobile Cloud Computing: A Survey, State of Art and Future Directions. Mobile Networks and Applications 2014, 19 (2), 133-143. 3. Akherfi, K.; Gerndt, M.; Harroud, H., Mobile cloud computing for computation offloading: Issues and challenges. Applied Computing and Informatics 2016. 4. Duan, Q., Cloud service performance evaluation: Status, challenges, and opportunities A survey from the system modeling perspective. Digital Communications and Networks 2016. 5. A. Oredope, K. M., C. Peoples, G. Parr, <[4] Deploying Cloud Services in Mobile Networks.pdf>. In Science and Information Conference London, UK 2013. 6. Dinh, H. T.; Lee, C.; Niyato, D.; Wang, P., A survey of mobile cloud computing: architecture, applications, and approaches. Wireless Communications and Mobile Computing 2013, 13 (18), 1587-1611. 7. Felicia LOBILLO, Z. B., Miguel Angel PUENTE, Pavel MACH, Francesco LO PRESTI, Fabrizio GAMBETTI, Mariana GOLDHAMER, Josep VIDAL, Anggoro K. WIDIAWAN, Emilio CALVANESSE <[16] An architecture for mobile computation offloading on cloud-enabled LTE small cells.pdf>. 2014. 8. Hongbin Liang, L. X. C., Dijiang Huang, Xuemin (Sherman) Shen, Daiyuan Peng, <[17] An SMDP-Based Service Model for Interdomain Resource Allocation in Mobile Cloud Networks.pdf>. 2012. 9. Lin, B. P.; Wen-Hsiang, T.; Wu, C. C.; Hsu, P. H.; Huang, J. Y.; Tsai-Hwa, L., The Design of Cloud-Based 4G/LTE for Mobile Augmented Reality with Smart Mobile Devices. 2013, 561-566. 10. Stergiou, C.; Psannis, K. E.; Kim, B.-G.; Gupta, B., Secure integration of IoT and Cloud Computing. Future Generation Computer Systems 2018, 78, 964-975. 11. Dharma P. Agrawal, B. B. G., Shingo Yamaguchi, Konstantinos E. Psannis, Recent Advances in Mobile Cloud Computing. Hindawi Publishing Corporation 2018, 2018. 12. Georgios Karagiannis, A. J., Keith Briggs, Morteza Karimzadeh, Carlos Parada, Marius Iulian Corici, Tarik Taleb, Andy Edmonds, Thomas Michael Bohnert <[6] Mobility and Bandwidth prediction in virtualized LTE systems - architecture and challenges.pdf>. 2014. 13. Kitanov, S.; Janevski, T., State of the Art: Mobile Cloud Computing. 2014, 153-158. 14. Guo, B.; Cao, W.; Tao, A.; Samardzija, D., LTE/LTE-A signal compression on the CPRI interface. Bell Labs Technical Journal 2013, 18 (2), 117-133. 15. Suruchee V.Nandgaonkar; Raut, P. A. B., A Comprehensive Study on Cloud Computing. International Journal of Computer Science and Mobile Computing 2014, 3 (4). 16. Karamjeet Kaur, S. S., Mayank Arora, Mobile Cloud Computing Techniques: A Review. International Journal of Advanced Research in Computer Engineering & Technology (IJARCET) 2014, 3 (4). 64

17. Saeid Abolfazli, Z. S., Ejaz Ahmed, Abdullah Gani, Rajkumar Buyya, <[19] Cloud-Based Augmentation for Mobile Devices- Motivation, Taxonomies, and Open Challenges.pdf>. 2014. 18. Hsieh, H.-C.; Chen, J.-L., Distributed multi-agent scheme support for service continuity in IMS-4G-Cloud networks. Computers & Electrical Engineering 2015, 42, 49-59. 19. Kaur, K., A Review of Cloud Computing Service Models. 2016. 20. Khan, A. U. R.; Othman, M.; Madani, S. A.; Khan, S. U., A Survey of Mobile Cloud Computing Application Models. IEEE Communications Surveys & Tutorials 2014, 16 (1), 393-413. 21. Kirui, R. <[1] Accessing Cloud Computing Resources over 4G LTE.pdf>. Thesis, 2014. 22. Branch, R.; Tjeerdsma, H.; Wilson, C.; Hurley, R.; McConnell, S., Cloud Computing and Big Data: A Review of Current Service Models and Hardware Perspectives. Journal of Software Engineering and Applications 2014, 07 (08), 686-693. 23. H. Howell Barber; Jame P. Lawler; Anthony Joseph; Keke Gai; Steenkamp, A. L., A Feasibility Study of Platform-as-a-Service Using Cloud Computing for a Global Service Organization,A Study of Cloud Computing Infrastructure-as-a-Service (IaaS) in Financial Firms. Journal of Information Systems Applied Research(JISAR) 2014, 7 (3). 24. Ojala, A.; Helander, N. In Value Creation and Evolution of a Value Network: A Longitudinal Case Study on a Platform-as-a-Service Provider, 2014 47th Hawaii International Conference on System Sciences, 6-9 Jan. 2014; 2014; pp 975-984. 25. Johansson, B.; Ruivo, P., Exploring Factors for Adopting ERP as SaaS. Procedia Technology 2013, 9, 94-99. 26. Rong, C.; Nguyen, S. T.; Jaatun, M. G., Beyond lightning: A survey on security challenges in cloud computing. Computers & Electrical Engineering 2013, 39 (1), 47-54. 27. Fernandes, D. A. B.; Soares, L. F. B.; Gomes, J. V.; Freire, M. M.; Inácio, P. R. M., Security issues in cloud environments: a survey. International Journal of Information Security 2014, 13 (2), 113-170. 28. Khalil, I.; Khreishah, A.; Azeem, M., Cloud Computing Security: A Survey. Computers 2014, 3 (1), 1-35. 29. Xu, L.; Jiang, C.; Wang, J.; Yuan, J.; Ren, Y., Information Security in Big Data: Privacy and Data Mining. IEEE Access 2014, 2, 1149-1176. 30. G.Kalpana, P. V. K., R.V.Krishnaiah, A brief Survey on Security Issues in Cloud and its service models. 2015. 31. Almorsy, M. G., John; Müller, Ingo, An Analysis of the Cloud Computing Security Problem. 2016. 32. Chen, Z.; Dong, W.; Li, H.; Zhang, P.; Chen, X.; Cao, J., Collaborative network security in multi-tenant data center for cloud computing. Tsinghua Science and Technology 2014, 19 (1), 82-94. 33. Sun, Y.; Zhang, J.; Xiong, Y.; Zhu, G., Data Security and Privacy in Cloud Computing. International Journal of Distributed Sensor Networks 2014, 10 (7), 190903. 65

34. Stergiou, C.; Psannis, K. E., Algorithms for Big Data in Advanced Communication Systems and Cloud Computing. 2017, 196-201. 35. Sajid Umair, M. N. Z., Asad W. Malik, Umair Muneer, Mobile Cloud Computing Future Trends and Opportunities. 2016. 36. Siddiqui Mohammad Saad, P. S. C. N., Energy Efficient Mobile Cloud Computing. International Journal of Computer Science and Information Technologies 2014, 5 (6), 7837-7840. 37. Siddiqui Mohammad Saad, P. S. C. N., Time Based Application Model for Mobile Cloud Computing. International Journal of Computer Science and Information Technologies 2014, 5 (3), 2960-2962. 38. Lee, K.; Shin, I., User Mobility Model Based Computation Offloading Decision for Mobile Cloud. Journal of Computing Science and Engineering 2015, 9 (3), 155-162. 39. Gaj, P.; Kwiecień, A.; Stera, P., Mobile Offloading Framework: Solution for Optimizing Mobile Applications Using Cloud Computing. 2015, 522. 40. Mehmi, S.; Verma, H. K.; Sangal, A. L., Simulation modeling of cloud computing for smart grid using CloudSim. Journal of Electrical Systems and Information Technology 2017, 4 (1), 159-172. 41. Calheiros, R. N.; Ranjan, R.; Beloglazov, A.; De Rose, C. A. F.; Buyya, R., CloudSim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms. Software: Practice and Experience 2011, 41 (1), 23-50. 42. Chowdhury, M. R.; Mahmud, M. R.; Rahman, R. M., Implementation and performance analysis of various VM placement strategies in CloudSim. Journal of Cloud Computing 2015, 4 (1), 20. 43. Guérout, T.; Monteil, T.; Da Costa, G.; Neves Calheiros, R.; Buyya, R.; Alexandru, M., Energy-aware simulation with DVFS. Simulation Modelling Practice and Theory 2013, 39, 76-91. 44. Neha Roy, R. J., Virtual Machine Scheduling on Clouds Using DVFS. 2015, 5 (5). 66

ΠΑΡΑΡΤΗΜΑ Α-ΠΗΓΙΑΙΟΣ ΚΩΔΙΚΑΣ ΠΟΛΙΤΙΚΩΝ Αρχείο Dvfs.java (Πηγή: http://www.cloudbus.org/cloudsim/) 67

Αρχείο LrMc.java (Πηγή: http://www.cloudbus.org/cloudsim/) 68

Αρχείο LrMmt.java (Πηγή: http://www.cloudbus.org/cloudsim/) 69

Αρχείο MadMc.java (Πηγή: http://www.cloudbus.org/cloudsim/) 70

Αρχείο MadMmt.java (Πηγή: http://www.cloudbus.org/cloudsim/) 71

Αρχείο IqrMc.java (Πηγή: http://www.cloudbus.org/cloudsim/) 72

Αρχείο IqrMmt.java (Πηγή: http://www.cloudbus.org/cloudsim/) 73

Αρχείο LrrMc.java (Πηγή: http://www.cloudbus.org/cloudsim/) 74

Αρχείο LrrMmt.java (Πηγή: http://www.cloudbus.org/cloudsim/) 75

ΠΑΡΑΡΤΗΜΑ B-ΠΑΡΑΜΕΤΡΟΠΟΙΗΣΗ ΠΕΙΡΑΜΑΤΟΣ Αρχείο Constants.java (Πηγή: http://www.cloudbus.org/cloudsim/) 76

Αρχείο RandomConstants.java (Πηγή: http://www.cloudbus.org/cloudsim/) 77