Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ανατολικής Μακεδονίας και Θράκης. Πτυχιακή Εργασία. Ανάπτυξη Εικονικών Υπολογιστικών Συστημάτων. Αραμπίδης Κλημέντιος



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

Server Virtualization ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ

Εικονικοποίηση. Αρχιτεκτονική Υπολογιστών 5ο Εξάμηνο,

Εικονικοποίηση. Λειτουργικά Συστήματα Υπολογιστών 7ο Εξάμηνο,

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

Αρχιτεκτονική Υπολογιστών

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

Information Technology for Business

Μελέτη σχεδίασης και υλοποίησης εικονικοποίησης περιβάλλοντος εργασίας με τεχνικές υπολογιστικού νέφους και έμφαση σε κινητές συσκευές

Αρχιτεκτονική Υπολογιστών

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

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

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

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

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

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

Μάθημα 2 ο : Υποδομή Πληροφοριακών Συστημάτων Διοίκησης

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΕΙΣΑΓΩΓΗ

Πληροφορίες. Εισαγωγή στην Πληροφορική. Κατηγορίες υλισµικού. Περίληψη µαθήµατος (συνέχεια) Επεξεργαστής Μνήµη. Χειµερινό Εξάµηνο

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

Κεφάλαιο 4: Λογισμικό Συστήματος

Κεφάλαιο 4. Διδακτικοί Στόχοι. Για την αναγκαιότητα, τον τρόπο συνεργασίας, τις δυνατότητες και τον τρόπο εγκατάστασης των περιφερειακών συσκευών.

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

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

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

Κεφάλαιο 3 Λειτουργικά Συστήματα Β ΕΠΑΛ

ΓΕΝΙΚΗ ΠΕΡΙΓΡΑΦΗ ΕΡΓΟΥ

Ιστορική Αναδρομή Λειτουργικών Συστημάτων (ΛΣ) Εισαγωγή : ο πυρήνας (kernel) / ο φλοιός (shell) Β ΕΠΑΛ

Λιβανός Γιώργος Εξάμηνο 2017Β

STORAGE AREA NETWORK. Σπουδαστές: Δόση Νικολέτα Καρακούση Πελαγία 30/5/2014 1

Μάθημα 1 ο ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΤΩΝ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

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

Μάθημα 2 ο : Υποδομή Πληροφοριακών Συστημάτων Διοίκησης

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

Κεφάλαιο 4 Λογισμικό συστήματος. Εφαρμογές Πληροφορικής Κεφ.4 Καραμαούνας Πολύκαρπος 1

ΑΠΟΤΕΛΕΣΜΑΤΑ ΔΙΑΒΟΥΛΕΥΣΗΣ. Προκήρυξη Διαγωνισμού για την «Προμήθεια Εξοπλισμού Κόμβου Μηχανικής Μάθησης» /

Μάθημα 10 ο ΔΙΑΧΕΙΡΙΣΗ ΕΙΣΟΔΟΥ ΕΞΟΔΟΥ (INPUT/OUTPUT)

Κεφάλαιο 1.6: Συσκευές αποθήκευσης

Oλοκληρωμένες λύσεις Πληροφορικής και Τηλεπικοινωνιών στην υπηρεσία της Ναυτιλίας

ΛΟΓΙΣΜΙΚΟ (software)

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

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

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού

Symantec Backup Exec System Recovery 7.0 Server Edition. Πλήρης Επαναφορά Συστημάτων Windows Μέσα σε Λίγα Λεπτά και όχι σε Ώρες ή Ημέρες

Λειτουργικά Συστήματα (Λ/Σ)

Κεφάλαιο 1ο Πολυπρογραμματισμός Πολυδιεργασία Κατηγορίες Λειτουργικών Συστημάτων

Λειτουργικά Συστήματα Η/Υ

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

Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο

Λειτουργικά Συστήματα Ι. Κεφάλαιο 1 Βασικές Έννοιες Λειτουργικών Συστημάτων

Examination of cloud systems security from virtualization perspective

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

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

ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΥΠΟΛΟΓΙΣΤΩΝ. Σημειώσεις Θεωρίας

ΕΠΛ425 : Τεχνολογίες Διαδικτύου Εργαστήρια

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

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

Συστήματα Πληροφοριών Διοίκησης Ενότητα 3: Τεχνολογία υπολογιστικών συστημάτων

Ενότητα 3 - Θέματα Εφαρμοσμένης Επιστήμης Υπολογιστών. Κοντογιάννης Βασίλειος ΠΕ19

ΑΠΟΤΕΛΕΣΜΑΤΑ ΙΑΒΟΥΛΕΥΣΗΣ (Το έντυπο αποστέλλεται στην ΕΥ ΕΠ ΨΣ)

Linux Terminal Server Project

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

H CISCO ανακοινώνει νέα τεχνολογία για τις Εταιρείες Λιανικής

ΠΡΟΒΛΗΜΑ ΕΠΕΓΕΡΓΑΣΙΑ. (Είναι οι σκέψεις και οι πράξεις που κάνουμε για να λυθεί το πρόβλημα) ΕΙΣΟΔΟΥ - ΕΞΟΔΟΥ

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

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΟΡΓΑΝΩΣΗ Η/Υ

Αρχιτεκτονική Η/Υ Το chipset ενός υπολογιστικού συστήματος. Δρ. Μηνάς Δασυγένης

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

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

Πληροφορική ΙΙ Εισαγωγή στις Βάσεις Δεδομένων. Τμήμα Λογιστικής

Επικοινωνία Client/Server

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Α Γενικού Λυκείου (Μάθημα Επιλογής)

Λειτουργικά Συστήματα (διαχείριση επεξεργαστή, μνήμης και Ε/Ε)

Οόρος«thin» 13η Συνάντηση Εκπαιδευτικών Πληροφορικής. Thinclients 2/4. Υπολογιστικό μοντέλο Thinclients 1/4. Τεχνολογία Τhinclient Edubuntu LTSP

Τι είναι ένα λειτουργικό σύστημα (ΛΣ); Μια άλλη απεικόνιση. Το Λειτουργικό Σύστημα ως μέρος του υπολογιστή

Τμήμα του εθνικού οδικού δικτύου (Αττική οδός)

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 5ο ΚΕΦΑΛΑΙΟ

ΜΑΘΗΜΑ 3 ΛΟΓΙΣΜΙΚΟ (SOFTWARE)

Καθιστώντας τις επιχειρήσεις στην Ελλάδα Ready Business

Κεφάλαιο 5Β (επανάληψη) Εισαγωγή στην Πληροφορική. Τυπικοί χρόνοι πρόσβασης. Μέσος χρόνος πρόσβασης. Ταχύτητα µεταφοράς δεδοµένων

Αρχιτεκτονική Λογισμικού

Λ.Σ. και Ασφάλεια Πληροφοριακών Συστημάτων

Μάθημα 3: Αρχιτεκτονική Υπολογιστών

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

Κάντε κλικ για έναρξη

Το λειτουργικό σύστημα. Προγραμματισμός II 1

ΚΕΦΑΛΑΙΟ 2 - ΛΟΓΙΣΜΙΚΟ

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

Δίκτυα Υπολογιστών Firewalls. Χάρης Μανιφάβας

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

Εργαλεία ανάπτυξης εφαρμογών internet Ι

Κ Α Λ Ε Ι. ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Καβάλα ΥΠΟΥΡΓΕΙΟ ΥΓΕΙΑΣ & ΚΟΙΝΩΝΙΚΗΣ

Εισαγωγή στην Αρχιτεκτονική Η/Υ

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

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Ηλεκτρονικό Εμπόριο

Γεωγραφικά Συστήµατα Πληροφοριών και Αρχές Τηλεπισκόπησης

Κεφάλαιο 2.4: Εργασία με εικονίδια

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

Επιχειρησιακά Πληροφοριακά Συστήματα. Site: Στόχος Σκοπός μαθήματος

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

Transcript:

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ανατολικής Μακεδονίας και Θράκης Πτυχιακή Εργασία Ανάπτυξη Εικονικών Υπολογιστικών Συστημάτων Αραμπίδης Κλημέντιος Γαβρίδης Υρήστος Επιβλέπων καθηγητής : Μαρδύρης Βασίλειος Σελίδα 1

ΠΕΡΙΕΧΟΜΕΝΑ 1. ΕΙΣΑΓΩΓΗ... 4 1.1 Mainframe Virtualization...4 1.2 Η ανάγκη για x86 Virtualization... 4 1.3 Προβλήματα στο παρελθόν... 6 1.4 Αντικείμενο πτυχιακής εργασίας...7 1.5 Τ ύποι Εικονικοποίησης...7 1.5.1 Εικονικοποίηση Αποθήκευσης... 8 1.5.2 Εικονικοποίηση Δικτύου...11 1.5.3 Εικονικοποίηση Διακομιστών... 12 2. Virtualization... 13 2.1 Ορισμός Server Virtualization...13 2.2 Πως λειτουργεί το Server Virtualization...16 2.3 Ορισμός Virtual Machine... 16 2.4 Πλεονεκτήματα Εικονικών Μηχανών...18 2.5 Αρχιτεκτονικές x86 Server Virtualization...19 2.5.1 Μοντέλο Virtual Machine...19 2.5.2 Μοντέλο Paravirtual Machine...20 2.5.3 Virtualization σε επίπεδο λειτουργικού συστήματος... 21 2.6 Περιγράφοντας τον υπερόπτη(hypervisor)...27 2.7 Ασφάλεια σε εικονικοποιημένα περιβάλλοντα... 37 2.8 Εικονικοποίηση εφαρμογών (Application Virtualization)... 39 2.9 Εικονικοποίηση επιφάνειας εργασίας (Desktop Virtualization)...42 2.9.1 Εικονικ. desktop από πλευρά διακομιστή... 43 2.9.2 Εικονικ. desktop από πλευρά πελάτη...45 2.9.3 Τεχνολογία VDI... 45 2.9.5 Οφέλη εικονικ. desktop... 52 3. Υπολογιστικό νέφος (Cloud computing)... 53 Σελίδα 2

