Πατρών ΘΕΜΑ ΕΠΙΒΛΕΠΩΝ ΤΡΙΜΕΛΗΣ ΕΠΙΤΡΟΠΗ: ΠΑΤΡΑ 2008

Σχετικά έγγραφα
Εργαστήριο Δικτύων Υπολογιστών. Εισαγωγή στις τεχνολογίες υπολογιστικού πλέγματος (Grid Computing)

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

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

Διαδίκτυο: δίκτυο διασυνδεμένων δικτύων Ξεκίνησε ως ένα μικρό κλειστό στρατιωτικό δίκτυο, απόρροια του Ψυχρού Πολέμου μεταξύ ΗΠΑ και ΕΣΣΔ.

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

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

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

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

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

Προσομοίωση Συστημάτων

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

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

Η τεχνολογία Grid και η δηµιουργία του παγκόσµιου υπερυπολογιστικού πλέγµατος. Χρήστος Μάρκου Ινστιτούτο Πυρηνικής Φυσικής

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

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

Κεφάλαιο 9: Διαδίκτυο, Web 2.0 και Web X.0. Εφαρμογές Πληροφορικής Κεφ. 9 Καραμαούνας Πολύκαρπος 1

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

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

"Ανάπτυξη προηγμένης εφαρμογής απεικόνισης και ενσωμάτωσης Υπηρεσιών Καταλόγου (LDAP) με τη χρήση των τεχνολογιών Web 2.0"

Προσφερόμενα Διπλώματα (Προσφερόμενοι Τίτλοι)

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

Περίληψη Λαμπρόπουλος

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

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

Διαδίκτυο είναι ένα σύστημα διασυνδεδεμένων δικτύων και υπολογιστών που απλώνεται σε όλο τον κόσμο και έχουν πρόσβαση σε αυτό εκατομμύρια χρήστες.

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΥΠΟΥΡΓΕΙΟ ΟΙΚΟΝΟΜΙΑΣ ΥΠΟΔΟΜΩΝ, ΝΑΥΤΙΛΙΑΣ & ΤΟΥΡΙΣΜΟΥ ΑΠΟΦΑΣΗ ΕΠΙ ΔΗΛΩΣΗΣ ΣΗΜΑΤΟΣ ΑΠΟΦΑΣΗ ΕΞ 3113/

ΚΕΦΑΛΑΙΟ 1: Τα είδη των Δικτύων Εισαγωγή

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

2018 / 19 ΜΕΤΑΠΤΥΧΙΑΚΑ ΠΡΟΓΡΑΜΜΑΤΑ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ & ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

Σκοπός Μαθήματος. Λειτουργικά Συστήματα Η/Υ. Γενικές Πληροφορίες. Στόχοι Μαθήματος ΚΕΦΑΛΑΙΟ 1 - ΕΙΣΑΓΩΓΗ. Θεωρία: Εργαστήριο: Κεφάλαιο 1 «Εισαγωγή»

Κεφάλαιο 7. ΕΠΑΛ Σύμης Εφαρμογές πληροφορικής Ερωτήσεις επανάληψης

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΥΠΟΥΡΓΕΙΟ ΟΙΚΟΝΟΜΙΑΣ ΥΠΟΔΟΜΩΝ, ΝΑΥΤΙΛΙΑΣ & ΤΟΥΡΙΣΜΟΥ ΑΠΟΦΑΣΗ ΕΠΙ ΔΗΛΩΣΗΣ ΣΗΜΑΤΟΣ ΑΠΟΦΑΣΗ ΕΞ 4288 /

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

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

Μάθημα 6 ο. Χρονοδρομολόγηση (Scheduling)

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

Υπηρεσιοστρεφής Αρχιτεκτονική SOA (Service Oriented Architecture)

Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

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

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

2.5.1 Χρήση δεξιοτήτων αρχειοθέτησης για τη διατήρηση ενός καθιερωμένου συστήματος

SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

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

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

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

Ανάπτυξη πλήρους διαδικτυακής e-commerce εφαρμογής με χρήση του CMS WordPress

Κεφάλαιο 3. Διδακτικοί Στόχοι

Ταξιδεύοντας στο φωτεινό μονοπάτι της Έρευνας Εθνικό Δίκτυο Έρευνας και Τεχνολογίας Διαγωνισμός Αξιοποίησης Προηγμένων Ψηφιακών Υπηρεσιών ΕΔΕΤ

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

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

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

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

Εθνικό Μετσόβιο Πολυτεχνείο

215 Μηχανικών Η/Υ και Πληροφορικής Πάτρας

Digital Signage. «Δημιουργικότητα στην Πληροφόρηση»

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

Εννοιολογική Ομοιογένεια

Σχεδίαση και Ανάπτυξη Ιστότοπων

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

Φουκαράκη Χρυσούλα - ΓΕΛ Γαζίου

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

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

Αγορά Πληροφορικής. Προϊόντα και Υπηρεσίες.

ΕΡΕΥΝΗΤΙΚΗ ΕΡΓΑΣΙΑ Α_ΤΕΤΡΑΜ_ ΕΣΠΕΡΙΝΟ ΛΥΚΕΙΟ ΛΑΡΙΣΑΣ. ΘΕΜΑ: E-LEARNING Αντζελα Πιετρη-Αριστελα Γκιονι ESPERINO LYKEIO LARISAS

Εθνικό Δίκτυο Έρευνας & Τεχνολογίας Ένταξη Νοσοκομειακών Μονάδων στο Εθνικό Ερευνητικό & Ακαδημαϊκό Δίκτυο ΕΔΕΤ

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

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

Τη φυσική (MAC) διεύθυνση που δίνει ο κατασκευαστής του δικτυακού υλικού στις συσκευές του (π.χ. στις κάρτες δικτύου). Η περιοχή διευθύνσεων που

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Ενότητα 1: Εισαγωγή στις Βάσεις Δεδομένων. Αθανάσιος Σπυριδάκος Διοίκηση Επιχειρήσεων

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

Παρουσίαση έργου. με την τεχνική της. Δομικής Ανάλυσης Έργου (WBS)

Εισαγωγή. Κατανεµηµένα Συστήµατα 01-1

Περιεχόμενα Παρουσίασης

RobotArmy Περίληψη έργου

ΠΛΑΤΩΝΑΣ Έργο ΓΓΕΤ 1SME2009

Η συμβολή στην επιτυχία ενός οργανισμού, παρουσιάζοντας σχετικά δεδομένα με τη χρήση τεχνικών 2Δ ή 3Δ τεχνολογίας. Αρμοδιότητα

Διαδικτυακή υπηρεσία περιβαλλοντικών κινδύνων Πλημμύρες ERMIS-Floods: Environmental Risk Management & Information Service

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΙΟΙΚΗΣΗΣ. Στόχοι

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

Ενότητα 3: Διαχείριση πληροφοριακών πόρων με τη χρήση βάσεων δεδομένων

Κεφάλαιο 2. Υπολογιστές και Τεχνολογία Επικοινωνιών Παρελθόν - Παρόν - Μέλλον

Εννοιολογική χαρτογράφηση: Διδακτική αξιοποίηση- Αποτελέσματα για το μαθητή

WIRELESS SENSOR NETWORKS (WSN)

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

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

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ web εφαρµογής - ηλεκτρονικού κατατήµατος για έξυπνα κινητά

Πρόγραμμα Μεταπτυχιακών Σπουδών

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

ΚΕΦΑΛΑΙΟ 1.7. Πρωτόκολλα και Αρχιτεκτονική Δικτύου

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

Τμήμα Ψηφιακών Συστημάτων Δικτυοκεντρικών Ψηφιακών Συστημάτων και Υπηρεσιών Τηλεπικοινωνιακών Συστημάτων και Δικτύων Πτυχίο Ψηφιακά Συστήμα- τα

332 Μηχανολόγων Μηχανικών Βιομηχανίας Θεσσαλίας (Βόλος)

. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΔΙΟΙΚΗΣΗΣ MANAGEMENT INFORMATION SYSTEMS (M.I.S.)

Field Service Management ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

ΕΥΑΓΓΕΛΟΣ Χ. ΖΙΟΥΛΑΣ

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

Transcript:

Πανεπιστήμιο Πατρών Τμήμα Μηχανικών Η/Υ & Πληροφορικής ΜΕΤΑΠΤΥΧΙΑΚΗ ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑΑ ΘΕΜΑ Διαχείριση πόρων σε δίκτυα πλέγματος, χρησιμοποιώντας το ενδιάμεσο λογισμικό glite ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ: ΒΑΡΒΑΡΙΓΟΣ ΕΜΜΑΝΟΥΗΛ ΤΡΙΜΕΛΗΣ ΕΠΙΤΡΟΠΗ: ΒΑΡΒΑΡΙΓΟΣ ΕΜΜΑΝΟΥΗΛ ΒΛΑΧΟΣ ΚΥΡΙΑΚΟΣ ΓΑΛΛΟΠΟΥΛΟΣ ΕΥΣΤΡΑΤΙΟΣ KΡΕΤΣΗΣ ΑΡΙΣΤΟΤΕΛΗΣ Α.Μ 532 ΠΑΤΡΑ 2008

2

Ευχαριστίες Πριν την παρουσίαση της παρούσας διπλωματικής εργασίας αισθάνομαι την ανάγκη να ευχαριστήσω θερμά ορισμένους ανθρώπους χωρίς την βοήθεια και τη συμπαράσταση των οποίων δεν θα μπορούσε να ολοκληρωθεί αυτή η εργασία. Αρχικά θα ήθελα να ευχαριστήσω τον επιβλέποντα της διπλωματικής εργασίας, Καθηγητή Μάνο Βαρβαρίγο ο οποίος μου έδωσε την δυνατότητα να ασχοληθώ με το τόσο ενδιαφέρων ερευνητικό θέμα των τεχνολογιών δικτύων πλέγματος (Grid) καθώς επίσης και για την πολύτιμη βοήθεια και καθοδήγηση του σε όλα τα στάδια της εργασίας. Επίσης, θα ήταν σημαντική παράληψη να μην ευχαριστήσω τους διδακτορικούς φοιτητές Παναγιώτη Κόκκινο και Κώστα Χριστοδουλόπουλο οι οποίοι με το πραγματικό τους ενδιαφέρον, τις εύστοχες παρατηρήσεις και συμβουλές τους με βοήθησαν πολλές φορές κατά διάρκεια εκπόνησης της διπλωματικής εργασίας. Θα ήθελα επιπλέον να ευχαριστήσω τους διδακτορικούς φοιτητές Κώστα Μανουσάκη και Χρήστο Παπαγεωργίου για την ανταλλαγή απόψεων και την άψογη συνεργασία μας στο Εργαστήριο Δικτύων. Ένα πολύ μεγάλο ευχαριστώ στην οικογένεια μου, την μητερά μου Ανδρεάνα, την θεία μου Αρχοντούλα, τις αδερφές μου Φωτεινή και Ιωάννα και στους φίλους μου για την συμπαράσταση και την κατανόησή τους κατά τη διάρκεια της δουλειάς μου. Τέλος την παρούσα διπλωματική εργασία θα ήθελα να την αφιερώσω στην μνήμη του πατέρα μου. 3

4

Περίληψη Οι νέες επιστημονικές εφαρμογές έχουν αυξημένες απαιτήσεις σε υπολογιστικούς και αποθηκευτικούς πόρους ενώ την ίδια στιγμή η βελτίωση της ταχύτητας και των επιδόσεων των μεμονωμένων ηλεκτρονικών συσκευών περιορίζεται λόγω φυσικών περιορισμών. Η μεγάλη πρόοδος τα τελευταία χρόνια στην τεχνολογία των οπτικών δικτύων μεγάλης ταχύτητας έκανε ρεαλιστική μια διαφορετική προσέγγιση για την αντιμετώπιση των μεγάλων απαιτήσεων των νέων εφαρμογών μέσω της δημιουργίας των δικτύων πλέγματος (Grids). Η τεχνολογία των δικτύων πλέγματος υπόσχεται γρηγορότερους υπολογισμούς χρησιμοποιώντας μία διαφορετική προσέγγιση. Αντί να συγκεντρώνεται σε έναν μοναδικό υπολογιστή ώστε να τον κάνει πιο ισχυρό, προσπαθεί να δημιουργεί ομάδες υπολογιστών, οι οποίοι έχουν την δυνατότητα να συνεργάζονται αποτελεσματικά και να εκτελούν ένα σύνολο υπολογιστικών εργασιών. Ένα πολύ σημαντικό θέμα που επηρεάζει την συνολική απόδοση των δικτύων πλέγματος είναι η χρονοδρομολόγηση των εργασιών που υποβάλλουν οι χρήστες στους διαθέσιμους πόρους του δικτύου. Η χρονοδρομολόγηση γίνεται πιο σημαντική λόγω των ιδιαίτερων χαρακτηριστικών του αρκετά δυναμικού περιβάλλοντος των δικτύων πλέγματος. Οι διαθέσιμοι πόροι και το φορτίο τους μεταβάλλεται σημαντικά με τον χρόνο ενώ στην υποδομή θα πρέπει να εκτελούνται εργασίες με εντελώς διαφορετικά χαρακτηριστικά και απαιτήσεις. Επομένως η χρονοδρομολόγηση των εργασιών αποτελεί σημαντικό και καθοριστικό παράγοντα για την επιτυχία των δικτύων πλέγματος αφού καθορίζει άμεσα την αποτελεσματικότητα στην χρήση των διαμοιραζόμενων πόρων και την ποιότητα της υπηρεσίας που παρέχει η υποδομή στους χρήστες. Στόχος της παρούσας διπλωματικής εργασίας ήταν η μελέτη της χρονοδρομολόγησης στα δίκτυα πλέγματος όχι μέσω προγραμμάτων προσομοίωσης αλλά χρησιμοποιώντας το ενδιάμεσο λογισμικό glite που χρησιμοποιείται στην υποδομή του EGEE. Το glite αποτελεί ένα ολοκληρωμένο σύνολο από επιμέρους λειτουργικά τμήματα σχεδιασμένο ώστε να επιτρέπει τον διαμοιρασμό των διαθέσιμων πόρων με αποδοτικό τρόπο ενώ παράλληλα αποκρύπτει από τους τελικούς χρήστες την πολυπλοκότητα του ετερογενούς περιβάλλοντος που χαρακτηρίζει τα δίκτυα πλέγματος. Με την χρήση του ενδιάμεσου λογισμικού αναπτύξαμε ένα μικρής κλίμακας δίκτυο πλέγματος το οποίο αποτελείται συνολικά από 14 μηχανήματα και ένα site. Το δίκτυο αυτό χρησιμοποιεί την δική του αρχή έκδοσης ψηφιακών πιστοποιητικών ενώ παρέχει στους χρήστες όλες τις υπηρεσίες που είναι δυνατές μέσω του glite για την εκτέλεση των εργασιών τους και την διαχείριση των δεδομένων τους. Στην συνέχεια μελετήσαμε την υπηρεσία Workload Management System (WMS) του λογισμικού στην οποία υλοποιούνται οι αλγόριθμοι χρονοπρογραμματισμού που παρέχει το glite. Στόχος ήταν η ανάλυση της λειτουργίας των δύο αλγορίθμων χρονοπρογραμματισμού που παρέχει το ενδιάμεσο λογισμικό και η κατανόηση τόσο της αρχιτεκτονικής της WMS υπηρεσίας που είναι μια από τις πιο σημαντικές για την λειτουργία ολόκληρου του 5

δικτύου αλλά και του τρόπου υλοποίησης των δύο αλγορίθμων του glite. Τέλος υλοποιήσαμε και προσθέσαμε στην υπηρεσία WMS ένα νέο δίκαιο αλγόριθμο ανάθεσης εργασιών στους διαθέσιμους πόρους του δικτύου πλέγματος. Με βάση τα συμπεράσματα από την ανάλυση των αλγορίθμων ανάθεσης εργασιών του glite σχεδιάσαμε και εκτελέσαμε μια σειρά από μετρήσεις αρχικά για τον έλεγχο της ορθής λειτουργία του νέου αλγορίθμου που προτείνουμε και στην συνέχεια για την αξιολόγηση τόσο των αλγορίθμων που παρέχει το glite όσο και του δικού μας δίκαιου αλγορίθμου ανάθεσης εργασιών στους πόρους. Τα αποτελέσματα των μετρήσεων δείχνουν ότι ο αλγόριθμος που προτείνουμε έχει την επιθυμητή λειτουργία ενώ παράλληλα εξασφαλίζει σε όλες τις περιπτώσεις την καλύτερη αξιοποίηση των διαθέσιμων πόρων του δικτύου βελτιώνοντας παράλληλα τους χρόνος εκτέλεσης των εργασιών των χρηστών. 6

ΠΕΡΙΕΧΟΜΕΝΑ 1 Η ΤΕΧΝΟΛΟΓΙΑ ΤΩΝ ΔΙΚΤΥΩΝ ΠΛΕΓΜΑΤΟΣ (GRID)... 11 1.1 Ορισμός δικτύων πλέγματος... 13 1.2 Κύρια χαρακτηριστικά τεχνολογίας δικτύων πλέγματος... 14 1.3 Αρχιτεκτονική δικτύων πλέγματος... 15 1.4 Εφαρμογές δικτύων πλέγματος... 16 1.4.1 Κατηγοριοποίηση των εφαρμογών στα δίκτυα πλέγματος ανάλογα με το βασικό αντικείμενό τους... 16 1.4.2 Οι Χρήστες του δικτύου πλέγματος... 17 1.5 Κατηγορίες δικτύων πλέγματος... 19 2 ΤΟ ΕΝΔΙΑΜΕΣΟ ΛΟΓΙΣΜΙΚΟ glite ΓΙΑ ΔΙΚΤΥΑ ΠΛΕΓΜΑΤΟΣ... 21 2.1 Εισαγωγή... 23 2.2 Ερευνητικά προγράμματα σχετικά με το glite... 23 2.3 Η υποδομή του LCG/EGEE... 27 2.4 Αρχιτεκτονική του ενδιάμεσου λογισμικού glite στο LCG/EGEE... 29 3 ΑΛΓΟΡΙΘΜΟΙ ΧΡΟΝΟΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΕΡΓΑΣΙΩΝ ΣΤΟ glite... 43 3.1 Εισαγωγή... 45 3.2 Workload Management System (WMS)... 46 3.2.1 Η ανάγκη χρήσης του WMS... 46 3.2.2 Περιγραφή της υπηρεσίας WMS του glite... 48 3.3 Αλγόριθμοι της υπηρεσίας WMS του glite για την ανάθεση εργασιών σε υπολογιστικούς πόρους... 59 3.3.1 Η γλώσσα περιγραφής εργασιών JDL... 64 3.3.2 Ο αλγόριθμος Max Rank... 66 3.3.3 O στοχαστικός αλγόριθμος Fuzzy Rank... 67 3.4 Ο αλγόριθμος ανάθεσης εργασιών Fair Execution Time Estimation... 68 3.5 Simple Fair Execution Time Estimation Algorithm... 71 4 ΑΝΑΠΤΥΞΗ ΛΟΓΙΣΜΙΚΟΥ ΣΤΟ EGEE ΤΟ ΣΎΣΤΗΜΑ ETICS... 75 4.1 Εισαγωγή... 77 4.2 Υπηρεσίες που προσφέρει το ETICS... 78 7

4.3 Ανάπτυξη λογισμικού στο ETICS... 79 4.4 Αρχιτεκτονική της υπηρεσίας ETICS... 80 4.5 Η αναπαράσταση των πληροφοριών του λογισμικού στο ETICS... 82 4.5.1 Modules: Projects, Subsystems and Components... 82 4.5.2 Πλατφόρμες ανάπτυξης λογισμικού... 83 4.6 Η εφαρμογή διαδικτύου του ETICS... 84 4.7 Προετοιμασία του συστήματος για την ανάπτυξη συγκεκριμένου λογισμικού 90 4.8 Υλοποίηση αλγορίθμου FETE στο glite... 93 4.8.1 Ανάκτηση κώδικα της υπηρεσίας WMS... 93 4.8.2 Υλοποίηση των αλγορίθμων Max και Fuzzy στο glite... 96 4.8.3 Υλοποίηση αλγορίθμου FETE στο glite... 98 5 ΥΛΟΠΟΙΗΣΗ ΠΕΙΡΑΜΑΤΙΚΗΣ ΥΠΟΔΟΜΗΣ ΚΑΙ ΜΕΤΡΗΣΕΙΣ... 103 5.1 Υλοποίηση πειραματικής υποδομής... 105 5.1.1 Περιγραφή του πειραματικού δικτύου πλέγματος... 105 5.1.2 Αρχές πιστοποίησης (Certification Authority)... 108 5.1.2.1 Εισαγωγή στην υποδομή δημοσίου κλειδιού (Pubic Key Infrastructure)... 108 5.1.2.2 Δημιουργία αρχής πιστοποίησης (Certification Authority)... 110 5.1.2.3 Δημιουργία ψηφιακού πιστοποιητικού της αρχής πιστοποίησης... 114 5.1.3 Προετοιμασία εγκατάστασης... 127 5.1.4 Εγκατάσταση των πακέτων λογισμικού του glite... 134 5.1.4.1 VOMS... 134 5.1.4.2 UI... 139 5.1.4.3 Ο κόμβος DPM ( SE στην έκδοση 3.0)... 145 5.1.4.4 LFC... 146 5.1.4.5 WN... 148 5.1.4.6 CE... 152 5.1.4.7 Site-BDII... 157 5.1.4.8 R-GMA (MON)... 161 5.1.4.9 WMS/LB... 163 5.1.5 Αντιμετώπιση προβλημάτων στο glite... 167 5.2 Σχεδιασμός πειραμάτων... 168 8

5.3 Αποτελέσματα... 171 5.3.1 Περίπτωση έκφρασης rank με σταθερή τιμή... 171 5.3.2 Περίπτωση έκφρασης rank με δυναμική τιμή... 177 5.4 Συμπεράσματα... 185 6 BΙΒΛΙΟΓΡΑΦΙΑ... 187 9