3.1 Τι είναι το υπολογιστικό νέφος...54 3.1.1 Ιστορία υπολογιστικού νέφους... 54 3.1.2 Το μοντέλο NIST... 56 3.1.3 Πολλαπλή μίσθωση...57 3.1.4 Πλαίσιο SPI...58 3.1.5 Σχετικές τεχνολογίες...60 3.2 Μοντέλα υπηρεσιών νέφους...60 3.2.1 Λογισμικό ως υπηρεσία (SaaS)...61 3.2.2 Η πλατφόρμα ως υπηρεσία (PaaS)... 62 3.2.3 Η υποδομή ως υπηρεσία (laas)...64 3.3 Μοντέλα ανάπτυξης νέφους...65 3.3.1 Δημόσιο νέφος... 65 3.3.2 Κοινοτικό νέφος... 67 3.3.3 Ιδιωτικό νέφος... 68 3.3.4 Υβριδικό νέφος... 70 3.3.5 Πρωτοκολλά επικοινωνίας...71 3.4 Ασφάλεια στο νέφος...72 3.4.1 Κατανοώντας την ασφάλεια/κίνδυνους...72 3.4.2 Στόχοι ασφάλειας πληροφοριών... 73 3.4.3 Υπηρεσίες ασφάλειας στο νέφος... 76 3.5 Οφέλη υπολογιστικού νέφους... 77 4. Υλοποίηση Πρωτοτύπου... 80 5. Επίλογος...140 6. Πινάκας εικόνων...142 7. Βιβλιογραφία... 143 Σελίδα 3

1. Εισαγωγή 1.1. Mainframe Virtualization Τα τελευταία χρόνια, η εικονικοποίηση έχει αλλάξει τον τρόπο που βλέπουμε την πληροφορική. Αντί να χρησιμοποιούμε πολλά διαφορετικά συστήματα υπολογιστών για διάφορες εργασίες, με την εικονικοποίηση μπορούμε να χρησιμοποιήσουμε ένα ενιαίο σύστημα για να φιλοξενήσουμε πολλές εφαρμογές και να έχουμε κεντρική διαχείριση. Η εικονικοποίηση αποτελεί τον προπομπό της δυνατότητας μεταφοράς του εικονικοποιημένου περιβάλλοντος στο cloud. Έχοντας τους διακομιστές μας σε εικονική μορφή αποκτάμε την δυνατότητα μεταφοράς τους στο νέφος. Ένα cloud μπορεί να βρίσκεται μέσα στις εγκαταστάσεις ενός οργανισμού και να εξυπηρετεί ανάγκες του. Στην συνέχεια της εργασίας μας θα δούμε πως μέσω ενός ιδιωτικού νέφους, το λογισμικό μοιράζεται σε σταθμούς εργασίας και φορητές συσκευές με την μορφή υπηρεσίας (μέσω ενός περιηγητή-browser) καθώς επίσης και εικονικές επιφάνειες εργασίας για κάλυψη αναγκών σε σταθμούς εργασίας. Το Virtualization υλοποιήθηκε πριν από 30 χρόνια αρχικά από την IBM σαν μία μέθοδος για τον λογικό διαμερισμό των mainframe υπολογιστών σε ξεχωριστούς virtual υπολογιστές (virtual machines). Αυτά τα διαμερίσματα (partitions) επέτρεπαν στα mainframes το multitask (να εκτελούν πολλαπλές εφαρμογές και διεργασίες παράλληλα). Δεδομένου ότι τα mainframes ήταν ακριβοί πόροι εκείνη την εποχή, σχεδιάστηκαν έτσι ώστε να διαμερίζονται, προκειμένου να αντισταθμίζουν πλήρως την οικονομική επένδυση. 1.2. Η ανάγκη για x86 Virtualization Το Virtualization εγκαταλείφθηκε στη διάρκεια των δεκαετιών 1980 και 1990 όταν οι client-server εφαρμογές, οι χαμηλού κόστους x86 εξυπηρετητές και σταθμοί εργασίας, καθιέρωσαν το μοντέλο της κατανεμημένης επεξεργασίας (distributed computing). Αντί της από κοινού χρήσης πόρων Σελίδα 4