10

1 Η ΤΕΧΝΟΛΟΓΙΑ ΤΩΝ ΔΙΚΤΥΩΝ ΠΛΕΓΜΑΤΟΣ (GRID) 11

12

1.1 Ορισμός δικτύων πλέγματος Υπάρχουν πολλοί λόγοι για την αναζήτηση μεγαλύτερης υπολογιστικής δύναμης από αυτή που μπορούν να δώσουν οι υπάρχοντες ηλεκτρονικοί υπολογιστές. Την ίδια στιγμή φαίνεται ότι η αύξηση της υπολογιστικής δύναμης που μπορεί να προκύψει από μόνη την βελτίωση της ταχύτητας των μεμονωμένων ηλεκτρονικών συσκευών περιορίζεται λόγω φυσικών περιορισμών. H τεχνολογία Grid υπόσχεται γρηγορότερους υπολογισμούς χρησιμοποιώντας μία διαφορετική προσέγγιση. Αντί να συγκεντρώνεται σε έναν μοναδικό υπολογιστή ώστε να τον κάνει πιο ισχυρό, προσπαθεί να δημιουργεί ομάδες υπολογιστών, που να μπορούν να συνεργάζονται αποτελεσματικά και να εκτελούν ένα σύνολο υπολογιστικών διεργασιών. Το Grid προορίζεται να είναι ένα παγκόσμιο σύστημα που θα παρέχει πρόσβαση σε πόρους υπολογισμού και αποθήκευσης μέσω του διαδικτύου, όπως ο παγκόσμιος ιστός παρέχει πρόσβαση σε πληροφορίες μέσω του διαδικτύου. Με τον τρόπο αυτό στοχεύει στο να μετατρέψει το παγκόσμιο δίκτυο σε έναν ενοποιημένο εικονικό υπολογιστή. Ο όρος Grid χρησιμοποιήθηκε για πρώτη φορά στα μέσα της δεκαετίας του 90 για να δηλώσει μια προτεινόμενη κατανεμημένη υπολογιστική υποδομή για προηγμένες επιστημονικές και υπολογιστικές εφαρμογές. Επιλέγει ως ανάλογο με το Grid της ηλεκτρικής ενέργειας, που έφερε μια επαναστατική αλλαγή στον τρόπο διανομής του ηλεκτρικού ρεύματος. Οι χρήστες του υπολογιστικού Grid θα στέλνουν σε αυτό τις προς εκτέλεση εργασίες τους, χωρίς να ενδιαφέρονται που ακριβώς θα εκτελεστούν, όπως λαμβάνουν ηλεκτρικό ρεύμα από την πρίζα, χωρίς να ενδιαφέρονται ποιος σταθμός ηλεκτρικού ρεύματος το παρέχει. Από την πρώτη χρήση του όρου Grid μέχρι σήμερα σημειώθηκε σημαντική πρόοδος στην κατασκευή τέτοιων υποδομών, αλλά υπάρχει μία σύγχυση στην χρήση του όρου. Παρακάτω θα παραθέσουμε τους δυο πιο κοινά αποδεκτούς και σημαντικούς ορισμούς που έχουν δοθεί στον όρο Grid. Tο Grid είναι ένας τύπος παράλληλου και κατανεμημένου συστήματος που επιτρέπει τον διαμοιρασμό, την επιλογή, και την συσσώρευση γεωγραφικά απομακρυσμένων αυτόνομων πόρων δυναμικά τη στιγμή εκτέλεσης ανάλογα με τη διαθεσιμότητα τους, τη χωρητικότητα, την απόδοση, το κόστος και τις απαιτήσεις σε ποιότητα υπηρεσίας από τη μεριά του χρήστη. Dr. Rajkumar Buyya [1] Προτείνω ότι η ουσία του ορισμού μπορεί να δοθεί σε μία απλή λίστα, σύμφωνα με την οποία το Grid είναι ένα σύστημα που: 1. αποτελείται από πόρους που δεν υπόκεινται σε κεντρικό έλεγχο 2. χρησιμοποιώντας σαφώς καθορισμένα, ανοιχτά, γενικού σκοπού πρωτόκολλα και διεπαφές 3. για να προσφέρει μη συνηθισμένη ποιότητα υπηρεσιών. Ian Foster [2] 13

1.2 Κύρια χαρακτηριστικά τεχνολογίας δικτύων πλέγματος Η τεχνολογία Grid διακρίνεται από κάποια βασικά χαρακτηριστικά που είναι απαραίτητα ώστε να μπορέσει να λειτουργήσει με τον αποτελεσματικό τρόπο που αναφέρθηκε παραπάνω. Αυτά τα χαρακτηριστικά αποτελούν και τις θεμελιώδεις ιδέες της τεχνολογίας Grid. Το πρώτο και κύριο χαρακτηριστικό του Grid είναι ο διαμοιρασμός των πόρων. Η χρήση της τεχνολογίας αυτής από κάποιον χρήστη σημαίνει αρχικά ότι μπορεί να έχει πρόσβαση σε απομακρυσμένους πόρους. Αυτό συνεπάγεται την δυνατότητα εκτέλεσης διεργασιών που δεν θα ήταν δυνατόν να ολοκληρωθούν με τη χρήση του δικού του υπολογιστικού συστήματος επειδή ενδεχομένως απαιτούν την εκτέλεση πολλών πολύπλοκων και χρονοβόρων υπολογισμών. Για την εκτέλεση τέτοιων διεργασιών δεν απαιτείται μόνο κάποια ανταλλαγή αρχείων ή δεδομένων, αλλά πρόσβαση σε απομακρυσμένο λογισμικό, υλικό και δεδομένα. Ένα δεύτερο χαρακτηριστικό του Grid, που ουσιαστικά συμπληρώνει το προηγούμενο είναι ο αποδοτικός διαμοιρασμός των πόρων του συστήματος. Σε αυτό το σημείο πρέπει να αναφέρουμε πως ο αποδοτικός διαμοιρασμός των πόρων του συστήματος είναι το χαρακτηριστικό εκείνο που συγκεντρώνει το περισσότερο ενδιαφέρον όσο αφορά στη μελέτη και την έρευνα πάνω στο Grid. Ανεξάρτητα από το πόσο μεγάλη είναι η ισχύς των υπολογιστικών πόρων που είναι διαθέσιμοι, πρέπει να είμαστε σε θέση να τους διαχειριστούμε αποδοτικά. Όταν αυξάνει ο αριθμός των χρηστών του Grid αυξάνει ανάλογα και ο αριθμός των εργασιών που πρέπει να εκτελεστούν. Μη αποδοτική διαχείριση των πόρων του συστήματος θα οδηγούσε σε μεγάλες ουρές και πιθανόν σε μη έγκυρη εκτέλεση των διεργασιών. Κάθε τέτοιος αλγόριθμος δίνει έμφαση σε κάποιο συγκεκριμένο χαρακτηριστικό της οντότητας σύστημα διεργασίες. Κάτι τέτοιο σημαίνει ότι ίσως υπολείπεται σε απόδοση αναφορικά με κάποιο άλλο χαρακτηριστικό. Έτσι ανάλογα με τον τομέα που θέλουμε να αποδίδει καλύτερα η συνολική αρχιτεκτονική του Grid, επιλέγουμε και τον πιο κατάλληλο για την περίπτωση αλγόριθμο. Στην παρούσα διπλωματική εργασία θα ασχοληθούμε με τους αλγόριθμους αυτούς που ονομάζονται αλγόριθμοι χρονοπρογραμματισμού (scheduling) και θα εστιάσουμε την προσοχή μας στο ενδιάμεσο λογισμικό glite. Αρχικά θα παρουσιάσουμε τους δυο αλγόριθμους χρονοπρογραμματισμού που υποστηρίζει το glite και στην συνέχεια θα περιγράψουμε την διαδικασία ενσωμάτωσης ενός νέου δίκαιου αλγορίθμου χρονοπρογραμματισμού. Ένα ακόμα χαρακτηριστικό που διέπει την τεχνολογία Grid είναι οι μεγάλες ταχύτητες σύνδεσης μεταξύ των κόμβων του δικτύου. Η τεχνολογία Grid προϋποθέτει την μεταφορά μεγάλων ποσοτήτων δεδομένων από τους χρήστες στους δεσμευμένους πόρους κάτι που καθιστά απαραίτητες τις υψηλές ταχύτητες. Μία δεκαετία πριν θα ήταν άτοπο να μιλάμε για τέτοιες υπηρεσίες αφού δεν θα ήταν δυνατόν να σταλεί μεγάλη ποσότητα δεδομένων, ή ακόμα και αν το επιχειρούσαμε ο μικρός χρόνος εκτέλεσης 14

μίας διεργασίας σε έναν απομακρυσμένο υπολογιστή θα αντισταθμίζονταν από τον μεγάλο χρόνο μετάδοσης των δεδομένων. 1.3 Αρχιτεκτονική δικτύων πλέγματος Μια γενική εικόνα της αρχιτεκτονικής του περιβάλλοντος του υπολογιστικού Grid φαίνεται στο Σχήμα 1-1. Το Grid αποτελείται από τέσσερα κύρια στρώματα: fabric, middleware πυρήνα, middleware επιπέδου χρήστη, και εφαρμογών. Το στρώμα Grid fabric περιέχει τους υπολογιστές (low-end και high-end υπολογιστές συμπεριλαμβανομένων των clusters), δίκτυα, επιστημονικά όργανα, και συστήματα οργάνωσης των πόρων. Το στρώμα middleware του πυρήνα του Grid παρέχει υπηρεσίες που είναι απαραίτητες για την ασφαλή πρόσβαση σε απομακρυσμένους πόρους με ομοιόμορφο και διαφανή τρόπο. Οι υπηρεσίες που παρέχει περιλαμβάνουν έλεγχο ασφάλειας και πρόσβασης, υποβολή απομακρυσμένης εργασίας, αποθήκευση, και πληροφορίες για τους πόρους. Το middleware επιπέδου χρήστη παρέχει εργαλεία υψηλού επιπέδου όπως brokers πόρων, ανάπτυξη εφαρμογών και προσαρμόσιμο περιβάλλον εκτέλεσης. Οι εφαρμογές Grid περιλαμβάνουν αυτές που κατασκευάστηκαν με την χρήση των βιβλιοθηκών ή εφαρμογές legacy που μπορούν να ενεργοποιηθούν στο Grid χρησιμοποιώντας εργαλεία middleware. Σχήμα 1-1: Μια γενική εικόνα του υπολογιστικού περιβάλλοντος του Grid [4] O χρήστης αλληλεπιδρά στην ουσία με έναν broker πόρων που κρύβει την πολυπλοκότητα του υπολογισμού μέσω Grid. Ο broker ανακαλύπτει πόρους στους οποίους μπορεί να έχει πρόσβαση ο χρήστης χρησιμοποιώντας υπηρεσίες πληροφοριών, 15

διαπραγματεύεται για το κόστος πρόσβασης χρησιμοποιώντας υπηρεσίες συναλλαγής, αναθέτει διεργασίες σε πόρους (χρονοπρογραμματισμός), παρέχει την εφαρμογή και τα δεδομένα που είναι απαραίτητα για την εκτέλεση (deployment), αρχίζει την εκτέλεση των διεργασιών, και τέλος συγκεντρώνει τα αποτελέσματα. Είναι επίσης υπεύθυνος για την παρακολούθηση της προόδου της εκτέλεσης όπως επίσης για την προσαρμογή στις αλλαγές στο περιβάλλον εκτέλεσης και στις αστοχίες των πόρων. Τα περιβάλλοντα υπολογισμού αποτελούνται από ετερογενείς πόρους (PCs, σταθμοί εργασίας, clusters, και υπερυπολογιστές), συστήματα ελέγχου fabric (single system image OS, συστήματα αναμονής, κ.λ.π.) και στρατηγικές, και εφαρμογές (επιστημονικές, μηχανικές και διαφημιστικές) με διάφορες απαιτήσεις σε ότι αφορά τα CPU, I/O, μνήμη, και/ή υποδομή δικτύου). Οι παραγωγοί (producers που καλούνται επίσης και κάτοχοι πόρων) και καταναλωτές (consumers που καλούνται επίσης endusers) έχουν διαφορετικούς στόχους, στρατηγικές και απαιτήσεις. Οι πόροι καθώς και οι end-users είναι γεωγραφικά κατανεμημένοι σε περιοχές διαφορετικών χρονικών ζωνών. Στην διαχείριση τόσο περίπλοκων περιβαλλόντων, οι παραδοσιακές προσεγγίσεις στην διαχείριση των πόρων που προσπαθούν να βελτιστοποιήσουν καθολικές μετρικές του συστήματος δεν μπορούν να εφαρμοστούν. Αυτό συμβαίνει γιατί οι παραδοσιακές προσεγγίσεις χρησιμοποιούν κεντρικοποιημένες στρατηγικές που χρειάζονται πλήρη επίγνωση της κατάστασης του συστήματος και κοινή στρατηγική διαχείρισης του fabric, ή μια μη-κεντρικοποιημένη, ομόφωνα αποφασισμένη, στρατηγική. Στα περιβάλλοντα Grid ευρείας έκτασης, είναι απίθανο να οριστεί ενός πίνακας απόδοσης όλου του συστήματος καθώς και μία κοινά αποδεκτή στρατηγική διαχείρισης του συστήματος. 1.4 Εφαρμογές δικτύων πλέγματος Η τεράστια υποδομή του Grid, όπως αναφέρθηκε παραπάνω, δεν θα μπορούσε παρά να χρησιμοποιηθεί για πολύ σύνθετες και υπολογιστικά απαιτητικές εφαρμογές. Εξάλλου ο λόγος της κατασκευής και της ανάπτυξής του, είναι να μπορέσει να επεξεργαστεί αποτελεσματικά εφαρμογές που δεν μπορούν να επεξεργαστούν τα σημερινά κατανεμημένα συστήματα και οι υπερυπολογιστές. Οι εφαρμογές μπορούν να κατηγοριοποιηθούν με διάφορους τρόπους ανάλογα με τον αριθμών των υποδιεργασιών στις οποίες μπορούν να αναλυθούν, το λόγο των χρόνωνου υπολογισμού και των χρόνων επικοινωνίας, το βασικό αντικείμενο τους καθώς και το κοινό στο οποίο απευθύνονται. Παρακάτω θα παρουσιάσουμε την κατηγοριοποίηση των εφαρμογών Grid ανάλογα με το βασικό τους αντικείμενο καθώς και τους βασικούς μελλοντικούς χρήστες του Grid [3]. 1.4.1 Κατηγοριοποίηση των εφαρμογών στα δίκτυα πλέγματος ανάλογα με το βασικό αντικείμενό τους 16

Εφαρμογές Έντασης Υπολογιμού: Αυτές οι εφαρμογές είναι οι βασικοί κλάδοι του υπολογισμού υψηλών αποδόσεων. Συνήθως έχουν υψηλές απαιτήσεις σε υπολογιστική δύναμη, που μπορούν να αποκτήσουν στους διάφορους ετερογενείς πόρους της υποδομής του Grid. Αντιθέτως δεν παράγουν πολλά δεδομένα και για το λόγο αυτό δεν απαιτούν ένα ιδιαίτερα γρήγορο και αξιόπιστο δίκτυο. Παράδειγμα τέτοιας εφαρμογής είναι το πρόγραμμα SETI@home. Εφαρμογές Έντασης Δεδομένων: Αυτές οι εφαρμογές χρειάζονται ή παράγουν μεγάλη ποσότητα δεδομένων, και μπορούν να θεωρηθούν σαν τον κύριο τύπο εφαρμογών του Grid προς το παρόν, όπως επίσης σαν τον κύριο λόγο ανάπτυξης του Grid. Μία τέτοια εφαρμογή μπορεί να παράγει terabytes δεδομένων καθημερινά και το Grid πρέπει να χρησιμοποιεί κατανεμημένους πόρους αποθήκευσης, βάσεις δεδομένων και ψηφιακές βιβλιοθήκες ώστε να συλλέξει, να αποθηκεύσει και να αναλύσει αυτά τα δεδομένα. Οι επιστημονικοί κλάδοι αυτών των εφαρμογών περιλαμβάνουν τα παρακάτω: Φυσική υψηλής ενέργειας (High-energy physics), όπου κάθε μέρα παράγονται terabytes δεδομένων και εκατοντάδες ινστιτούτα και οργανισμοί στον κόσμο πρέπει να έχουν δυνατότητα να τα προσπελάσουν και να τα επεξεργαστούν. Ψηφιακή έρευνα του ουρανού (Digital Sky-Survey), όπου terabytes αστρονομικών φωτογραφικών δεδομένων πρέπει να αποθηκευτούν σε βάσεις δεδομένων στις οποίες θα υπάρχει εύκολη πρόσβαση. Μετεωρολογική πρόβλεψη (Meteorological Forecasting), όπου οι δορυφόροι παράγουν gigabytes δεδομένων που πρέπει να αναλυθούν και να μετακινηθούν ανάλογα με την γεωγραφική τοποθεσία. Εφαρμογές με Βάση τις Κοινότητες (Community-Centric Applications): Οι εφαρμογές αυτές έχουν να κάνουν με αλληλεπίδραση μεταξύ ανθρώπων, και έχουν σκοπό να φέρουν τους ανθρώπους κοντά μεταξύ τους και να βελτιώσουν την συνεργασία. Τις περισσότερες φορές υπάρχουν μερικοί υπολογιστικοί πόροι καθώς και απομακρυσμένο λογισμικό που μπορεί να χρησιμοποιηθεί από οποιοδήποτε μέλος αυτής της κοινότητας, και αυτό ονομάζεται virtual shared space. Παραδείγματα τέτοιου είδους εφαρμογών περιλαμβάνουν από την αλληλεπιδραστική παρουσίαση video, την τηλεδιάσκεψη, ακόμα και κατανεμημένο μουσικό κονσέρτο, μέχρι την συνεργασία πολλών επιστημόνων σε διάφορα σημεία του κόσμου για ένα κοινό σκοπό. Αυτή η αλληλεπίδραση συχνά πρέπει να γίνει σε πραγματικό χρόνο, και για το λόγο αυτό πρέπει να παρασχεθούν στα μέλη της κοινότητας διάφορα εργαλεία λήψης αποφάσεων και οπτικοποίησης. Επιπλέον σε τέτοιες εφαρμογές, η απόκριση στις αιτήσεις είναι απαραίτητο να είναι άμεση, δημιουργώντας με τον τρόπο αυτό μία ακόμη πρόκληση στο περιβάλλον Grid. 1.4.2 Οι Χρήστες του δικτύου πλέγματος Η τεχνολογία Grid στις μέρες μας βρίσκεται ακόμα υπό ανάπτυξη, και για την ώρα με την τεχνολογία αυτή ασχολούνται οι επιστήμονες και οι προγραμματιστές που την 17

αναπτύσσουν. Όταν όμως η τεχνολογία αυτή αναπτυχθεί αρκετά ώστε να αναλαμβάνει τις εφαρμογές για τις οποίες κατασκευάστηκε θα χρησιμοποιείται από πολλούς γεωγραφικά διασκορπισμένους χρήστες και για διάφορους σκοπούς. Παρακάτω παρουσιάζουμε εν συντομία τα άτομα και τους οργανισμούς που θα χρησιμοποιούν το Grid και πως θα επωφεληθούν από αυτό. Επιστήμονες: Οι επιστήμονες μέσω του Grid θα μπορούν να ασχοληθούν με προβλήματα που έχουν τεράστιες απαιτήσεις σε υπολογιστική δύναμη και αποθηκευτικούς χώρους, κάτι που δεν μπορεί να γίνει με τις σημερινές υποδομές. Επιπλέον θα μπορούν να έχουν πρόσβαση και να χρησιμοποιούν απομακρυσμένες εφαρμογές λογισμικού, αισθητήρες, τηλεσκόπια και προηγμένες συσκευές οπτικοποίησης και εφαρμογές χρηστών. Με τον τρόπο αυτό θα εμπλουτίζονται τα τεχνολογικά μέσα που έχει στη διάθεση του ένας επιστήμονας, θα μηδενίζονται οι αποστάσεις και θα διευκολύνεται η επικοινωνία μεταξύ των επιστημόνων. Επιστήμες που θα ωφεληθούν ιδιαίτερα από την υποδομή του Grid είναι η ιατρική, η φαρμακευτική, η βιοπληροφορική, η αστρονομία, η φυσική, η νανοτεχνολογία καθώς και επιστήμη των υλικών, των μηχανολόγων μηχανικών και πολλές άλλες. Εταιρίες: Πολλές εταιρίες στην εποχή μας είναι πολυεθνικές, και λειτουργούν με εγκαταστάσεις, δεδομένα, πόρους και εργάτες διασκορπισμένα σε διάφορες γεωγραφικές περιοχές. Μία υποδομή Grid θα επιτρέψει την συσσώρευση των στοιχείων αυτών και την δημιουργία εγκαταστάσεων που να μπορούν να επιτρέψουν υπολογισμούς μεγάλης κλίμακας, όπως Computer Aided Design (CAD) χρησιμοποιώντας γεωγραφικά κατανεμημένα δεδομένα ταυτόχρονα. Οι εταιρίες θα μπορούν να συνεργαστούν με απομακρυσμένους κατασκευαστές και εφοδιαστές, και να μπορέσουν να μάθουν και να οργανώσουν τις καταναλωτικές συνήθειες κάθε περιοχής ώστε να σχεδιάσουν ανάλογες τοπικές στρατηγικές παραγωγής. Κυβερνήσεις: Μπορεί να υπάρξουν διάφορα προβλήματα όπως ανταπόκριση σε καταστροφές (σεισμούς, φωτιές, τρομοκρατία, κλπ) πολεοδομικές κατασκευές, ή οικονομικά μοντέλα τα οποία πρέπει να αντιμετωπίσει μία κυβέρνηση. Οι άνθρωποι που αναλαμβάνουν τη λύση αυτών των προβλημάτων θα μπορούν ωφεληθούν αν μπορούν να έχουν πρόσβαση σε τεράστια υπολογιστική δύναμη από εθνικές ή ξένους πόρους ώστε να την χρησιμοποιήσουν σε επείγουσες περιπτώσεις. Εκπαίδευση: Το Grid θα προσφέρει διάφορες νέες υπηρεσίες για εκπαιδευτικούς σκοπούς που θα κυμαίνονται από διαδραστικές παρουσιάσεις βίντεο και τηλεδιασκέψεις έως εκπαίδευση από απόσταση και εικονικά δωμάτια διαλέξεων. Έτσι κάποιος θα μπορεί να παρακολουθεί μαθήματα που διδάσκονται σε μία μακρινή πόλη ή ακόμα και χώρα, χωρίς να χρειάζεται να μετακινείται από τον χώρο διαμονής του και μία πολυεθνική εταιρία θα μπορεί να εκπαιδεύει τους υπαλλήλους της σε κάποιο αντικείμενο χωρίς να πρέπει να στείλει τον εκπαιδευτή στην συγκεκριμένη περιοχή. Περιβάλλον: Με την βοήθεια της τεχνολογίας Grid θα μπορέσουν ίσως να αντιμετωπιστούν καλύτερα προβλήματα όπως η τρύπα του όζοντος, το φαινόμενο του θερμοκηπίου, και η μόλυνση του περιβάλλοντος. Για την αντιμετώπιση των 18