κεντρικά, σύμφωνα με το mainframe μοντέλο, οι οργανισμοί χρησιμοποίησαν το χαμηλό κόστος των κατανεμημένων συστημάτων για να δημιουργήσουν «νησίδες» επεξεργαστικής ισχύος. Η ευρεία υιοθέτηση των Microsoft Windows και η ανάδειξη του Linux σαν server operating systems στην δεκαετία του 1990, καθιέρωσαν τους x86 servers ως πρότυπο για την βιομηχανία (industry standard). Η ανάπτυξη στην γρήγορη και εύκολη διάθεση (deployment) των x86 servers και desktops έχει εισάγει νέες προκλήσεις στην IT υποδομή και τις λειτουργίες. Σε αυτές τις προκλήσεις συγκαταλέγονται τα παρακάτω: Περιορισμένη Αξιοποίηση Υποδοκήο Η συνήθης ανάπτυξη των x86 servers επιτυγχάνει μέση χρήση της τάξης του μόνο 10-15% επί της συνολικής χωρητικότητας, σύμφωνα με το International Data Corporation (IDC), μια εταιρεία έρευνας αγορών. Οι οργανισμοί συνήθως εκτελούν μία εφαρμογή ανά εξυπηρετητή προκειμένου να αποφύγουν τον κίνδυνο τα ευπαθή σημεία μίας εφαρμογής να επηρεάσουν την διαθεσιμότητα μιας άλλης εφαρμογής στον ίδιο server. Αυξημένο Κόστος Φυσικήο Υποδοκήο Το λειτουργικό κόστος για την υποστήριξη της αυξανόμενης φυσικής υποδομής μεγαλώνει σταθερά. Το μεγαλύτερο μέρος της υποδομής υπολογιστών πρέπει να παραμένει σε λειτουργία συνεχώς, οδηγώντας σε κατανάλωση ισχύος, ανάγκες ψύξης και κόστος εγκαταστάσεων που δεν μεταβάλλονται σύμφωνα με το βαθμό χρήσης. Αυξανόμενο Κόστος Διαρείρισηο του IT Καθώς τα περιβάλλοντα των υπολογιστών γίνονται περισσότερο σύνθετα, έχει αυξηθεί το επίπεδο εξειδικευμένης εκπαίδευσης και εμπειρίας που απαιτείται από το προσωπικό διαχείρισης της υποδομής, καθώς επίσης το σχετιζόμενο κόστος. Οι οργανισμοί δαπανούν δυσανάλογο χρόνο και πόρους σε χειρονακτικές εργασίες που σχετίζονται με την συντήρηση των εξυπηρετητών, και επομένως απαιτείται περισσότερο προσωπικό για να εκτελέσει αυτές τις εργασίες. Ανεπαρκής Μετάπτωση και Προστασία από Καταστροφές Οι οργανισμοί επηρεάζονται αυξανόμενα από την διακοπή λειτουργίας(downt/'me) κρίσιμων εφαρμογών υπηρεσιών και την αδυναμία πρόσβασης κρίσιμων τελικών χρηστών σε σταθμούς εργασίας. Η απειλή των επιθέσεων στην ασφάλεια, η απειλή των φυσικών καταστροφών, των επιδημιών και της τρομοκρατίας έχει αυξήσει τη σημαντικότητα του σχεδιασμού για τη διατήρηση της ομαλής λειτουργίας του οργανισμού (business continuity planning) τόσο για τους σταθμούς εργασίας όσο και για τους εξυπηρετητές. Έντονη Συντήρηση των Σταθκών Εργασίας τελικών ρρηστών Η διαχείριση και η ασφάλιση των σταθμών εργασίας των οργανισμών παρουσιάζει πολυάριθμες προκλήσεις. Ο έλεγχος ενός περιβάλλοντος με διεσπαρμένους σταθμούς εργασίας (desktops) και η επιβολή πολιτικής διαχείρισης, πρόσβασης και ασφάλειας χωρίς να εξασθενεί η δυνατότητα Σελίδα 5

των χρηστών να δουλεύουν με αποδοτικό τρόπο είναι πολύπλοκη και δαπανηρή. Πολυάριθμες διορθώσεις {patches) και αναβαθμίσεις πρέπει να εφαρμόζονται συνεχώς στα περιβάλλοντα υπολογιστών γραφείου προκειμένου να εξαλείψουν τα ευπαθή σημεία στην ασφάλεια. Το Σχήμα 1 δείχνει την αύξηση στον πληθυσμό των συστημάτων x86 αρχιτεκτονικής τα τελευταία χρόνια, σε συνδυασμό με την ιδιαίτερα περιορισμένη αξιοποίησή τους. Dramatic increases in dedicated, under-utilized IT assets Management of servers is costly and complex Inflexibility makes it hard to meet business needs Σχήμα 1. Συσχέτιση αύξησης αριθμού εξυπηρετητών & βαθμού αξιοποίησής τους [1] 1.3. Προβλήματα στο παρελθόν Προκλήσεις & Εμπόδια στο x86 Virtualization Αντίθετα με τα mainframes, τα x86 συστήματα δεν σχεδιάστηκαν για να υποστηρίζουν πλήρως το Virtualization, και η κοινωνία της πληροφορικής είχε να ξεπεράσει ισχυρές προκλήσεις για να δημιουργήσει virtual machines βασισμένα σε x86 υπολογιστές. Η βασική λειτουργία των περισσότερων Κεντρικών Μονάδων Επεξεργασίας {CPUs), τόσο στα mainframes όσο και στα PCs, είναι να εκτελούν μια ακολουθία αποθηκευμένων οδηγιών {π.χ., ένα πακέτο λογισμικού). Στους x86 επεξεργαστές, υπάρχουν 17 συγκεκριμένες οδηγίες που δημιουργούν προβλήματα όταν γίνονται ιδεατές {virtualize), προκαλώντας το λειτουργικό σύστημα να εμφανίσει μια προειδοποίηση, να τερματίσει την εφαρμογή, ή απλά να καταρρεύσει. Σαν αποτέλεσμα, αυτές οι 17 οδηγίες αποτελούσαν ένα σημαντικό εμπόδιο στην αρχική υλοποίηση του Virtualization σε x86 υπολογιστές. Για τον χειρισμό των προβληματικών οδηγιών στην αρχιτεκτονική των x86 υπολογιστών, οι κατασκευαστές λογισμικού Virtualization ανέπτυξαν μια Σελίδα 6

τεχνική προσαρμογής, η οποία «παγιδεύει» αυτές τις οδηγίες κατά την δημιουργία τους και τις μετατρέπει σε ασφαλείς οδηγίες που μπορούν να γίνουν ιδεατές, ενώ παράλληλα επιτρέπει σε όλες τις άλλες οδηγίες να εκτελούνται χωρίς καμία παρέμβαση. Το αποτέλεσμα είναι ένα υψηλής απόδοσης virtual machine που συνδυάζεται αρμονικά με το hardware του εξυπηρετητή (host) και διατηρεί πλήρη συμβατότητα λογισμικού. 1.4.Αντικείμενο της πτυχιακής εργασίας Σκοπός της πτυχιακής εργασίας είναι να εισάγει τον αναγνώστη σε έννοιες όπως η εικονικοποίηση και το cloud computing. Συγκρίνει τις βασικές πλατφόρμες εικονικοποίησης, αναδεικνύοντας τα πλεονεκτήματα και μειονεκτήματα της καθεμιάς ώστε να δίνεται η δυνατότητα μιας καλά πληροφορημένης απόφασης κατά την επιλογή τους. Παρουσιάζει τα άμεσα οφέλη που προσφέρει η υιοθέτηση της εικονικοποίησης σε έναν οργανισμό ( Εκπαιδευτικά Ιδρύματα, Εταιρίες και Δημόσιους Οργανισμούς ), διερευνά τα οφέλη που προσφέρει η εικονικοποίηση του Desktop με χρήση τεχνολογίας cloud και παρουσιάζει μια λύση που μπορεί να προσφέρει λογισμικό ως υπηρεσία και εικονικές επιφάνειες εργασίας σε οποιεσδήποτε συσκευές έχουν αυτήν την δυνατότητα. Με την ανάπτυξη αυτών των λύσεων η έννοια του κινητού εργαζόμενου (mobile worker ) αποκτά νέο νόημα. 1.5. Τύποι Εικονικοποίησης Παρόλο τον "θόρυβο" που υπάρχει γύρω από την εικονικοποίηση τα τελευταία χρόνια, η εικονικοποίηση δεν είναι μια καινούρια τεχνολογική καινοτομία, όπως είδαμε και σε προηγούμενη ενότητα. Υπάρχουν τέσσερις κύριοι λόγοι που αποτέλεσαν τους οδηγούς για την μετακίνηση της εικονικοποίησης από τους κεντρικούς υπολογιστές (mainframes) στα σημερινά υπολογιστικά περιβάλλοντα. Η έλλειψη δυνατότητας εκμετάλλευσης του αχρησιμοποίητου (unutilized) υλικού. Η μεγάλη αύξηση του φυσικού χώρου που απαιτεί η εξάπλωση των κέντρων δεδομένων. Η ολοένα και μεγαλύτερη ζήτηση ενέργειας σε σχέση με την αντίστοιχη αύξηση σε κόστος απόκτησης της. Η αύξηση του κόστους διαχείρισης των πληροφοριακών συστημάτων. Εξετάζοντας αυτούς τους τέσσερις βασικούς λόγους, καταλαβαίνουμε γιατί η εικονικοποίηση είναι πολύ σημαντική. Ο πιο διαδεδομένος τύπος εικονικοποίησης είναι η εικονικοποίηση πλατφόρμας (platform virtualization). Λέγοντας εικονικοποίηση πλατφόρμας εννοούμε αυτό που επιτρέπει, την εικονικοποίηση διακομιστών και επιφάνειας εργασίας. Ωστόσο περάν από την εικονικοποίηση πλατφόρμας, οι ΙΤ οργανισμοί χρησιμοποιούν και άλλου τύπους εικονικοποίησης, σε άλλους τομείς για να καλύψουν και άλλες ανάγκες που υπάρχουν. Μπορούμε λοιπόν να συνοψίσουμε τους τύπους στους ακόλουθους: Εικονικοποίηση Αποθήκευσης (Storage Virtualization) Εικονικοποίηση Δικτύου (Network Virtualization) Σελίδα 7

Εικονικοποίηση Διακομιστών (Server Virtualization) Εικονικοποίηση Εφαρμογών (Application Virtualization) Εικονικοποίηση Επιφάνειας Εργασίας (Desktop Virtualization) Στις ενότητες που ακολουθούν θα παρουσιαστούν αναλυτικότερα τα παραπάνω ειδή εικονικοποίησης [1] 1.5.1 Εικονικοποίηση Αποθήκευσης Με τον όρο εικονικοποίηση αποθήκευσης εννοείται η λογική παρουσίαση φυσικών πολλαπλών αποθηκευτικών συσκευών. Η τεχνολογία RAID άνοιξε νέες προοπτικές στην εικονοποίηση της αποθήκευσης αλλά η διαχείριση εκατοντάδων gigabyte ακόμη και terabyte αποθηκευτικού χώρου αποδεικνύεται προβληματική. Η τεχνολογία RAID δίνει τη δυνατότητα να ρυθμίσουμε δύο ή παραπάνω φυσικούς δίσκους να εμφανίζονται ως ένας λογικός δίσκος. Για το λειτουργικό σύστημα, η παρουσίαση φυσικών δίσκων ως ένας λογικός δίσκος αποτελεί μία απλή λύση εικονικοποιημένης αποθήκευσης. Το 2θ0ΐ, η Ένωση Βιομηχανίας Δικτυακής Αποθήκευσης (SNIA- Storage Networking Industry Association) προσπάθησε να αναπτύξει ένα συνεπή, και ευρέως αποδεκτό ορισμό του όρου εικονικοποίηση. Αυτό έγινε προκειμένου να δοθεί στους καταναλωτές (τελικοί χρήστες) και στους παραγωγούς (κατασκευαστές) της αποθήκευσης κοινό έδαφος πάνω στο οποίο να συζητήσουν και να αναπτύξουν το θέμα. Ο ορισμός SNIA έχει ως εξής: 1. Η πράξη της αφαίρεσης, απόκρυψης, ή απομόνωσης των εσωτερικών λειτουργιών των (υπό) συστημάτων ή υπηρεσιών αποθήκευσης από τις εφαρμογές, υπολογιστές, ή από τους δικτυακούς πόρους, με σκοπό τη δυνατότητα διαχείρισης της αποθήκευσης δεδομένων ανεξάρτητα από το δίκτυο και από εφαρμογές. 2. Η εφαρμογή της εικονικοποίησης σε υπηρεσίες αποθήκευσης ή συσκευές για τον σκοπό της συγκέντρωσης λειτουργιών ή συσκευών, που κρύβουν την πολυπλοκότητα, ή προσθέτουν νέες δυνατότητες για τη μείωση του επιπέδου των πόρων αποθήκευσης. Ο ορισμός μπορεί να ονομαστεί και «αφαιρετική λεπτομέρεια». Αυτή είναι και η ουσία της εικονικοποίησης. Η εικονικοποίηση προσφέρει μία απλή και σταθερή διεπαφή για περίπλοκες λειτουργίες. Στην πραγματικότητα η ανάγκη για κατανόηση από πλευράς του χρήστη γνώσεων της υποκείμενης πολυπλοκότητας είναι μικρή έως αδιάφορη. Σε μία προηγούμενη προσπάθειά του το τεχνικό συμβούλιο του SNIA δημιούργησε ένα σημαντικό έγγραφο, το "Μοιραζόμενο Μοντέλο Αποθήκευσης". Ο σκοπός αυτού του μοντέλου ήταν να εκπαιδεύσει τους τελικούς χρήστες εξηγώντας πώς η διαστρωμάτωση της τεχνολογίας στις σύγχρονες αρχιτεκτονικές αποθήκευσης δημιουργεί ένα πλήρες φάσμα από λειτουργίες αποθήκευσης. [1] Σελίδα 8

Σχήμα 2. Το μοιραζόμενο μοντέλο αποθήκευσης της SNIA Στο σχήμα 2 αποτυπώνεται το υψηλότερο επίπεδο του κοινού μοντέλου αποθήκευσης τοπ SNIA. Διαθέτει ηξεης κύριες συνιστώσες ζτο πεδίο εφαρμογής της: Το αρχείο / στρώμα εγγραφής, το οποίο περιλαμβάνει βάσεις δεδομένων και συστήματα αρχειοθέτησης. Το στρώμα μπλοκ, το οποίο περιλαμβάνει τόσο χαμηλού επιπέδου συσκευές αποθήκευσης όσο και σύνθεση που βασίζεται σε λογική μπλοκ. Ένα υποσύστημα υπηρεσιών, το οποίο παρέχει λειτουργίες όπως η διαχείριση των άλλων μερών του συστήματος. Η εικονικοποίηση μπορεί να βρίσκεται στο επίπεδο του κεντρικού υπολογιστή, σε συστοιχίες αποθήκευσης, ή στο δίκτυο, μέσω οπτικών μεταγωγών ή συσκευών εγκατεστημένων πάνω σε κεντρικά συστήματα αποθήκευσης (SAN). Η εικονικοποίηση μπορεί να υλοποιηθεί μέσω του διαχωρισμού των ελέγχων και των διόδων δεδομένων σε εντός και εκτός ζώνης. Η εικονικοποίηση της αποθήκευσης παρέχει τα μέσα για τη δημιουργία υψηλού επιπέδου υπηρεσιών αποθήκευσης που κρύβουν την πολυπλοκότητα όλων των εμπλεκόμενων μερών και επιτρέπουν την αυτοματοποίηση της αποθήκευσης δεδομένων. Ο απώτερος στόχος της εικονικοποίησης της αποθήκευσης πρέπει να είναι η απλοποίηση της διαχείρισης. Αυτό μπορεί να επιτευχθεί με μια πολυεπίπεδη προσέγγιση, ενώνοντας πολλαπλά τεχνολογικά επίπεδα στο πλαίσιο της λογικής αφαίρεσης. Αποκρύπτοντας την πολυπλοκότητα των φυσικών/υλικών στοιχείων αποθήκευσης και φανερώνοντας μια απλουστευμένη και λογική άποψη της αποθήκευσης είναι ένα πρώτο βήμα προς τον εξορθολογισμό της διαχείρισης αποθήκευσης. Η αντιμετώπιση πολλαπλών φυσικών δίσκων ή συστοιχιών ως μία ενιαία λογική οντότητα διαχωρίζει τον χρήστη της αποθηκευτικής μονάδας από τα φυσικά χαρακτηριστικά των υλικών στοιχείων (δίσκοι), συμπεριλαμβανομένης της φυσικής θέσης και των απαιτήσεων που έχουν αυτές οι φυσικές συσκευές. Αν και ένα στρώμα της πολυπλοκότητας έχει αντιμετωπιστεί, η λογική αφαίρεση της φυσικής αποθήκευσης από μόνη της δεν άρει το βάρος της απαιτητικής εργασίας από τους διαχειριστές αποθήκευσης. Πλέον των διαφορών για το που βρίσκεται η εικονική νοημοσύνη, οι κατασκευαστές έχουν αναπτύξει διαφορετικές μεθόδους για την υλοποίηση στη μεταφορά της εικονικοποιημένης αποθήκευσης. Η μέθοδος "εντός ζώνης" (In-band) τοποθετεί την μηχανή της εικονικοποίησης στη δίοδο των δεδομένων, έτσι ώστε τόσο τα μπλοκ δεδομένων όσο και οι πληροφορίες Σελίδα 9

ελέγχου που διέπουν τη εικονική παρουσία να μεταφέρονται πάνω από τον ίδιο σύνδεσμο. Η μέθοδος "εκτός ζώνης" (out of band) παρέχει ξεχωριστές διαδρομές για τα δεδομένα και τον έλεγχο, δίνοντας την εικόνα εικονικής αποθήκευσης στον οικοδεσπότη μέσα από ένα σύνδεσμο και επιτρέποντάς του να ανακτήσει απευθείας μπλοκ δεδομένων που βρίσκονται στη φυσική αποθήκευση ενός άλλου οικοδεσπότη. Οι τεχνικές εικονικοποίησης εντός και εκτός ζώνης μερικές φορές αναφέρονται ως συμμετρικές και ασύμμετρες αντίστοιχα, αλλά για χάρη της ακρίβειας και την απλούστευση του λεξιλογίου της εικονικοποίησης, στο κείμενο αυτό οι όροι ενοποιούνται ως ορολογία. [2] Σχήμα 3. Εντός και εκτός ζώνης τεχνικές εικονικοποίησης Η απλούστευση στη διαχείριση αποθηκευτικών χώρων και μέσων μέσω της τεχνολογίας εικονικοποίησης έχει πολλές πτυχές. Μεταξύ αυτών διακρίνουμε τη συγκέντρωση διαχείρισης, τον εξορθολογισμό των διαδικασιών για τη δημιουργία αντιγράφων ασφαλείας σε ταινία, την εδραίωση των πλεονεκτημάτων αποθήκευσης, την ενίσχυση της χρησιμοποίησης του παραγωγικού δυναμικού και των πόρων, την εξασφάλιση της ακεραιότητας των δεδομένων μέσω λήψης στιγμιότυπων (snapshots), κλπ. Τα παραπάνω δεν αποτελούν στην πραγματικότητα χαρακτηριστικά της εικονικοποίησης αποθήκευσης, αλλά τα οφέλη που προκύπτουν από τη χρήση της. Για παράδειγμα, η ενοποίηση των συστημάτων αποθήκευσης, είναι εξ ορισμού ενεργή σε μία κεντρική αποθηκευτική μονάδα (SAN) μέσω δικτύωσης. Στα συστήματα όπου υπάρχει μόνο μία μεγάλη συστοιχία δίσκων η εικονικοποίηση δεν μπορεί να συμβάλλει σημαντικά στην ευκολία χρήσης. Εάν υπάρχουν πολλαπλές συστοιχίες δίσκων, και ιδίως συστοιχίες από διάφορους προμηθευτές κεντρικών αποθηκευτικών μονάδων SAN, η εικονικοποίηση αποθήκευσης μπορεί να βοηθήσει ουσιαστικά στον εξορθολογισμό της διαχείρισης με την άθροιση των στοιχείων αποθήκευσης σε μια κοινή πισίνα. Οι κατασκευαστές συνήθως υπογραμμίζουν τα πολλά οφέλη της εικονικοποιημένης αποθήκευσης, και στη συνέχεια επικεντρώνονται στη δημιουργία αντιγράφων ασφαλείας, στιγμιότυπων, και ούτω καθεξής. [2] Οφέλη της εικονικοποίησης αποθήκευσης Σελίδα 10

Την αποθήκευση δεδομένων σε πιο βολικές τοποθεσίες μακριά από οποιοδήποτε οικοδεσπότη. Σε περίπτωση βλάβης ηοπ οικοδεσπότη, ηα δεδομένα δεν βρίσκονται απαραίτητα σε κίνδυνο. Την εκτέλεση προηγμένων λειτουργιών όπως η απαλοιφή του θορύβου στα δεδομένα, η αναπαραγωγή, η παρουσίαση περισσότερων φυσικών συσκευών από ότι στην πραγματικότητα υπάρχουν (thin provisioning), και η λειτουργία ανάκτησης δεδομένων από καταστροφή. Η αφαιρετική αντιμετώπιση της αποθήκευσης καθιστά τις λειτουργίες του ΙΤ πιο ευέλικτες όσο αφορά στον τρόπο με τον οποίο αυτή κατανέμεται, διατίθεται και προστατεύεται. [2] 1.5.2 Εικονικοποίηση Δικτύου Η εικονικοποίηση δικτύου είναι μια μέθοδος που χρησιμοποιείται για τον συνδυασμό πόρων του δικτύου υπολογιστών σε μία ενιαία πλατφόρμα, που είναι γνωστή με την ονομασία εικονικό δίκτυο (Virtual network). Αυτό επιτυγχάνεται με την βοήθεια λογισμικού και υπηρεσιών που επιτρέπουν την κοινή χρήση δικτυακών πόρων. Η τεχνολογία αυτή χρησιμοποιεί μία μέθοδο παρόμοια με τη διαδικασία εικονικοποίησης που χρησιμοποιείται για την προσομοίωση εικονικών μηχανών μέσα σε φυσικούς υπολογιστές. Ένα εικονικό δίκτυο θεωρεί όλο το υλικό και το λογισμικό στο δίκτυο ως μια ενιαία συλλογή πόρων, η οποία μπορεί να προσεγγιστεί ανεξάρτητα από τα φυσικά όρια του. Με άλλα λόγια η εικονικοποίηση δικτύου επιτρέπει σε κάθε εξουσιοδοτημένο χρήστη να μοιραστεί δικτυακούς πόρους από ένα μόνο υπολογιστή. Τα εικονικά δίκτυα χωρίζονται σε δύο μεγάλες κατηγορίες : - Τα εξωτερικά εικονικά δίκτυα - Τα εσωτερικά εικονικά δίκτυα Εξωτερικά εικονικά δίκτυα Τα εξωτερικά εικονικά δίκτυα αποτελούνται από ένα ή περισσότερα τοπικά δίκτυα τα οποία συνδυάζονται ή υποδιαιρούνται σε εικονικά δίκτυα, με στόχο τη βελτίωση της αποτελεσματικότητας ενός μεγαλύτερου δικτύου ή κέντρου δεδομένων. Τα βασικά στοιχεία ενός εξωτερικού εικονικού δικτύου, είναι τα εικονικά δίκτυα (VLANs) και οι μεταγωγής δικτύου (switchs). Με την χρήση των VLAN και της τεχνολογίας μεταγωγέων, ο διαχειριστής, μπορεί να διαμορφώσει συστήματα τα οποία είναι συνδεδεμένα με φυσικό τρόπο στο ίδιο τοπικό δίκτυο, έτσι ώστε να ανήκουν σε διαφορετικά μεταξύ τους εικονικά δίκτυα.[3] Εσωτερικά εικονικά δίκτυα Η εσωτερική εικονικοποίηση δικτύου παρέχει ολόκληρο το σύστημα διαμοιρασμού καθώς και άλλες λειτουργίες του δικτύου στους περιέκτες Σελίδα 11

{containers) λογισμικού, οι οποίοι λειτουργούν σε φιλόξενα περιβάλλοντα για τα στοιχεία του λογισμικού του δικτύου σε ένα μοναδικό φυσικό σύστημα. Οι ωθέλειερ τηρ εικονικοποίησηρ δικτύου περιλαμβάνουν: Προσανατολισμός στην παροχή υπηρεσιών: Καθώς κάθε επιχειρηματική υπηρεσία προστίθεται στην ΙΤ υποδομή, κάποια τμήματα αυτής της υποδομής είναι διαμοιραζόμενοι (shared) πόροι και κάποια άλλα είναι αποκλειστικής λειτουργίας (dedicated) πόροι. Για παράδειγμα, οι μεταγωγείς δικτύου θεωρούνται διαμοιραζόμενοι πόροι, και η ρύθμιση παραμέτρων ενός VLAN μπορεί να είναι ένας πόρος αποκλειστικής λειτουργίας πάνω σε ένα διαμοιραζόμενο μεταγωγέα. Καλύτερη διαχείριση αλλαγών: Η εικονικοποίηση βελτιώνει τη διαχείριση αλλαγών χωρίζοντας λειτουργίες σε πολλές περιοχές. Αλλαγές στις ρυθμίσεις παραμέτρων εντός μιας εικονικοποιημένης περιοχής δεν θα επηρεάσουν άλλη περιοχή, κάνοντας έτσι ευκολότερη την έγκριση των αλλαγών. Μείωση Κόστους : Το κόστος τοποθέτησης και συντήρησης δικτυακού εξοπλισμού είναι μεγάλο, και μπορούμε να κάνουμε εξοικονόμηση χρημάτων με το μοίρασμα τοίχων προστασίας, μεταγωγέων και εξισορροπιστών φορτίου (load balancers) μεταξύ των διαφόρων υπηρεσιών, αντί να αγοράζουμε νέο εξοπλισμό κάθε φορά. Ασφάλεια : Επειδή τα συστήματα είναι λογικά χωρισμένα, πολλά θέματα ασφάλειας και κίνδυνοι μπορούν εύκολα να αντιμετωπιστούν. Θέματα όπως ο περιορισμός πρόσβασης και ο περιορισμός γνώσης είναι ευκολότερα διαχειρίσιμα. 1.5.3 Εικονικοποίηση διακομιστών Όπως αναφέραμε και στην αρχή της ενότητας, ένας από τους πιο σπουδαίους τύπους εικονικοποίησης με την μεγαλύτερη εφαρμογή, είναι η εικονικοποίηση διακομιστών. Οι ΙΤ οργανισμοί επιδιώκουν με κάθε τρόπο την εικονικοποίηση των διακομιστών τους προσπαθώντας με αυτό τον τρόπο να μειώσουν το κόστος ενέργειας-ψύξης, την έλλειψη χώρου που προκαλεί η εξάπλωση των "farms και την καλύτερη διαχείριση του υλικού τους. Στην εικονικοποίηση διακομιστών ένας φυσικός διακομιστής μετατρέπετε σε έναν εικονικό. [3] Ο όρος φυσικός διακομιστής αναφέρεται στο υλικό που πραγματοποιεί την υπολογιστική επεξεργασία που επιβάλλεται από το λογισμικό, όπως το λειτουργικό σύστημα και οι εφαρμογές. Ένας εικονικός διακομιστής δεν μπορεί να λειτουργήσει χωρίς έναν φυσικό. Με την εικονικοποίηση διακομιστών μπορούμε πολλούς φυσικούς διακομιστές να τους μετατρέψουμε σε εικονικούς και να τους τοποθετήσουμε σε ένα φυσικό διακομιστή ο οποίος ονομάζεται και οικοδεσπότης (host). Αντίθετα οι εικονικοί διακομιστές ονομάζονται φιλοξενούμενοι (guests). Στην εικόνα που ακολουθεί διακρίνεται η διαφορά της παραδοσιακής αρχιτεκτονικής διακομιστή από αυτή του εικονικού διακομιστή.[3] Σελίδα 12

Σχήμα 4. Παραδοσιακή Αρχιτεκτονική έναντι Εικονικής Όπως φαίνεται και στην εικόνα και οι δύο αρχιτεκτονικές αποτελούνται από έναν φυσικό διακομιστή στον οποίο το λογισμικό, ένα λειτουργικό σύστημα (OS) και οι εφαρμογές έχουν εγκατασταθεί στην κορυφή. Ωστόσο, η εγκατάσταση λειτουργικών συστημάτων και εφαρμογών σε παραδοσιακή αρχιτεκτονική διακομιστών είναι πολύ ευάλωτη στις αλλαγές ή τις βλάβες στο στρώμα του υλικού. Οποιαδήποτε αλλαγή στην διαμόρφωση του υλικού ή αστοχία του υλικού, συνήθως προκαλεί δυσλειτουργία στο λειτουργικό σύστημα με αποτέλεσμα εάν το υλικό που θα επιδιορθωθεί δεν είναι το ίδιο θα χρειαστεί επανεγκατάσταση του λειτουργικού και των εφαρμογών. Με την εικονικοποίηση διακομιστών, ένα στρώμα εικονικοποίησης τοποθετείτε μεταξύ του υλικού και του λειτουργικού συστήματος. Αυτό το στρώμα εικονικοποίησης καθιστά δυνατή την εγκατάσταση πολλαπλών αντιτύπων λειτουργικών συστημάτων και εφαρμογών στο φυσικό διακομιστή. Κάθε σύνολο του λειτουργικού συστήματος και των εφαρμογών λειτουργεί παρόμοια με την παραδοσιακή αρχιτεκτονική του διακομιστή, με τη διαφορά της λειτουργίας πολλαπλών εμφανίσεων σε ένα φυσικό διακομιστή αντί για μία μόνο εμφάνιση. Επιπλέον, αυτό το στρώμα εικονικοποίησης απομονώνει το κάθε σύνολο από το άλλο, το οποίο το καθιστά ανεπηρέαστο από βλάβες ή μεταβολές στο υλικό ή σε κάποιο άλλο από τα σύνολα. Όλα αυτά τα στιγμιότυπα πιστεύουν ότι είναι μοναδικά για το φυσικό μηχάνημα. Αυτά τα στιγμιότυπα ονομάζονται εικονικές μηχανές {Virtual Machines). Αρχικά η Popek and Goldberg όρισαν την εικονική μηχανή, ως ένα αποδοτικό, απομονωμένο αντίγραφο μιας πραγματικής μηχανής. Μια πραγματική μηχανή αναφέρεται σε μια παραδοσιακή αρχιτεκτονική διακομιστή με ένα μόνο λειτουργικό σύστημα και εφαρμογών. Ωστόσο, η χρήση των εικονικών μηχανών με εικονικοποίηση διακομιστών πηγαίνει πέρα από την επανάληψη μιας πραγματικής μηχανής. Τόσο για την εικονική μηχανή όσο και για το στρώμα της εικονικοποίησης που αναφέραμε παραπάνω, το οποίο μάλιστα αποτελεί και την τεχνολογία κλειδί για την εικονικοποίηση θα ασχοληθούμε αναλυτικότερα σε παρακάτω ενότητα. [3] Σελίδα 13

2. Virtualization 2.1. Ορισμός Server Virtualization Τί είναι το Server Virtualization, Το Server Virtualization είναι ένα πλαίσιο, μεθοδολογία ή τεχνική που επιτυγχάνει τον διαμερισμό των φυσικών πόρων ενός υπολογιστή σε πολλαπλά περιβάλλοντα εκτέλεσης, εφαρμόζοντας μία ή περισσότερες τεχνολογίες όπως διαμερισμό σε επίπεδο υλικού ή σε επίπεδο λογισμικού, διαμερισμό σε επίπεδο χρόνου, μερική ή ολική προσομοίωση μηχανής, εξομοίωση, ποιότητα υπηρεσιών κ.α. Είναι η μέθοδος εκτέλεσης πολλαπλών ανεξάρτητων ιδεατών λειτουργικών συστημάτων σε έναν φυσικό υπολογιστή. Είναι η απόκρυψη των φυσικών υπολογιστικών πόρων, συμπεριλαμβανομένων του αριθμού και της ταυτότητας των μεμονωμένων φυσικών εξυπηρετητών, επεξεργαστών και λειτουργικών συστημάτων από τους χρήστες του «ιδεατού» εξυπηρετητή. Το Virtualization, είναι ο διαμερισμός ενός φυσικού συστήματος σε πολλαπλά απομονωμένα μεταξύ τους εικονικά περιβάλλοντα. Τα εικονικά αυτά περιβάλλοντα συνήθως ονομάζονται virtual private servers, αλλά μπορεί κανείς να τα συναντήσει και με το όνομα partitions, guests, instances, containers ή emulations ή virtual machines. Είναι ένα αφαιρετικό ενδιάμεσο στρώμα που επιτρέπει σε πολλαπλά ιδεατά μηχανήματα, με ετερογενή λειτουργικά συστήματα να λειτουργούν το καθένα ξεχωριστά μέσα σε ένα απομονωμένο περιβάλλον, το ένα δίπλα στο άλλο, πάνω στο ίδιο φυσικό μηχάνημα. Το Virtualization είναι μια δοκιμασμένη τεχνολογία λογισμικού που μετατρέπει ραγδαία το τοπίο στο IT και αλλάζει τον τρόπο με τον οποίο χρησιμοποιούμε τους υπολογιστές. Οι σημερινοί πολύ ισχυροί x86 υπολογιστές σχεδιάστηκαν αρχικά για να «τρέχουν» ένα μόνο λειτουργικό σύστημα και μία μόνο εφαρμογή. Το Virtualization καταργεί αυτή τη σύμβαση, κάνοντας εφικτό να εκτελούνται πολλαπλά λειτουργικά συστήματα και πολλαπλές εφαρμογές στον ίδιο υπολογιστή την ίδια χρονική στιγμή, αυξάνοντας έτσι την αξιοποίηση και την προσαρμοστικότητα των φυσικών πόρων. Το Virtualization είναι μια τεχνοτροπία από την οποία μπορούν να ωφεληθούν όλοι όσοι χρησιμοποιούν υπολογιστή, από τους επαγγελματίες της πληροφορικής και τους οπαδούς των Macintosh μέχρι τις εμπορικές επιχειρήσεις και τους κυβερνητικούς οργανισμούς. Χρησιμοποιώντας το Virtualization γίνεται εξοικονόμηση χρόνου, χρημάτων και ενέργειας ενώ παράλληλα δύναται να επιτευχθούν περισσότερα πράγματα με τους ήδη διαθέσιμους ηλεκτρονικούς υπολογιστές. [3] Σελίδα 14

Το Σχ. 2 παρουσιάζει μια γραφική απεικόνιση ενός λειτουργικού συστήματος και των εφαρμογών του μέσα σε ένα φυσικό μηχάνημα, σε αντίθεση με το ίδιο λειτουργικό σύστημα και τις εφαρμογές του μέσα σε ένα ιδεατό μηχάνημα. Σχήμα 5. Μορφή εξυπηρετητή πριν και μετά το Virtualization Το Σχ. 6 απεικονίζει την παρουσία πολλαπλών ιδεατών συστημάτων {vir-tual machines) μέσα σε ένα φυσικό σύστημα (physical server). To λογισμικό Virtualization που παρεμβάλλεται ανάμεσα στα ιδεατά μηχανήματα και τον φυσικό εξυπηρετητή είναι το «ESX Server» της εταιρείας VMware. Σελίδα 15

Σχήμα 6. Απεικόνιση του Server Virtualization [1] 2.2. Πώς λειτουργεί το Server Virtualization; Στην ουσία, το Virtualization μας επιτρέπει να μετατρέψουμε το hardware σε software. Μπορούμε να χρησιμοποιήσουμε λογισμικό, όπως το VMware ESXi Server, για να μετατρέψουμε ή αλλιώς να κάνουμε «virtual» τους φυσικούς πόρους ενός υπολογιστή, συμπεριλαμβανομένων των ΚΜΕ (CPU), Μνήμη (RAM), σκληρό δίσκο (hard disk) και ελεγκτή δικτύου (network controller), προκειμένου να δημιουργήσουμε ένα πλήρως λειτουργικό ιδεατό μηχάνημα (virtual machine) που μπορεί να «τρέχει» το δικό του λειτουργικό σύστημα και τις δικές του εφαρμογές ακριβώς όπως ένας «πραγματικός» υπολογιστής. Πολλαπλά virtual machines μπορούν να μοιράζονται τους φυσικούς πόρους χωρίς να επηρεάζουν το ένα το άλλο έτσι ώστε να μπορούμε με ασφάλεια να τρέξουμε πολλαπλά λειτουργικά συστήματα και εφαρμογές παράλληλα σε έναν υπολογιστή, μοιράζοντάς τον ουσιαστικά σε πολλούς ιδεατούς υπολογιστές (virtual machines), όπως φαίνεται και στο Σχ. 4. Σελίδα 16

Σχήμα 7. Απεικόνιση λειτουργικού συστήματος σε φυσικό και σε virtual εξυπηρετητή 2.3. Ορισμός Virtual Machine Τι είναι ένα Virtual Machine; Ένα Ιδεατό Μηχάνημα {Virtual Machine) είναι όπως ένα Φυσικό Μηχάνημα (Physical Machine), αλλά αντί για ηλεκτρονικά στοιχεία, αποτελείται από ένα σύνολο αρχείων λογισμικού. Κάθε virtual machine αντιπροσωπεύει ένα ολοκληρωμένο σύστημα με επεξεργαστές, μνήμη, υποδομή για δικτυακή επικοινωνία, αποθηκευτικό χώρο, και BIOS, όπως δείχνει και το Σχ. 5. Ένα ιδεατό μηχάνημα τρέχει ένα ξεχωριστό λειτουργικό σύστημα και αντίστοιχες εφαρμογές, χωρίς καμία τροποποίηση, όπως ένα φυσικός εξυπηρετητής {physical server). Η διαδικασία δημιουργίας ενός νέου server (server provisioning) είναι παρόμοια με την αντιγραφή ενός αρχείου. Το server migration γίνεται παρόμοιο με το data migration, δηλαδή οι τεχνικές διαχείρισης δεδομένων μπορούν να χρησιμοποιηθούν για την διαχείριση του server.[12] Σχήμα 8. Ανατομία ιδεατού μηχανήματος Το «Ιδεατό Μηχάνημα» {«Virtual Machine» ή «VM») είναι ένα περιβάλλον ή λειτουργικό σύστημα, που δεν είναι φυσικά υπαρκτό αλλά δημιουργείται μέσα σε ένα άλλο περιβάλλον. Σε αυτά τα πλαίσια, ένα VM ονομάζεται «guest» ενώ το περιβάλλον μέσα στο οποίο εκτελείται λέγεται «host». Τα virtual machines δημιουργούνται για να εκτελέσουν ένα σύνολο εντολών {instruction set) διαφορετικό από αυτό του περιβάλλοντος μέσα στο οποίο φιλοξενούνται {host). Ένα host περιβάλλον μπορεί να εκτελεί πολλά virtual machines ταυτόχρονα. Καθώς τα VMs διαχωρίζονται από τους φυσικούς πόρους που χρησιμοποιούν, το host περιβάλλον έχει τη δυνατότητα να αναθέτει δυναμικά αυτούς τους πόρους μεταξύ των VMs. Σελίδα 17

Η φράση «Virtual Machine» χρησιμοποιείται συχνά για να αναφερθούμε στο Java runtime περιβάλλον της Sun Microsystems, το Java virtual machine (JVM), μέσα στο οποίο μεταφράζονται Java εντολές. Το JVM είναι ένα virtual machine στα πλαίσια του ότι εκτελεί κώδικα που έχει συνταχθεί ειδικά για αυτό, γνωστός ως bytecode, και για την εκτέλεση αποσπά μέρος των πόρων για αυτό τον κώδικα. Η γλώσσα προγραμματισμού Java δεν βασίζεται σε σύνολα οδηγιών εξειδικευμένα για κάθε πλατφόρμα (platform-specific instruction sets), όπως τα APIs που είναι εξειδικευμένα για κάποιο λειτουργικό σύστημα, για να παρουσιάσει κάποιο αποτέλεσμα ή για να έχει πρόσβαση σε πόρους όπως αρχεία. Αντίθετα, το JVM δημιουργεί ιδεατούς πόρους με την bytecode πρόσβαση. Αυτές οι ενέργειες μεταφέρονται στη συνέχεια στους πραγματικούς πόρους του συστήματος, για περαιτέρω επεξεργασία. Ένας user που αλληλοεπιδρά με έναν virtual host μπορεί να δει τον host σαν ένα physical machine με την έννοια ότι ο user έχει πρόσβαση σε πόρους όπως στον σκληρό δίσκο, την μνήμη, τον επεξεργαστή και τις δικτυακές συνδέσεις. Στην πραγματικότητα όμως, όλοι αυτοί οι πόροι του host είναι virtual (ιδεατοί). Για παράδειγμα, αντί να έχουν πρόσβαση σε έναν πραγματικό σκληρό δίσκο, ο χρήστης έχει πρόσβαση σε μία δομή του host περιβάλλοντος. Αυτή η δομή προσπελαύνει στη συνέχεια το πραγματικό δίσκο για να καταγράψει τα δεδομένα. Το Virtual Machine είναι ένα απομονωμένο πακέτο λογισμικού που μπορεί να τρέχει το δικό του OS (λειτουργικό σύστημα) και τις δικές του εφαρμογές σαν να ήταν ένα physical computer (φυσικός υπολογιστής).ένα virtual machine λειτουργεί ακριβώς όπως ένα physical computer και έχει τη δική του ιδεατή CPU, RAM, σκληρό δίσκο και κάρτα δικτύου τα οποία είναι βασισμένα σε λογισμικό. Ένα OS (λειτουργικό σύστημα) δεν μπορεί να καταλάβει τη διαφορά ανάμεσα σε ένα virtual και ένα physical machine, όπως επίσης δεν μπορούν να καταλάβουν τη διαφορά ούτε οι εφαρμογές, ούτε οι άλλοι υπολογιστές σε ένα δίκτυο. Ακόμα και το virtual machine νομίζει ότι είναι ένας «πραγματικός» υπολογιστής. Παρόλα αυτά, ένα virtual machine αποτελείται εξολοκλήρου από λογισμικό και δεν περιέχει υλικά μέρη η τμήματα. Αυτό έχει σαν αποτέλεσμα, τα virtual machine να προσφέρουν μία σειρά χαρακτηριστικών πλεονεκτημάτων ενάντιων των φυσικών συστημάτων. [12] 2.4.Πλεονεκτήματα Εικονικών Μηχανών Συμβατότητα Ακριβώς όπως ένας φυσικός υπολογιστής, οι εικονικές μηχανές είναι απολύτως συμβατές με όλους τους τυποποιημένους x86 υπολογιστές, λειτουργικά συστήματα, εφαρμογές και οδηγούς συσκευών, έτσι μπορούμε να χρησιμοποιήσουμε μια εικονική μηχανή για να τρέξουμε όλο το ίδιο λογισμικό που εκτελούσαμε σε έναν φυσικό x86 υπολογιστή. Απομόνωση Ενώ οι εικονικές μηχανές μπορούν να μοιραστούν τους φυσικούς πόρους ενός ενιαίου υπολογιστή, παραμένουν εντελώς απομονωμένες η μια από την άλλη σαν να ήταν χωριστές φυσικές μηχανές. Εάν, για παράδειγμα, υπάρχουν τέσσερις εικονικές μηχανές σε έναν ενιαίο φυσικό κεντρικό υπολογιστή και μια από τις εικονικές μηχανές παρουσιάσει οποιοδήποτε Σελίδα 18

πρόβλημα, οι άλλες τρεις εικονικές μηχανές παραμένουν διαθέσιμες. Η απομόνωση είλαι έλας σημαντικός ιόγνς για tov οποίο ε διαθεσιμότητα θαι ε ασφάλεια των εφαρμογών που τρέχουν σε ένα εικονικό περιβάλλον είναι σαφώς ανώτερες από τις εφαρμογές που τρέχουν σε ένα παραδοσιακό σύστημα. [12] Φορητότητα Οι εικονικές μηχανές είναι απίστευτα φορητές και εύκολες να διαχειριστούν. Παραδείγματος χάριν, μπορούμε να μετακινήσουμε και να αντιγράψουμε μια εικονική μηχανή από μια θέση σε μια άλλη ακριβώς όπως οποιαδήποτε άλλο αρχείο λογισμικού ή να σώσουμε μια εικονική μηχανή σε οποιοδήποτε τυποποιημένο μέσο αποθήκευσης, από μια κάρτα μνήμης USB μέχρι και σε κάποιο SAN {Storage area Network). Ανεξάρτητο υλικό. Οι εικονικές μηχανές είναι απολύτως ανεξάρτητες από το φυσικό υλικό τους. Για παράδειγμα, μπορείτε να διαμορφώσετε μια εικονική μηχανή με τα εικονικά συστατικά (π.χ. επεξεργαστή, κάρτα δικτύων, ελεγκτή SCSI) που να είναι απολύτως διαφορετικά από τα φυσικά συστατικά που είναι παρόντα στα εκάστοτε υλικά. Οι εικονικές μηχανές στον ίδιο φυσικό κεντρικό υπολογιστή μπορούν ακόμη και να τρέξουν διαφορετικά είδη λειτουργικών συστημάτων {Windows, Linux, κτλ). Όταν δε αυτό συνδυάζεται με τις ιδιότητες της φορητότητας και της συμβατότητας, η ανεξαρτησία υλικού σας δίνει την δυνατότητα να μεταφέρετε μια εικονική μηχανή από έναν τύπο x86 υπολογιστή προς άλλο χωρίς καμία απολύτως αλλαγή στους οδηγούς συσκευών, το λειτουργικό σύστημα, ή τις εφαρμογές. Η ανεξαρτησία υλικού επίσης σημαίνει ότι μπορούμε να τρέξουμε ένα ετερογενές μίγμα λειτουργικών συστημάτων και εφαρμογών σε έναν ενιαίο φυσικό υπολογιστή. [12] 2.5.Αρχιτεκτονικές x86 Server Virtualization Τρείς είναι οι ποιο δημοφιλείς προσεγγίσεις σε ότι έχει σχέση με το Server Virtualization: το virtual machine μοντέλο, το Paravirtual machine μοντέλο, και το Virtualization στο επίπεδο του λειτουργικού συστήματος. 2.5.1 Μοντέλο Virtual Machine Τα Virtual Machines βασίζονται στο πρότυπο host και guest. Ο κάθε guest τρέχει σε μια virtual μίμηση του επιπέδου hardware. Αυτή η τύπου προσέγγιση επιτρέπει τον guest του λειτουργικού συστήματος να εκτελείται χωρίς να γίνονται κάποιες τροποποιήσεις. Επίσης, επιτρέπει στους διαχειριστές να δημιουργούν guests που χρησιμοποιούν διαφορετικά OS. Ο guest δεν γνωρίζει την ύπαρξη του host Operation system διότι δεν ξέρει ότι δεν εκτελείται σε πραγματικό hardware. Παρόλα αυτά χρειάζεται πραγματικούς physical επεξεργαστικούς πόρους από τον host. Έτσι ώστε να χρησιμοποιεί έναν hypervisor ο οποίος θα κατευθύνει οργανωμένα τις οδηγίες εκτέλεσης προς τον επεξεργαστή. Σελίδα 19

Ο hypervisor, που συχνά είναι και γνώριμος και ως Virtualization ηοπορθγ,είναι ένα software που επιτρέπει σε πολλαπλά OS, τα οποία μπορεί να είναι διαφορετικά ή ίδια, να μοιράζονται τον ίδιο επεξεργαστή. Ένας hypervisor πρέπει να έχει σχεδιαστεί αποκλειστικά για μια συγκεκριμένη αρχιτεκτονική επεξεργαστή, όπως για παράδειγμα τον επεξεργαστή PowerPC ή τον x86 της Intel. Κάθε Os εμφανίζεται να έχει τον επεξεργαστή, την μνήμη και όλα τα άλλα recourses, αφιερωμένα εξολοκλήρου σε αυτό. O hypervisor είναι αυτός που έχει τον πλήρες έλεγχο του physical επεξεργαστή και τους πόρους του, και που διαθέτει ότι χρειάζεται στο κάθε OS για κάθε φορά. Ο hypervisor ονομάζεται και ως Virtual Machine MonitoΓ.Eλέγχει όλα τα Cp U instructions που έρχονται από τους guests και διαχειρίζεται τον κώδικα που εκτελείται και χρειάζεται επιπλέον δικαιώματα η προνόμια ( privileged commands). Τα λογισμικά πακέτα Virtualization VMware και Microsoft Virtual Server χρησιμοποιούν καθαρά και οι δυο τ το μοντέλο virtual machine.[12] Σχήμα 9. O Hypervisor Το Virtual Machine Monitor (VMM) είναι ένα software του host που επιτρέπει σε έναν υπολογιστή να υποστηρίξει, πολλά, πανομοιότυπα, περιβάλλοντα εκτέλεσης. Όλοι οι users βλέπουν τα συστήματά τους ως αυτοτελείς υπολογιστές, απομονωμένους από αυτούς των άλλων user, παρά το γεγονός ότι κάθε user εξυπηρετείται από το ίδιο machine. Σε αυτά τα πλαίσια, ένα virtual machine είναι ένα Operation system που ελέγχεται από ένα πρόγραμμα ελέγχου. Ένα καλό παράδειγμα είναι το VM/ESA της IBM δύναται να ελέγχει πολλαπλά virtual machines πάνω σε ένα σύστημα IBM S/390. Στον Microsoft Virtual Server 2005, το Virtual Machine Monitor είναι ένα proprietary όνομα για έναν οδηγό σε επίπεδο core (kernel mode driver) που λειτουργεί σαν firewall ανάμεσα στον host OS και τα virtual machines. Επίσης έχει τη δυνατότητα να εμποδίζει οποιοδήποτε πρόγραμμα, που τρέχει μέσα σε ένα από τα virtual machines, να υπερκατανάλωση τους πόρους του host OS. 2.5.2. Μοντέλο Paravirtual Machine Σελίδα 20

Το Paravirtual machine μοντέλο βασίζεται επίσης στο host/guest prototype και χρησιμοποιεί ένα virtual machine monitor. Στο Paravirtual machine μοντέλο, το Virtual Machine Monitor πρακτικά τροποποιεί τον κώδικα του guest λειτουργικού συστήματος. Αυτή η τροποποίηση λέγεται porting. Το porting βοηθάει το Virtual Machine Monitor ώστε να μπορεί να χρησιμοποιήσει privileged system calls με συνετή δαπάνη. Τα Paravirtual machines, όπως και τα virtual machines, μπορούν να εκτελούν πολλαπλά λειτουργικά συστήματα. Το Xen και το UML, χρησιμοποιούν και τα δύο το μοντέλο Paravirtual machine. Transparent paravirtualization Ο hypervisor δίνει την virtual αφαίρεση του υπολογιστικού συστήματος. Στο full Virtualization, ένα guest OS τρέχει χωρίς να γίνει καμία απολύτως τροποποίηση πάνω σε έναν hypervisor. Ωστόσο, υπάρχει καλύτερη επίδοση και αποδοτικότητα αν το guest OS επικοινωνεί με τον hypervisor. Επιτρέποντας στο guest OS (φιλοξενούμενο λειτουργικό σύστημα) να δείχνει την πρόθεσή του στον hypervisor, επιτυγχάνεται μακρόν μεγαλύτερη απόδοση όταν το OS τρέχει μέσα από ένα virtual machine. Αυτού του τύπου η επικοινωνία είναι γνωστή ι ως paravirtualization. Το 2005, η εταιρεία VMware πρότεινε interface paravirtualization, το Virtual Machine Interface (VMI), σαν έναν μηχανισμό communication ανάμεσα στο guest operation system και τον hypervisor. Αυτή η διεπαφή έδωσε την δυνατότητα για διάφανο paravirtualization στο οποίο μία μόνο δυαδική (binary) έκδοση του OS μπορεί να τρέχει είτε απευθείας στο hardware είτε σε έναν hypervisor σε paravirtualized μορφή. Το 2006, η VMware συνέχισε το έργο της στον τομέα paravirtualization δημιουργώντας το VMI specification σαν μια προδιαγραφή. Προκειμένου να ενισχύσει την αξιολόγηση της τεχνολογίας από την βιομηχανία. Η εταιρεία συνεχίζει την συνεργασία της με την κοινότητα του Linux για να αναπτύξει μιας διεπαφής paravirtualization που θα υποστηρίζει πολλαπλούς hypervisors. Μια πρόταση, με το όνομα paravirt-ops, υιοθετήθηκε από τους προγραμματιστές της IBM, της VMware, της Red Hat, και του XenSource. Αυτό το προτεινόμενο interface έχει ενσωματωμένες πολλές έννοιες του VMI συμπεριλαμβανομένης της υποστήριξης του διάφανου paravirtualization. Με τη χρήση αυτού του interface, ένα paravirtualized Linux λειτουργικό σύστημα θα είναι δυνατόν να «τρέχει» σε οποιονδήποτε hypervisor το υποστηρίζει. Η VMware προσθέτει υποστήριξη για paravirtualized λειτουργικά συστήματα, καθώς αυτά υιοθετούνται στις διανομές λειτουργικών συστημάτων στα προϊόντας τους.[1] 2.5.3. Virtualization σε επίπεδο λειτουργικού συστήματος Το Virtualization σε επίπεδο Operation system παρουσιάζει διαφορετικότητα. Δεν βασίζεται σε υπόδειγμα host/guest. όπως τα προηγούμενα μοντέλα. Στο μοντέλο Virtualization σε επίπεδο Operation system, ο host τρέχει έναν OS kernel ως πυρήνα και «εξάγει» τις λειτουργίες του operating system σε κάθε έναν από τους guests. Οι guests θα πρέπει να Σελίδα 21

τρέχουν το ίδιο OS με τον host, παρόλο που επιτρέπεται να είναι διαφορετικών εκδόσεων του ιδίου OS. Αυτή η διανεμημένη αρχιτεκτονική αφαιρεί την ανάγκη για system calls ανάμεσα στα διάφορα επίπεδα, προσέγγιση που μειώνει την επιπλέον επιβάρυνση στη χρήση του επεξεργαστή (CPU usage overhead). Επίσης όμως απαιτείται ότι κάθε partition παραμένει αυστηρά απομονωμένο από τα γειτονικά έτσι ώστε πιθανά failure ή παραβίαση στην ασφάλεια σε ένα partition να μην επηρεάζει κανένα από τα άλλα partitions. Σε αυτό το μοντέλο, κοινά binaries και libraries στο ίδιο physical machine μπορούν να χρησιμοποιηθούν από κοινού, επιτρέποντας σε έναν OS level virtual server να έχει υπό την φιλοξενία του χιλιάδες guests ταυτόχρονα. Το Virtuozzo και τα Solaris Zones χρησιμοποιούν OS-level Virtualization.[3] Χρήσεις Το Virtualization σε επίπεδο OS χρησιμοποιείται ευρέως σε virtual hosting περιβάλλοντα, όπου διευκολύνει την ανάθεση με ασφάλεια πεπερασμένων πόρων σε μεγάλο αριθμό user. Επίσης, χρησιμοποιείται, σε μικρότερο βαθμό, για τη συγχώνευση του server hardware διαμέσου της μετακίνησης υπηρεσιών από διαφορετικούς host, σε partitions μέσα σε έναν μόνο host.[3] Fat Client Ένας fat client ή thick client είναι ένας υπολογιστής που δεν απαιτεί σύνδεση σε ένα σύστημα server έτσι ώστε να τρέξει (σε αντίθεση με ένα thin client), αν και μπορούν να επωφεληθούν από τη σύνδεση με ένα δίκτυο η ένα διακομιστή. Οι fat clients που βρίσκονται συχνά στο επιχειρηματικό περιβάλλον, όπου οι server χρησιμοποιούνται για να παρέχουν κάποια στοιχεία και ζητήματα στήριξης, οι fat client είναι σε μεγάλο βαθμό ανεξάρτητοι. Οι Fat clients έχουν το δικό τους λειτουργικό σύστημα και λογισμικό εφαρμογών και μπορεί να χρησιμοποιηθεί εκτός σύνδεσης (δεν συνδέεται με δίκτυο ή διακομιστή). Οι Fat clients έχουν πολλά πλεονεκτήματα, όπως το οτι είναι σε θέση να χρησιμοποιηθούν offline, βελτίωση της απόδοσης για εφαρμογές πολυμέσων (συμπεριλαμβανομένων των βιντεοπαιχνιδιών), αυξημένη ευελιξία και μεγαλύτερη χωρητικότητα διακομιστή (λιγότερη από ένα φορτίο σε ένα fat εξυπηρετητή-πελάτη, επιτρέποντας την υποστήριξη περισσότερων χρηστών)[13] Lower server requirements. Ένα fat client δεν απαιτεί τόσο υψηλό επίπεδο απόδοσης, όπως ένα thin client (από το fat client να κάνουν οι Σελίδα 22

ίδιοι μεγάλο μέρος της επεξεργασίας της αίτησης). Αυτό οδηγεί σε δραστικά φθηνότερους διακομιστές Working offline. Fat clients έχουν πλεονεκτήματα σε σταθερή σύνδεση με τον κεντρικό διακομιστή συχνά να μην απαιτείται. Better multimedia performance. Οι Fat client s έχουν πλεονεκτήματα σε πολυμέσα πλούσια σε εφαρμογές που απαιτούν μεγάλο εύρος ζώνης, αν εξυπηρετούνται πλήρως. Για παράδειγμα, fat clients είναι κατάλληλα για βίντεο παιχνίδια. More flexibility. Σε ορισμένα λειτουργικά συστήματα είναι προϊόντα λογισμικού που έχουν σχεδιαστεί για προσωπικούς υπολογιστές που έχουν τους δικούς τους τοπικούς πόρους. Η εκτέλεση αυτού του λογισμικού σε ένα thin client μπορεί να είναι δύσκολη. Using existing infrastructure. Πολλοί άνθρωποι έχουν τώρα γρήγορους τοπικούς υπολογιστές, έχουν ήδη την υποδομή για να τρέξει ένας fat client χωρίς επιπλέον κόστος. [13] Higher server capacity. Όσο περισσότερο το έργο επιτελείται από τον πελάτη, τόσα λιγότερα πρέπει να κάνει ο διακομιστής, όπως την αύξηση του αριθμού των χρηστών που κάθε server μπορεί να υποστηρίξει. Thin Clients Το όνομα φαίνεται να προέρχεται από το γεγονός ότι το βασικό λειτουργικό σύστημα πυρήνα αυτής της συσκευής (για να αποκτήσετε πρόσβαση σε όλες τις συσκευές I / O, διαχείριση μνήμης και το χειρισμό όλων των διεργασιών) είναι ενσωματωμένο σε ένα μέγεθος όχι μεγαλύτερο από 32 MB, το οποίο είναι πραγματικά λεπτό{thin). Ένας άλλος λόγος μπορεί να είναι η πραγματικά κομψή εμφάνιση του, σχεδόν όλα τα ηλεκτρονικά βρίσκονται σε μια ενιαία πλαστική ή μεταλλική θήκη μεγέθους ενός βιβλίου. Αν συγκρίνετέ με το PC που είναι επίσης γνωστό ως Fat-client, είναι σχετικά μικρό εξαιτίας της απουσίας πολλών αξεσουάρ. Μια άλλη φιλοσοφία λέει ότι όλες οι συσκευές που χρησιμοποιούν λιγότερο εύρος ζώνης (π.χ. LAN, Ασύρματο δίκτυο, κλπ) είναι γνωστά ως thin-client. Διότι λαμβάνουν λιγότερο εύρος ζώνης για να μεταφέρουν τις πληροφορίες μεταξύ των thin-client και του διακομιστή με τη χρήση τερματικού και των υπηρεσιών που εκτελούνται στο διακομιστή με τη βοήθεια των πρωτοκόλλων επικοινωνίας, όπως RDP(Remote Desktop Protocol) ή ICA (Independent Computing Architecture). Σελίδα 23

Το RDP και το ICA είναι πρωτόκολλα οθόνης που τρέχουν πάνω από τα πρωτόκολλα TCP / IP. Έχουν έναν client καθώς και ένα τμήμα διακομιστή που εκτελείται πάνω από τον Thin client και τις μηχανές του server αντίστοιχα. Στην περίπτωση της ICA, το τμήμα του server ονομάζεται CDS (Citrix device service). Όλο το πληκτρολόγιο και η κίνηση του ποντικιού συλλαμβάνονται από το τμήμα client των εν λόγω πρωτοκόλλων επικοινωνίας και διαβιβάζονται στους ομολόγους του που τρέχουν στον Server. Το τμήμα του server από το πρωτόκολλο της οθόνης αλληλεπιδρά με τις υπηρεσίες τερματικού σταθμού για την επεξεργασία των εισροών από τον client και την έξοδο του επεξεργασμένου αιτήματος το οποίο αποστέλλεται πίσω στον client, μέρος του πρωτοκόλλου της οθόνης εκτελείται στον υπολογιστή-client. Οι υπηρεσίες τερματικού σταθμού ανταποκρίνεται στην σύνδεση που ξεκίνησε από το τμήμα του διακομιστή του πρωτόκολλου οθόνης με το άνοιγμα ενός ανεξάρτητου season. Όταν ο client εισάγει οποιαδήποτε κίνηση πληκτρολόγησης ή μια κίνηση του ποντικιού, οι υπηρεσίες τερματικού σταθμού ανοίγουν ένα εικονικό κανάλι με το οποίο ο πελάτης επικοινωνεί με το διακομιστή. Αυτό το κανάλι τρέχει την κατανομή χώρου μνήμης και τα CPU circles, τα οποία είναι ανεξάρτητα από άλλα εικονικά κανάλια που ταυτόχρονα εκτελούνται στο διακομιστή. Όταν ο χρήστης συνδέεται στο διακομιστή, ελέγχεται για την εγκυρότητα του μέσω της βάσης δεδομένων ασφαλείας. Μόλις επικυρωθεί ο χρήστης, το προφίλ και η θέση του οικείου καταλόγου ενεργοποιείται και το ίδιο μεταδίδεται προς το τερματικό Υπηρεσιών, το οποίο με τη σειρά τους στέλνει στο TC χρησιμοποιώντας το πρωτόκολλο της οθόνης. Αν μια συγκεκριμένη πολιτική για τα δικαιώματα των χρηστών / περιορισμών υπάρχει, ενεργοποιείται στο διακομιστή. Ο διακομιστής επίσης βοηθά την πρόσβαση των χρηστών σε άλλους πόρους του δικτυού, όπως εκτυπωτές, σαρωτές κ.λπ.[14] Σχήμα 10. Τοπολογία thin client Σελίδα 24

Zero clients Οι Zero clients κερδίζουν έδαφος στην αγορά VDI. Αυτοί οι client devices δεν απαιτούν διαμόρφωση και δεν έχουν τίποτα αποθηκευμένο σε αυτά. Οι zero clients συχνά απαιτούν λιγότερη ρύθμιση από ένα thin client. Ο χρόνος εγκατάστασης μπορεί να παρέχεται χαμηλότερα εκείνων που διεξάγουν την ανάπτυξη έχουν ρυθμιστεί σωστά το περιβάλλον τους επάνω. Ωστόσο, οι Zero clients δεν είναι τόσο ευέλικτοι και συχνά απαιτούν οι διαχειριστές να επιλέγουν ένα πρωτόκολλο για τη συσκευή που χρησιμοποιούν, ενώ ένας χρήστης μπορεί να χρειαστεί μόνο να εισαγάγει τις πιστοποιήσεις του για να έχει πρόσβαση σε συνεδρίες της επιφάνειας εργασίας. Οι επιλογές για το τι μπορούν να κάνουν είναι πιο περιορισμένες. Αντί για ένα λειτουργικό σύστημα, οι Zero clients έχουν ένα εξαιρετικά συντονισμένο επί του σκάφους επεξεργαστή ειδικά σχεδιασμένο για κάθε ενδεχόμενο των τριών VDI πρωτόκολλων (PCoIP, HDX ή RemoteFX). Οι περισσότερες από τις διαδικασίες αποκωδικοποίησης και εμφάνισης λαμβάνουν χώρα σε ειδικό υλικό και ως εκ τούτου είναι πιο αποτελεσματικές από τη χρήση ενός λογισμικού client και ενός πρότυπου CPU με ρύθμιση GPU όπως με τα thin clients. Οι Zero clients έχουν Booting Time λίγων δευτερολέπτων και έχουν ανοσία σε ιούς, μειώνοντας το συνολικό χρόνο διακοπής της συσκευής και αύξησης της παραγωγικότητας στον end user. Οι συσκευές Zero clients απαιτούν λιγότερη συντήρηση και σπάνια χρειάζονται ενημερώσεις, εκτός αν υπάρχει μια σημαντική αλλαγή / βελτίωση του πρωτοκόλλου VDI ή την περιστασιακή αναβάθμιση των BIOS.[14] Σχήμα 11. Τοπολογία zero client. Πλεονεκτήματα Thin και Zero clients Σελίδα 25

Λόγο του γεγονότος ότι οι fat clients έχουν μόνο ένα πλεονέκτημα έναντι των thin και των zero clients δεν περιέχονται στην σύγκριση. Το μόνο πλεονέκτημα είναι ότι οι fat clients χρησιμοποιούν την ιδία υπολογιστική υποδομή που είχαμε πριν μπούμε στην τεχνολογία VDI, δηλαδή μετατρέψαμε τα παλιά μας Pc σε VDI clients. Thin clients Οι Thin Clients συνήθως περιέχουν πολλαπλούς broker σύνδεσης VDI. Αυτοί οι τύποι σύνδεσης διαχειρίζονται από ένα κεντρικό utility, ο οποίος είναι απαραίτητος για την αποτελεσματική διατήρηση και εφαρμογή ενημερώσεων στους connection brokers. Τα Thin Clients έχουν ρυθμιστεί χρησιμοποιώντας συνήθως ένα template από τις προηγούμενες συνθέσεις Thin Client και ως εκ τούτου καθιστούν τη συσκευή πολύ απλή και μπορεί να γίνει με ένα μόνο διαχειριστή IT. Με τα Thin Clients, οι ενημερώσεις λογισμικού είναι συνήθως μεγαλύτερες και μπορεί να είναι πιο συχνές από ό, τι για τα zero clients λόγω των εκτεταμένων χαρακτηριστικών τους. Ενημερώσεις λογισμικού για τα Thin Client είναι ακόμα λιγότερο συχνές σε σύγκριση με ένα PC. Τα Thin Clients είναι γνωστά για την ευελιξία τους και έχουν σχεδιαστεί για τις ανάγκες του κάθε end user. Οι IT διαχειριστές μπορούν απλά με drag & drop να δώσουν τις κατάλληλες εφαρμογές στους Thin Client και τον end user να έχει πρόσβαση σε ένα σύνολο γραφιστικών εφαρμογών για προχωρημένους χρήστες ή ακόμα και ένα σύνολο απλών εφαρμογών τύπου Microsoft Office για τους εργαζόμενους. Οι Thin Clients έχουν τη δυνατότητα εγκατάστασης εφαρμογών περιήγησης, e-mail, PDF καθώς και συνδεσιμότητα σε οποιαδήποτε εφαρμογή διακομιστή του legacy client server. Zero clients Λειτουργούν μόνο με ένα ή δύο τύπους σύνδεσης, όπως είναι Citrix ή η VMware, αυτές οι συσκευές μπορούν να διαχειριστούν κεντρικά, αλλά δεν είναι τόσο απαραίτητο ως Thin Client. Έχουν μια σχετικά σύντομη και απλή διαμόρφωση σε σύγκριση με εκείνη ενός Thin πελάτη. Οι ενημερώσεις λογισμικού για τους zero clients είναι συνήθως μικροσκοπική, για παράδειγμα, ο client Tera2 PCoIP Zero Σελίδα 26