προβλημάτων αυτών είναι απαραίτητη η συλλογή και η ανάλυση δεδομένων σύμφωνα με κάποιες επιστημονικές μεθόδους. Ως γνωστόν τα προβλήματα αυτά επηρεάζονται από πολλούς παράγοντες και δεδομένα που διαφέρουν ανά τοποθεσία. Το Grid θα ενεργοποιήσει την δημιουργία χημικών φυσικών και βιολογικών μοντέλων, όπως επίσης και έλεγχο των μοντέλων αυτών για συγκεκριμένα δεδομένα. Τα μοντέλα αυτά είναι περίπλοκα και μη γραμμικά και μπορούν να εξομοιωθούν, μόνο με μεγάλη υπολογιστική δύναμη. Καταναλωτές: Το ηλεκτρονικό εμπόριο αναπτύσσεται ταχύτατα στις μέρες μας. Μέσω του διαδικτύου ο καθένας έχει πρόσβαση σε μία μεγάλη ποικιλία προϊόντων τα οποία μπορεί να αγοράσει με χρήση της πιστωτικής του κάρτας. Με την ανάπτυξη του Grid, ένας καταναλωτής μπορεί να επικοινωνεί με τον πωλητή μέσω ενός βίντεο πραγματικού χρόνου σαν να βρίσκονται και οι δύο στο ίδιο κατάστημα, παρά γεγονός ότι μπορεί να βρίσκονται σε διαφορετική χώρα. Το Grid, λοιπόν θα ενώσει τον κόσμο σε ότι έχει να κάνει με επικοινωνία, συνεργασία και αλληλεπίδραση. Αυτό θα δημιουργήσει καινούργιες συνθήκες ζωής για την ανθρωπότητα και όπως κάθε τεχνολογικό επίτευγμα πρέπει να χρησιμοποιηθεί σωστά ώστε να ωφελήσει τον άνθρωπο. 1.5 Κατηγορίες δικτύων πλέγματος Τα τελευταία χρόνια αναπτύχθηκαν διάφορα είδη Grid. Μία διάκριση στα περιβάλλοντα αυτά μπορεί να γίνει με βάση τις υπηρεσίες που παρέχουν[3]. Οι υπηρεσίες αυτές περιλαμβάνουν: Υπηρεσίες Υπολογισμού: Αυτές οι υπηρεσίες ασχολούνται με την ανακάλυψη και την παροχή ικανής υπολογιστικής δύναμης για την εκτέλεση των εφαρμογών σε γεωγραφικά κατανεμημένους πόρους. Ένα Grid που παρέχει αυτού του είδους τις υπηρεσίες καλείται υπολογιστικό Grid. Αυτά τα Grids χρησιμοποιούνται σε διάφορους επιστημονικούς τομείς, σε πειράματα ερευνών και στη βιομηχανία. Παραδείγματα τέτοιων Grids είναι τα NASA IPG, World Wide Grid, και NSF TeraGrid. Υπηρεσίες Δεδομένων: Αυτές οι υπηρεσίες ασχολούνται με την παροχή και την ασφαλή διαχείριση της αποθήκευσης στην υποδομή του Grid. Για να μπορεί να είναι η πρόσβαση των δεδομένων ασφαλής, αποδοτική και κυρίως εύκολη, μπορεί να δημιουργηθούν αντίγραφα των δεδομένων, κατάλογοι και να αποθηκευτούν σε διαφορετικές τοποθεσίες. Η επεξεργασία των δεδομένων γίνεται από τα υπολογιστικά Grids, που εμπλουτιζόμενα και με υπηρεσίας δεδομένων ονομάζονται Data Grids. Μερικά παραδείγματα εφαρμογών που τρέχουν σε Data Grids είναι φυσική υψηλής ενέργειας και σχεδιασμός φαρμάκων. Υπηρεσίες Εφαρμογών: Αυτές οι υπηρεσίες ασχολούνται με την παροχή transparent πρόσβασης σε απομακρυσμένο λογισμικό. Είναι χτισμένες επάνω από τις υπηρεσίες υπολογισμού και δεδομένων που παρέχονται από το Grid. Αναπτυσσόμενες τεχνολογίες 19

όπως οι υπηρεσίες Ιστού αναμένεται να παίξουν σημαντικό ρόλο στον ορισμό των υπηρεσιών εφαρμογών. Ένα παράδειγμα των υπηρεσιών αυτών είναι το NetSolve. Υπηρεσίες Πληροφοριών: Αυτές οι υπηρεσίες ασχολούνται με την εξαγωγή και την παρουσίαση πληροφοριών χρησιμοποιώντας τις ήδη υλοποιημένες υπηρεσίες υπολογισμού, δεδομένων και εφαρμογών. Με άλλα λόγια, ασχολούνται με τον τρόπο με τον οποίο οι πληροφορίες αναπαρίστανται, αποθηκεύονται, προσπελαύνονται, διαμοιράζονται και διατηρούνται. Και σε αυτή την περίπτωση οι υπηρεσίες Ιστού αναμένεται να παίξουν σημαντικό ρόλο στον ορισμό υπηρεσιών πληροφοριών. Υπηρεσίες Γνώσης: Αυτές οι υπηρεσίες ασχολούνται με τον τρόπο με τον οποίο αποκτάται, χρησιμοποιείται, δημοσιεύεται και διατηρείται η γνώση.έτσι οι χρήστες μπορούν να πετύχουν τους προσωπικούς τους στόχους αφού η γνώση ορίζεται σαν τις πληροφορίες που χρησιμοποιούνται ώστε να επιτευχθεί ένας συγκεκριμένος στόχος. Ένα παράδειγμα τέτοιων υπηρεσιών είναι η εξόρυξη δεδομένων. 20

2 ΤΟ ΕΝΔΙΑΜΕΣΟ ΛΟΓΙΣΜΙΚΟ glite ΓΙΑ ΔΙΚΤΥΑ ΠΛΕΓΜΑΤΟΣ 21

22

2.1 Εισαγωγή Τo glite [5] αναπτύχθηκε και υλοποιήθηκε με στόχο να αποτελέσει το επόμενης γενιάς ενδιάμεσο λογισμικό (middleware) για τα υπολογιστικά δίκτυα πλέγματος (Grid Computing) ως μέρος του ερευνητικού προγράμματος EGEE [6] με την συνεργασία δώδεκα διαφορετικών ακαδημαϊκών και βιομηχανικών ερευνητικών κέντρων. Ο βασικός στόχος ήταν το ενδιάμεσο λογισμικό που θα προκύψει να αποτελέσει την βάση για την ανάπτυξη και υλοποίηση εφαρμογών πλέγματος οι οποίες θα είναι σε θέση να εκμεταλλεύονται με αποδοτικό τρόπο τους διαθέσιμους υπολογιστικούς και αποθηκευτικούς πόρους μέσω του διαδικτύου. Το glite αποτελεί ένα ολοκληρωμένο σύνολο από επιμέρους λειτουργικά τμήματα σχεδιασμένο ώστε να επιτρέπει τον διαμοιρασμό των διαθέσιμων πόρων με αποδοτικό τρόπο ενώ παράλληλα αποκρύπτει από τους τελικούς χρήστες την πολυπλοκότητα του ετερογενούς περιβάλλοντος που χαρακτηρίζει τα υπολογιστικά δίκτυα πλέγματος. Παράλληλα με την ανάπτυξη νέου κώδικα που έγινε για τις ανάγκες του έργου, η διανομή του glite που τελικά αναπτύχθηκε χρησιμοποιεί ορισμένα σημαντικά τμήματα λογισμικού τα οποία είχαν αναπτυχθεί για τις ανάγκες άλλων ερευνητικών έργων, και συγκεκριμένα χρησιμοποιεί λογισμικό κυρίως από το LCG [7] και το VDT [8]. Η βασική φιλοσοφία στον σχεδιασμό του glite ήταν η δημιουργία βασικών λειτουργικών τμημάτων (components) με την χρήση των οποίων στην συνέχεια θα υλοποιηθούν διαφορετικοί τύποι υπηρεσιών, διαφορετικοί τύποι κόμβων όπως συνήθως αποκαλούνται, οι οποίοι έχουν ως βασικό χαρακτηριστικό την ευκολία στην εγκατάσταση και ρύθμιση στην πλατφόρμα ανάπτυξης του glite. Το λειτουργικό σύστημα που έχει επιλεγεί ως βάση του ενδιάμεσου λογισμικού glite είναι το Scientific Linux Cern [38] εκδόσεις 3 και 4. Το ενδιάμεσο λογισμικό glite πλέον χρησιμοποιείται από σχεδόν όλα τα ερευνητικά κέντρα τα οποία συμμετέχουν στο EGEE σε ολόκληρο τον κόσμο παρέχοντας την δυνατότητα σε χιλιάδες επιστήμονες να έχουν πρόσβαση στην υπολογιστική υποδομή που έχει αναπτυχθεί. Έτσι αναμένεται να αποτελέσει το βασικό λογισμικό για πάρα πολλά ερευνητικά προγράμματα σε διάφορους τομείς αν και το LCG παραμένει το βασικό ερευνητικό πρόγραμμα που χρησιμοποιεί τις υπηρεσίες του glite. 2.2 Ερευνητικά προγράμματα σχετικά με το glite Το ερευνητικό πρόγραμμα EGEE έχει ως κύριο στόχο να παρέχει στους ερευνητές πρόσβαση σε μία γεωγραφικά κατανεμημένη υποδομή ενός υπολογιστικού δικτύου 23

πλέγματος η οποία θα είναι διαθέσιμη συνεχώς 24 ώρες κάθε ημέρα. Επιπλέον δίνει βάρος στην ανάπτυξη του ενδιάμεσου λογισμικού glite καθώς και στην σωστή λειτουργία μιας πολύ μεγάλης υπολογιστικής υποδομής για την ικανοποίηση των αναγκών μιας μεγάλης επιστημονικής κοινότητας. Οι εφαρμογές που επιλέχτηκαν αρχικά στα πλαίσια του ερευνητικού προγράμματος EGEE ήταν εστιασμένες σε δύο πολύ γνωστές περιοχές εφαρμογών με μεγάλες υπολογιστικές απαιτήσεις, την Φυσική Υψηλής Ενέργειας (High Energy Physics, HEP) και την Βιοϊατρική. Η επιλογή των εφαρμογών αυτών δεν βασίστηκε μόνο στις πολύ υψηλές υπολογιστικές τους απαιτήσεις αλλά κυρίως στο ότι οι εφαρμογές αυτές ήδη χρησιμοποιούσαν την τεχνολογία πλέγματος. Έτσι κρίθηκαν οι πιο κατάλληλες δοκιμαστικές εφαρμογές για την ανάπτυξη και αξιολόγηση των διάφορων υπηρεσιών για το δίκτυο πλέγματος που κατασκευάστηκε στα πλαίσια του προγράμματος EGEE. Βέβαια μετά τα αρχικά στάδια του EGEE, πλέον στα πλαίσια του έργου έχει ενσωματωθεί ένα ευρύτερο σύνολο από εφαρμογές οι οποίες περιλαμβάνουν ένα πολύ μεγάλο εύρος από ερευνητικά πεδία όπως η Γεωλογία, η Αστροφυσική και η Υπολογιστική Χημεία. Επιπλέον επιστημονικές περιοχές είναι η Κοσμολογία καθώς επίσης ο σχεδιασμός και η ανάπτυξη φαρμάκων. Το ερευνητικό πρόγραμμα EGEE αυτή την στιγμή παρέχει μια σταθερή και αξιόπιστη υποδομή υπολογιστικού δικτύου πλέγματος η οποία χρησιμοποιεί το δικό της ενδιάμεσο λογισμικό glite, με αποτέλεσμα όλο και περισσότερες εφαρμογές να γίνονται διαθέσιμες για χρήση από τους επιστήμονες με την πάροδο του χρόνου. Στην συνέχεια παρουσιάζουμε τις εφαρμογές οι οποίες χρησιμοποιούν σήμερα στο μεγαλύτερο βαθμό την διαθέσιμη υποδομή του υπολογιστικού δικτύου πλέγματος του EGEE. Εφαρμογές Φυσικής Υψηλής Ενέργειας (HEP): Είναι μια από τις πιλοτικές εφαρμογές που επελέγησαν για την αξιολόγηση της υποδομής του EGEE. Στην πραγματικότητα είναι μια εφαρμογή της οποίας οι απαιτήσεις οδήγησαν στην ανάπτυξη σε μεγάλο βαθμό της τεχνολογίας πλέγματος Εφαρμογές Βιοϊατρικής: Αποτελούν την δεύτερη σημαντική περιοχή εφαρμογών που χρησιμοποιήθηκαν κατά την διάρκεια της ανάπτυξης και του ελέγχου της υποδομής. Η κατηγορία των εφαρμογών αυτών έχει σαφώς διαφορετικές απαιτήσεις από τις εφαρμογές του προηγούμενου πεδίου ενώ επιπλέον υπήρξε σημαντικός παράγοντας στην ανάπτυξη της υποδομής του δικτύου πλέγματος αλλά και στην βελτιστοποίηση του ενδιάμεσου λογισμικού. 24

Λοιπές εφαρμογές: Μετά την πρώτη φάση της ανάπτυξης της υποδομής του EGEE προστέθηκαν και άλλες εφαρμογές από πολλά και διαφορετικά επιστημονικά πεδία. Το εύρος των εφαρμογών που υποστηρίζονται σήμερα από αυτή την υποδομή είναι πολύ μεγάλο ενώ αναμένεται να αυξηθεί επιπλέον καθώς η τεχνολογία πλέγματος γίνεται μέρα με την ημέρα πιο προσιτή σε ένα μεγάλο πλήθος από ερευνητικά πεδία. Το LHC Computing Grid Project (LCG) [7] δημιουργήθηκε με σκοπό να προετοιμάσει την απαραίτητη υπολογιστική υποδομή για την προσομοίωση, επεξεργασία και ανάλυση των δεδομένων από τα πειράματα Large Hadron Collider (LHC). Ο LHC, ο οποίος βρίσκεται στο Ευρωπαϊκό Εργαστήριο Ατομικής Φυσικής (European Laboratory for Particle Physics CERN), αποτελεί τον μεγαλύτερο και ισχυρότερο ατομικό επιταχυντή που έχει κατασκευαστεί. Όταν ξεκινήσει η κανονική λειτουργία του επιταχυντή, στο τέλος του 2008, θα παράγει περίπου 15 Petabytes, δηλαδή 15 εκατομμύρια Gigabytes, από δεδομένα ετησίως. Επιπλέον χιλιάδες ερευνητές σε όλο τον κόσμο θα πρέπει να έχουν πρόσβαση και δυνατότητα ανάλυσης αυτής της πολύ μεγάλης ποσότητας δεδομένων. Επομένως βασικός στόχος του έργου Worldwide LHC Computing Grid (LCG) είναι να δημιουργήσει αρχικά και να συντηρήσει στην συνέχεια μια πολύ μεγάλη υποδομή αποθήκευσης και ανάλυσης δεδομένων για ολόκληρη την επιστημονική κοινότητα που θα χρησιμοποιήσει τον LHC επιταχυντή. Τα δεδομένα από τα πειράματα του CERN θα διανεμηθούν σε πολλά ερευνητικά κέντρα σε ολόκληρο τον κόσμο σύμφωνα με ένα μοντέλο τεσσάρων επιπέδων ( four-tiered) Σχήμα 2-1.Το βασικό αντίγραφο ασφαλείας του συνολικού πλήθους των δεδομένων θα αποθηκεύεται στο ίδιο το CERN, αυτό αποτελεί το Επιπέδο-0 του LCG. Αφού τα δεδομένα αυτά θα έχουν υποστεί μια αρχική επεξεργασία θα διανέμονται σε μια σειρά από ερευνητικά κέντρα που αποτελούν το Επίπεδο-1.Πρόκειται για μεγάλα υπολογιστικά κέντρα σε διάφορες χώρες σε ολόκληρο τον κόσμο με σημαντικές δυνατότητες αποθήκευσης και επεξεργασίας δεδομένων. Η πιο σημαντική λειτουργία των υποδομών του Eπιπέδου-1 είναι η διάθεση των δεδομένων τους στα ερευνητικά κέντρα που βρίσκονται στο Επιπέδο-2.Στο επίπεδο αυτό κάθε ένα ερευνητικό κέντρο αποτελείται από μία ή περισσότερες υπολογιστικές υποδομές οι οποίες μπορούν να αποθηκεύουν σημαντική ποσότητα δεδομένων ενώ παράλληλα παρέχουν ικανή υπολογιστική ισχύ για συγκεκριμένες διαδικασίες ανάλυσης. Διάφοροι επιστήμονες μπορούν να έχουν πρόσβαση στις υπηρεσίες του Επιπέδου-2 μέσω υπολογιστικών πόρων που βρίσκονται στο Επίπεδο-3, οι οποίοι μπορεί να αποτελούνται από τοπικά clusters σε κάποιο πανεπιστήμιο ή ακόμη και από ανεξάρτητους προσωπικούς υπολογιστές. 25

Σχήμα 2-1 To υπολογιστικό μοντέλο για την ανάλυση των πειραματικών δεδομένων του LHC [34] Τα ερευνητικά έργα LCG και EGEE μοιράζονται ένα μεγάλο τμήμα της υποδομής τους. Για το λόγο αυτό συχνά η υποδομή αναφέρεται ως LCG/EGEE υποδομή. Η περίπτωση των πειραμάτων LHC στο CERN αποτελεί ένα χαρακτηριστικό παράδειγμα που επιδεικνύει την ανάγκη ανάπτυξης υποδομών υπολογιστικών δικτύων πλέγματος καθώς και τα πλεονεκτημάτων που αυτές παρέχουν σε τέτοιες εφαρμογές. Τα πειράματα που θα χρησιμοποιούν τον επιταχυντή του CERN (ALICE, ATLAS, CMS και LHCb [54]) θα παράγουν τεράστιες ποσότητες δεδομένων. Η αποθήκευση και η επεξεργασία για την ανάλυση αυτών των δεδομένων απαιτεί τεράστιους αποθηκευτικούς και υπολογιστικούς πόρους. Εκτός από το απαγορευτικό κόστος που θα είχε η ανάπτυξη τέτοιων πόρων, παράλληλα απαιτούν υπερβολική ανθρώπινη προσπάθεια για την λειτουργία και την συντήρηση τους. Για τους λόγους αυτούς κρίθηκε ότι δεν είναι εφικτό να συγκεντρωθούν όλοι οι απαραίτητοι πόροι σε ένα μόνο ερευνητικό κέντρο, επομένως η υπολογιστική υποδομή του LCG αποφασίστηκε να υλοποιηθεί ως ένα γεωγραφικά κατανεμημένο υπολογιστικό δίκτυο πλέγματος. Αυτό πρακτικά σημαίνει ότι η υπηρεσία που θα χρησιμοποιεί τους υπολογιστικούς και αποθηκευτικούς πόρους βρίσκεται εγκατεστημένη σε ένα πολύ μεγάλο αριθμό από υπολογιστικές υποδομές σε διάφορες χώρες οι οποίες διασυνδέονται μέσω συνδέσμων 26

πολύ μεγάλης ταχύτητας. Πρόκειται για οπτικούς συνδέσμους με ταχύτητες τουλάχιστον ορισμένες δεκάδες Gbits/sec. Το ενδιάμεσο λογισμικό glite που χρησιμοποιείται για την δημιουργία της υποδομής κρύβει από τον χρήστη το μεγαλύτερο μέρος της πολυπλοκότητας ενός τέτοιου περιβάλλοντος. Αυτό έχει ως αποτέλεσμα οι τελικοί χρήστες να έχουν την εντύπωση ότι το σύνολο των πόρων της υποδομής είναι διαθέσιμο μέσω ενός συνεκτικού εικονικού υπολογιστικού κέντρου. Οι χρήστες που χρησιμοποιούν την υποδομή του LCG/EGEE ομαδοποιούνται σε εικονικούς οργανισμούς (Virtual Organizations VOs) [29][30]. Ένας εικονικός οργανισμός αποτελείται από ένα σύνολο από ανεξάρτητους χρήστες ή/και ερευνητικά κέντρα που έχουν συγκεκριμένα δικαιώματα πρόσβασης σε υπολογιστές, λογισμικό και δεδομένα. Ο διαμοιρασμός οποιουδήποτε πόρου (υπολογιστικού, αποθηκευτικού, πειραματικά όργανα, λογισμικό, δεδομένα) στα πλαίσια ενός εικονικού οργανισμού είναι πλήρως ελεγχόμενος. Αυτό σημαίνει ότι υπάρχει συγκεκριμένη συμφωνία μεταξύ του διαχειριστή του κάθε πόρου και των χρηστών σχετικά με το ποιός έχει δικαίωμα πρόσβασης και ποιά ακριβώς είναι τα δικαιώματα χρήσης ενός συγκεκριμένου πόρου. Οι εικονικοί οργανισμοί στο LCG/EGEE αντιστοιχούν σε πραγματικούς οργανισμούς ή ερευνητικά προγράμματα, όπως για παράδειγμα τα τέσσερα πειράματα στα πλαίσια του LHC (ALICE, ATLAS, CMS και LHCb). Μια πλήρως ενημερωμένη λίστα με όλους τους εικονικούς οργανισμούς που χρησιμοποιούν τις υποδομές του LCG/EGEE υπάρχει στην ιστοσελίδα του CIC [9]. 2.3 Η υποδομή του LCG/EGEE Στο LCG/EGEE συμμετέχουν περισσότεροι από 140 ερευνητικοί οργανισμοί και ακαδημαϊκά ιδρύματα από ολόκληρο τον κόσμο με στόχο την δημιουργία μιας αξιόπιστης και ευρείας κλίμακας υπολογιστικής υποδομής διαθέσιμης τόσο στην ευρωπαϊκή όσο και στην παγκόσμια ερευνητική κοινότητα. Σήμερα σε αυτή την προσπάθεια παίρνουν μέρος 300 sites από 50 χώρες ενώ περισσότερες από 80.000 CPUs είναι διαθέσιμες σε 10.000 περίπου χρήστες 24 ώρες κάθε μέρα, επτά ημέρες την εβδομάδα [6]. Η υποδομή αυτή έχει την δυνατότητα να χειριστεί περισσότερες από 300.000 εργασίες κάθε ημέρα από διάφορα επιστημονικά πεδία το εύρος των οποίων περιλαμβάνει εφαρμογές από την βιοϊατρική έως την πυρηνική φυσική. Οι υπηρεσίες του δικτύου πλέγματος του EGEE είναι ιδανικές για οποιαδήποτε επιστημονική έρευνα και κυρίως για τα ερευνητικά προγράμματα στα οποία ο χρόνος και οι απαραίτητοι υπολογιστικοί και αποθηκευτικοί πόροι που χρειάζονται για να τρέξουν οι εφαρμογές έχουν μεγέθη τα οποία θεωρούνται μη πρακτικά όταν χρησιμοποιούνται οι παραδοσιακές προσεγγίσεις. 27

Η κατάσταση του δικτύου πλέγματος της υποδομής του LCG/EGEE μπορεί να εξεταστεί οποιαδήποτε χρονική στιγμή από διάφορες ιστοσελίδες οι οποίες μας παρέχουν την δυνατότητα παρακολούθησης σε σχεδόν πραγματικό χρόνο της κατάστασης των διαθέσιμων πόρων. Οι ιστοσελίδες αυτές βρίσκονται διασυνδεδεμένες με την κεντρική ιστοσελίδα της υπηρεσίας παρακολούθησης του κέντρου ελέγχου του δικτύου πλέγματος του LCG/EGEE Σχήμα 2-2 (Grid Operations Centre GOC) [31]. Στο LCG/EGEE κάθε site επιλέγει ποια VOs θα υποστηρίζει και σε ποιο επίπεδο θα παρέχει τις υπηρεσίες του στους χρήστες, γενικά οι χρήστες δεν έχουν πρόσβαση σε όλα τα sites της υποδομής. Τα sites διαφέρουν σε πολύ μεγάλο βαθμό στο μέγεθος και τις δυνατότητες των υπολογιστικών και αποθηκευτικών πόρων που παρέχουν. Για παράδειγμα υπάρχουν sites με δυνατότητα αποθήκευσης μερικών δεκάδων GB από δεδομένα, ενώ άλλα παρέχουν την δυνατότητα αποθήκευσης δεκάδων PB δεδομένων. Παρόμοια ανομοιογένεια υπάρχει και στις διαθέσιμες CPUs. Στην περίπτωση του LCG/EGEE τα μεγαλύτερα sites επιλέγονται να παρέχουν υπηρεσίες Επιπέδου-1 και παίζουν κεντρικό ρόλο στην αποθήκευση και επεξεργασία των δεδομένων που παράγουν τα ερευνητικά προγράμματα του έργου. Σχήμα 2-2 Σελίδα παρακολούθησης σε πραγματικό χρόνο της υποδομής του LCG/EGEE 28

Τέλος ένα μέρος της συνολικής υποδομής του LCG/EGEE χρησιμοποιείται ως ένα ανεξάρτητο δίκτυο πλέγματος με μικρό σχετικά μέγεθος και λιγότερες δυνατότητες από το κανονικό δίκτυο πλέγματος. Σε αυτό γίνεται ο έλεγχος των νέων εκδόσεων του ενδιάμεσου λογισμικού για το LCG/EGEE καθώς επίσης οι μετρήσεις και ο έλεγχος της ποιότητας γενικότερα για τις εφαρμογές του έργου. Αποτελεί σημαντική υποδομή αφού επιτρέπει οι νέες υπηρεσίες να αξιολογούνται σε μια πραγματική υποδομή τόσο από τα διάφορα sites όσο και από τους χρήστες πριν αποτελέσουν μέρος των υπηρεσιών του βασικού LCG/EGEE δικτύου πλέγματος. 2.4 Αρχιτεκτονική του ενδιάμεσου λογισμικού glite στο LCG/EGEE Στην ενότητα αυτή θα παρουσιάσουμε την αρχιτεκτονική του ενδιάμεσου λογισμικού glite που αναπτύχθηκε στα πλαίσια του έργου LCG/EGEE. Επιπλέον θα περιγράψουμε τις βασικές υπηρεσίες που παρέχει στους χρήστες το ενδιάμεσο λογισμικό glite. Περισσότερες λεπτομέρειες υπάρχουν στο [19]. Σχήμα 2-3 Η αρχιτεκτονική και οι βασικές υπηρεσίες του glite [19] 29

Το ενδιάμεσο λογισμικό glite έχει σχεδιαστεί με βάση την Service Oriented αρχιτεκτονική (SOA) [27] μια επιλογή η οποία διευκολύνει την διαλειτουργικότητα ανάμεσα στις υπηρεσίες του δικτύου πλέγματος ενώ μας εξασφαλίζει ευκολότερη και αποτελεσματικότερη συμβατότητα με τα επερχόμενα νέα πρότυπα, όπως το OGSA [32], τα οποία επίσης βασίζονται στις ίδιες αρχές. Το βασικό χαρακτηριστικό της αρχιτεκτονικής SOA είναι ότι δίνει βάση στις υπηρεσίες. Οι υπηρεσίες του ενδιάμεσου λογισμικού αναμένεται να λειτουργούν όλες μαζί με ένα συντονισμένο τρόπο με βασικό σκοπό να αναλαμβάνουν την εξυπηρέτηση των απαιτήσεων των τελικών χρηστών. Ωστόσο οι υπηρεσίες αυτές μπορούν επίσης να αναπτυχθούν και να χρησιμοποιηθούν ανεξάρτητα η μια από την άλλη, επιτρέποντας με αυτό τον τρόπο την αξιοποίηση τους σε ένα μεγάλο σύνολο από εφαρμογές. Στo Σχήμα 2-3 παρουσιάζονται οι υπηρεσίες υψηλού επιπέδου τις οποίες παρέχει στους χρήστες το ενδιάμεσο λογισμικό glite. Το σύνολο των υπηρεσιών συνήθως κατηγοριοποιείται σε πέντε βασικές κατηγορίες υπηρεσιών που τις παρουσιάζουμε στην συνέχεια. Υπηρεσίες Ασφάλειας (Security services) περιλαμβάνουν κυρίως τις υπηρεσίες πιστοποίησης (Authentication) και εξουσιοδότησης (Authorization). Οι υπηρεσίες ασφαλείας χρησιμοποιούνται για τον προσδιορισμό της ταυτότητας των διαφόρων οντοτήτων (χρήστες, υπηρεσίες, πόροι, συστήματα) και για την χορήγηση άδειας πρόσβασης ή την άρνηση της πρόσβασης στις διάφορες υπηρεσίες και τους πόρους. Όπως έχουμε ήδη αναφέρει οι χρήστες στα πλαίσια του LCG/EGEE πρέπει να ανήκουν σε κάποιο αναγνωρισμένο εικονικό οργανισμό αφού διαφορετικά δεν μπορούν να έχουν κανένα δικαίωμα πρόσβασης και χρήσης των πόρων και των υπηρεσιών του δικτύου πλέγματος. Γενικά ο κάθε χρήστης θα πρέπει να επικοινωνήσει με τον διαχειριστή του εικονικού οργανισμού που επιθυμεί να γίνει μέλος και αφού δώσει ορισμένα στοιχεία και γίνει η ταυτοποίηση του με επιτυχία τότε γίνεται μέλος του εικονικού οργανισμού. Η υποδομή Grid Security Infrastructure (GSI) είναι ο μηχανισμός της υποδομής LCG/EGEE ο οποίος εξασφαλίζει την ασφαλή πιστοποίηση των χρηστών και γενικότερα την ασφάλεια στις επικοινωνίες στο κατανεμημένο και ετερογενές δίκτυο [55]. Η υποδομή GSI βασίζεται στην χρήση της τεχνικής δημοσίου κλειδιού κρυπτογράφησης, στα ψηφιακά πιστοποιητικά X.509 και στα πρωτόκολλα επικοινωνίας Secure Sockets Layer (SSL) και Transport Layer Security (TLS). Για να μπορέσει ένα χρήστης να ταυτοποιήθει σε κάποιο πόρο ή υπηρεσία του δικτύου πλέγματος θα πρέπει να είναι κάτοχος ενός έγκυρου ψηφιακού πιστοποιητικού Χ.509. Ένα Χ.509 πιστοποιητικό θεωρείται έγκυρο από το glite όταν έχει εκδοθεί από κάποια αρχή πιστοποίησης (Certification Authority CA) που το ενδιάμεσο λογισμικό θεωρεί έμπιστη. Επιπλέον τέτοια ψηφιακά πιστοποιητικά εκτός από τους χρήστες παρέχονται 30

και στους πόρους του δικτύου για να μπορούν οι διάφοροι πόροι να ταυτοποιούνται μεταξύ τους και προς τους χρήστες. Για περισσότερη ασφάλεια στην επικοινωνία του χρήστη με την υποδομή δεν χρησιμοποιούνται τα ίδια τα ψηφιακά πιστοποιητικά, αλλά ένας μηχανισμός που βασίζεται σε προσωρινά πιστοποιητικά (proxy certificate). Το ψηφιακό πιστοποιητικό του χρήστη του οποίου το ιδιωτικό κλειδί κρυπτογράφησης προστατεύεται από κάποιο μυστικό κωδικό χρησιμοποιείται για την παραγωγή ενός προσωρινού πιστοποιητικού το οποίο χρησιμοποιεί στην πραγματικότητα ο χρήστης και το οποίο δεν χρειάζεται κωδικό. Με την διαδικασία αυτή δεν χρειάζεται να μεταδίδονται δεδομένα στο δίκτυο που να περιέχουν το ιδιωτικό κλειδί κρυπτογράφησης που παραμένει στο λογαριασμό του χρήστη. Βέβαια για να μην υπάρχουν προβλήματα από την υποκλοπή των προσωρινών πιστοποιητικών τα οποία δεν έχουν κωδικό για προστασία έχουν σχεδιαστεί να έχουν περιορισμένη χρονική ισχύ μέχρι 24 ώρες το πολύ. Ο έλεγχος για τον αν ένας χρήστης έχει δικαίωμα πρόσβασης σε κάποιο συγκεκριμένο πόρο της υποδομής ή όχι μπορεί να γίνει με δύο διαφορετικούς τρόπους. Ο πρώτος είναι πολύ απλός και βασίζεται στον grid-mapfile μηχανισμό. Σε αυτή την περίπτωση κάθε πόρος του δικτύου πλέγματος διατηρεί ένα τοπικό αρχείο grid-mapfile,το οποίο βρίσκεται στον κατάλογο /etc/grid-security, που χρησιμοποιείται για την αντιστοίχιση των ψηφιακών πιστοποιητικών των χρηστών σε τοπικούς λογαριασμούς. Όταν μια αίτηση για κάποια υπηρεσία φτάνει στον κάθε κόμβο γίνεται έλεγχος του Subject Name του χρήστη που περιέχεται στο προσωρινό πιστοποιητικό για το αν ταιριάζει με κάποιο από τα περιεχόμενα του αρχείου grid-mapfile. Αν ναι, τότε ο χρήστης αντιστοιχίζεται στον συγκεκριμένο τοπικό λογαριασμό και ακολουθεί η εξυπηρέτηση του αιτήματος διαφορετικά επιστρέφεται κατάλληλο μήνυμα σφάλματος. Ο δεύτερος τρόπος βασίζεται στην υπηρεσία Virtual Organisation Membership Service (VOMS) και στον μηχανισμό LCAS/LCMAPS [56] ο οποίος μας παρέχει την δυνατότητα για ένα πιο λεπτομερή ορισμό των δικαιωμάτων των χρηστών στους πόρους της υποδομής. Το glite παρέχει ένα ειδικό πακέτο λογισμικού που υλοποιεί την υπηρεσία VOMS και ονομάζεται glite-voms [29][58]. Στην καρδιά της υπηρεσίας βρίσκεται μια βάση δεδομένων η οποία παρέχει πληροφορίες για τους χρήστες σε μια ειδική μορφή που ονομάζεται VOMS credentials. Το glite παρέχει στους χρήστες για εγκατάσταση δύο τύπους της υπηρεσίας ανάλογα με την βάση δεδομένων που χρησιμοποιείται και μπορεί να είναι MySQL ή ORACLE. Επιπλέον η διαχείριση της υπηρεσίας γίνεται μέσω ειδικών εντολών από την γραμμή διαταγών του VOMS ή μέσω μιας διαδικτυακής διεπαφής από οποιοδήποτε φυλλομετρητή. Η άλλη βασική υπηρεσία που μας παρέχει το glite-voms είναι ο VOMS εξυπηρετητής που χρησιμοποιώντας την βάση δεδομένων επιστρέφει σημαντικές πληροφορίες για την εξουσιοδότηση των χρηστών. Οι πληροφορίες ορίζουν τον εικονικό οργανισμό του 31

χρήστη, την ομάδα των χρηστών που ανήκει ο χρήστης στον συγκεκριμένο εικονικό οργανισμό, αφού σε κάθε εικονικό οργανισμό υπάρχει μια ιεραρχική οργάνωση των χρηστών σε ομάδες με διαφορετικά δικαιώματα για την κάθε ομάδα. Τέλος αν έχουν οριστεί από τον διαχειριστή ειδικά δικαιώματα για τον κάθε χρήστη τα επιστρέφει και αυτά. Για παράδειγμα κάποιος χρήστης μπορεί να ανήκει σε μια ομάδα που έχει διαφορετική αντιμετώπιση από την υποδομή ενώ επιπλέον μόνο ο χρήστης αυτός μπορεί να έχει το δικαίωμα εκτέλεσης ειδικών προγραμμάτων. Το σύνολο αυτών των πληροφοριών παρέχει η υπηρεσία VOMS στις υπόλοιπες υπηρεσίες του ενδιάμεσου λογισμικού. Υπηρεσίες πληροφόρησης και εποπτείας (Information and Monitoring Services) οι οποίες μας παρέχουν μηχανισμούς για την δημοσίευση πληροφοριών σχετικές με την κατάσταση των λειτουργικών τμημάτων του δικτύου πλέγματος αλλά και μηχανισμούς για την λήψη πληροφοριών από τα διάφορα τμήματα του ενδιάμεσου λογισμικού. Το σύστημα πληροφόρησης και εποπτείας μπορεί να χρησιμοποιηθεί άμεσα όπως για παράδειγμα για την δημοσίευση πληροφοριών σχετικά με την κατάσταση των διαφόρων πόρων του συστήματος. Επιπλέον μπορεί να χρησιμοποιηθεί ως βάση για την ανάπτυξη πιο εξειδικευμένων υπηρεσιών. Παραδείγματα αυτής της περίπτωσςη αποτελούν η υπηρεσία παρακολούθησης της εκτέλεσης εργασιών και η υπηρεσία εποπτείας της απόδοσης του δικτύου που έχουν υλοποιηθεί στο ενδιάμεσο λογισμικό glite [21]. Η υπηρεσία πληροφόρησης, Information Service (IS), παρέχει πληροφορίες σχετικά με τους διαθέσιμους πόρους του δικτύου πλέγματος καθώς και αναλυτικές πληροφορίες για την κατάσταση των διαθέσιμων πόρων. Για παράδειγμα στην περίπτωση ενός υπολογιστικού πόρου, CE, μας ενημερώνει για το σύνολο των CPUs που διαθέτει, τα χαρακτηριστικά τους, πόσες χρησιμοποιούνται, το λογισμικό που βρίσκεται εγκατεστημένο και πολλές άλλες πληροφορίες. Το σύνολο των πληροφοριών που μας παρέχει η υπηρεσία πληροφόρησης είναι πολύ σημαντικό για την αποδοτική λειτουργία ολόκληρου του δικτύου πλέγματος αφού με την χρήση των υπηρεσιών πληροφόρησης γίνεται η ανίχνευση των πόρων του συστήματος. Η πλειοψηφία των στοιχείων που παρέχονται από αυτή την υπηρεσία ακολουθούν το σχήμα GLUE [21], το οποίο μας παρέχει ένα κοινό εννοιολογικό μοντέλο δεδομένων το οποίο μπορεί να χρησιμοποιηθεί για την αποδοτική παρακολούθηση και ανίχνευση των πόρων ενός δικτύου πλέγματος. Το ενδιάμεσο λογισμικό glite 3.1 χρησιμοποιεί δύο συστήματα παροχής πληροφοριών το πρώτο είναι η υπηρεσία Globus Monitoring and Discovery Service (MDS)[59], που χρησιμοποιείται για την ανίχνευση των πόρων στο δίκτυο πλέγματος αλλά και για την δημοσίευση της κατάστασης των πόρων. Το δεύτερο σύστημα είναι το Relational Grid Monitoring Architecture (R-GMA) [60] που χρησιμοποιείται για την παροχή 32

πληροφοριών σχετικών με τους χρήστες του δικτύου πλέγματος για θέματα σχετικά με την διαχείριση των λογαριασμών, την πρόσβαση στις υπηρεσίες και γενικά για την καταγραφή του ιστορικού ενός χρήστη. Υπηρεσία παρακολούθησης και ανίχνευσης (Monitoring and Discovery Service) Η υπηρεσία ΜDS υλοποιεί το σχήμα GLUE χρησιμοποιώντας το OpenLDAP [52], μια ανοιχτού κώδικα υλοποίηση του πρωτοκόλλου Lightweight Directory Access Protocol (LDAP). Το LDAP αποτελεί μια εξειδικευμένη περίπτωση βάσης δεδομένων η οποία έχει σχεδιαστεί να παρέχει βελτιστοποιημένη αναζήτηση, ανάγνωση και πρόσβαση στις πληροφορίες που περιέχει. Η προσπέλαση των δεδομένων της υπηρεσίας MDS γίνεται με μη ασφαλή τρόπο αφού δεν χρησιμοποιείται για προστασία κάποιος από τους μηχανισμούς της GSI υποδομής. Αυτό ισχύει τόσο για την περίπτωση της ανάγνωσης των δεδομένων από κάποια υπηρεσία ή χρήστη, όσο και για την περίπτωση της εγγραφής των δεδομένων από τις υπηρεσίες που τα παράγουν. Το μοντέλο πληροφοριών του LDAP βασίζεται στην έννοια των εγγραφών (entries). Πρόκειται για αντικείμενα όπως ένας υπολογιστής, ένας εξυπηρετητής, ένα πειραματικό όργανο, μια υπηρεσία ή ένα πρόσωπο. Κάθε εγγραφή έχει μια ή περισσότερες ιδιότητες και ένα αναγνωριστικό όνομα (Distinguished Name DN) το οποίο την προσδιορίζει μοναδικά, ενώ κάθε ιδιότητα χαρακτηρίζεται από ένα τύπο και μία ή περισσότερες τιμές. Το αναγνωριστικό όνομα αποτελείται από μια ακολουθία από ζεύγη ιδιότητα-τιμή ενώ με βάση τα αναγνωριστικά τους ονόματα οι εγγραφές διατάσσονται σε μια ιεραρχική δεντρική δομή που ονομάζεται Directory Information Tree (DIT). Στo Σχήμα 2-4 παρουσιάζεται το ιεραρχικό δέντρο ενός site σε ένα δίκτυο πλέγματος που χρησιμοποιεί το glite.στη ρίζα του δέντρου των πληροφοριών βρίσκεται η εγγραφή που προσδιορίζει το ίδιο το site. Οι εγγραφές που είναι σχετικές με πληροφορίες που αφορούν το site, τους υπολογιστικούς πόρους, τους αποθηκευτικούς πόρους και τις υπόλοιπες υπηρεσίες βρίσκονται σε χαμηλότερους κόμβους του δέντρου. Όπως μπορούμε να δούμε η οργάνωση των πληροφοριών δεν περιορίζεται μόνο σε δύο επίπεδα αφού για παράδειγμα τα στοιχεία για τους αποθηκευτικούς πόρους μπορούν να αναλυθούν σε επιπλέον εγγραφές. Οι πληροφορίες που μπορούν να αποθηκευτούν σε κάθε μια εγγραφή του DIT δέντρου καθορίζονται από το LDAP σχήμα το οποίο επιπλέον προσδιορίζει τις κλάσεις αντικειμένων, object classes. Κάθε κλάση αντικειμένου είναι ένα σύνολο από υποχρεωτικά και προαιρετικά ονόματα ιδιοτήτων και έγκυρων τιμών που μπορούν να έχουν οι ιδιότητες. Δηλαδή όπως μια εγγραφή καταλόγου περιγράφει κάποιο αντικείμενο έτσι και μία κλάση αντικειμένου μπορεί να θεωρηθεί ως μια γενικότερη περιγραφή ενός αντικειμένου. 33