1 / 50

Εισαγωγή στις τεχνολογίες Κατανεμημένου Υπολογισμού

Εισαγωγή στις τεχνολογίες Κατανεμημένου Υπολογισμού (με έμφαση στο δίκτυα πλέγματ os - g rid networks ). Τι είναι το Grid?. To World Wide Web παρέχει πρόσβαση σε πληροφορίες αποθηκευμένες σε εκατομμύρια διαφορετικές τοποθεσίες ανά τον κόσμο.

jennis
Download Presentation

Εισαγωγή στις τεχνολογίες Κατανεμημένου Υπολογισμού

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ΕισαγωγήστιςτεχνολογίεςΚατανεμημένου Υπολογισμού (με έμφαση στο δίκτυα πλέγματos - grid networks)

  2. ΤιείναιτοGrid? • ToWorldWideWebπαρέχειπρόσβασησεπληροφορίεςαποθηκευμένεςσεεκατομμύριαδιαφορετικέςτοποθεσίεςανάτονκόσμο. • Κατ’αναλογίατοGridείναιμίααναπτυσσόμενηυποδομήπουπαρέχειπρόσβασησευπολογιστικήισχύκαιαποθηκευτικόχώροκατανεμημένασεόλοντονκόσμο.

  3. ΤιείναιτοGrid? • Συλλογήγεωγραφικάκατανεμημένωνετερογενώνπόρων • ΜονάδεςΕπεξεργασίας • ΑποθηκευτικέςΜονάδες • ΑποτελείταιαπόδιασυνδεδεμέναμέσωτουInternet, clusters • Προσφέρειπρόσβασησεέναενιαίοισχυρόεικονικόυπολογιστή • Υποβολήαπότουςχρήστεςμεγάλουπλήθουςεργασιώνχωρίςναενδιαφέρονταιπουθαεκτελεστούν

  4. ΠοιαείναιταχαρακτηριστικάενόςGrid συστήματος? • Οι πόροι ανήκουν σε διαφορετικούς διαχειριστικούς τομείς και διαφορετικούς φορείς • Οι πόροι είναι γεωγραφικά κατανεμημένοι • Οι πόροι χαρακτηρίζονται από μεγάλη ετερογένεια • Ισχύουν διαφορετικές πολιτικές διαχείρισης των πόρων

  5. ΠοιεςείναιοιανάγκεςπουμαςοδήγησανστοGrid?ΠοιεςείναιοιανάγκεςπουμαςοδήγησανστοGrid?

  6. LHC (Large HadronCollider) πείραμα • Το LHC θα φέρει σε σύγκρουση δύο ακτίνες πρωτονίων • Εάν το Higgs μποζόνιου υπάρχει, τότε σίγουρα το LHC θα το βρει! • Διεξαγωγή 4 πειραμάτων με ανιχνευτές • ALICE • ATLAS • CMS • LHCB

  7. ΠαραγωγήδεδομένωναπότουςΑνιχνευτέςτουLHCΠαραγωγήδεδομένωναπότουςΑνιχνευτέςτουLHC

  8. ΤιθέλουνοιεπιστήμονεςτουCERN αλλάκαιγενικότερα? • Απεριόριστη υπολογιστική ισχύ • Απεριόριστο αποθηκευτικό χώρο • Αξιόπιστη πρόσβαση σε κοινούς πόρους, δεδομένα, εφαρμογές και αποτελέσματα που προέρχονται από την επεξεργασία των δεδομένων • Δυνατότητα να συνεργάζονται με συναδέλφους απλά, αποτελεσματικά Solution: Grid Computing !!!!!!!!!!!!!!!!!!!

  9. Enabling Grids for E-Science(EGEE) • Αναπτυξιακό έργο της Ευρωπαϊκής Ένωσης με σκοπό την δημιουργία πλέγματος (Grid) στην Ευρώπη • Η υποδομή αυτή είναι διαθέσιμη στην επιστημονική κοινότητα 24 ώρες την ημέρα και 7 ημέρες την εβδομάδα • Παρέχει: • 202 sites • ~30.000 CPU • ~12.500TB

  10. HellasGride-Infrastructure • Sites: • HG-01-GRNET • HG-02-IASA • HG-03-AUTH • HG-04-CTI-CEID • ΗG-05-FORTH • HG-06-EKT

  11. HG-04-CTI-CEID site

  12. HG-04-CTI-CEID site • The HG-04-CTI-CEID siteτέθηκεσελειτουργίατονΦεβρουάριοτου2006 • Τοcluster αποτελείταιαπόδύοracks με64 HP servers. Κάθεserver έχειdual Intel Xeon CPU στα3.4GHz • Υπάρχουν4 HP DL360 servers, κάθεέναςεκτωνοποίωνέχειέναν80GB SCSI σκληρόδίσκο, 2GB RAM καιδύοεπεξεργαστές. Αυτοίοιservers αποτελούνταβασικάτμήματατουsite (management, computing element, storage element, monitoring) • Ταυπόλοιπα60 μηχανήματα(HP DL140 servers) λειτουργούνωςWorking Nodes,κάθεέναςεκτωνοποίωνέχει80GB SATA σκληρόδίσκο, 2GB RAM καιδύοεπεξεργαστές • Τοrack επιπλέονπεριλαμβάνειέναSAN (Storage Area Network) το οποίο ελέγχει 14 SCSI δίσκους (300GB οκαθένας) τουκύριουαποθηκευτικούχώρουκαιέναoptical switchγιατηνδιασύνδεσητωνservers μετονκύριοαποθηκευτικόχώρο • ΗσυνολικήχωρητικότητατουStorage Element είναι4.2TB.

  13. ΤιχρειάζεταιγιαναχρησιμοποιήσωτοGRID(μεαπλάλόγια)ΤιχρειάζεταιγιαναχρησιμοποιήσωτοGRID(μεαπλάλόγια) Μια επιστημονική ομάδα που διαθέτει υπολογιστικούς πόρους και θα με δεχθεί για να τους χρησιμοποιήσω Ένας υπολογιστής με το κατάλληλο λογισμικό Μια Ταυτότητα

  14. Τι χρειάζεται (τυπικά) • ΓιαναχρησιμοποιήσεικάποιοςτηνυποδομήGrid τουEGEE πρέπει: • ΝαέχειπρόσβασησεέναUser Interface(UI) μηχάνηματοοποίοέχειεγκατεστημένοτοαπαραίτητοclientλογισμικόγιατηνανάπτυξηκαιεκτέλεσηεφαρμογώνστηνυποδομήGrid τουEGEE. • Ναέχειαποκτήσειέναψηφιακόπιστοποιητικό(Digitalcertificate)απότηνδιαπιστευμένηεθνικήΑρχή ΈκδοσηςΠιστοποιητικών(Certification Authority –CA). • ΝαγίνειμέλοςενόςυπάρχοντοςΕικονικούΟργανισμού(VirtualOrganization–VO) ήναζητήσειτηνδημιουργίαενόςνέουΕικονικούΟργανισμού.

  15. User Interface • ΈναUIδενείναιτίποτεάλλοαπόέναLinuxμηχάνηματοοποίοέχειεγκατεστημένοόλοτοαπαραίτητολογισμικόπελάτη, ταAPIsκαιεργαλείαπουαπαιτούνταιγιατηνανάπτυξηκαιεκτέλεσηεφαρμογώνστοGrid. • ΑποτελείτηδιεπαφήκαιτοσημείοπρόσβασηςενόςχρήστηστοGrid. • ΓιαναχρησιμοποιήσετετοGridθαπρέπεινααποκτήσετελογαριασμόσεκάποιομηχάνημαUI

  16. Ψηφιακό πιστοποιητικό Χ.509 • Έναψηφιακόπιστοποιητικόαποτελεί μίαηλεκτρονικήταυτότητααπαραίτητηγιατηνπρόσβασησαςστηνυποδομήτουGrid • Κάθεοντότητα(χρήστης, υπολογιστικόμηχάνημα, άλλοςπόρος) πρέπεινααποκτήσειέναπιστοποιητικό • Τοπιστοποιητικόπρέπειναπεριλαμβάνειπληροφορίες, όπωςτηνημερομηνίαλήξηςτου,τηνΑρχήΠιστοποίησηςαπότηνοποίαυπογράφηκε, τοδημόσιοκλειδίτουκατόχουκαιέναθέμα • Τοθέματουπιστοποιητικού(DN)προσδιορίζειμοναδικάτονκάτοχοτουστοGrid καιαποτελείταιαπότα εξήςπεδία: • C= Χώρατουκατόχου • O= Οργανισμόςτουκατόχου • OU = Τμήματουοργανισμούστοοποίοανήκειοκάτοχος • CN = Όνοματουχρήστηήτουπόρου

  17. Εικονικός Οργανισμός (Virtual Organization) • ΈναςVO είναιμίαομάδααπόχρήστεςοιοποίοισυνήθωςεργάζονταιστοίδιοέργοκαιχρησιμοποιούντοίδιολογισμικόεφαρμογώνστοGrid. • ΓιαναμπορείκάποιοςναχρησιμοποιήσειτηνυποδομήτουGrid(π.χ. Ναυποβάλλειεργασίες, ναμεταφέρειαρχείακτλ),πρέπειναγίνειμέλοςενόςVO. • ΜίαλίστατωνυπαρχόντωνEGEEVOsείναιδιαθέσιμηστονπαρακάτωδικτυακότόπο: • https://lcg-registrar.cern.ch/virtual_organization.html.

  18. Middleware • Λογισμικό(σύνολοαπόservices) πουοργανώνεικαιενοποιείδιαφορετικούςυπολογιστικούςπόρουςπουανήκουνσεέναGrid • ΤοmiddlewareτουGridκρύβειμεγάλομέροςαπότηνπολυπλοκότητατουGridπεριβάλλοντοςαπότοχρήστηκαιτουδίνειτηνεντύπωσηότιόλοιοιπόροιείναι διαθέσιμοισεαυτόνσεέναενιαίοεικονικόκέντρο

  19. gLite Middleware for Grid Computing • ΑναπτύχθηκεσταπλαίσιατουέργουEGEE • Στηνανάπτυξητουσυμμετέχουν80 άτομααπό12 διαφορετικάακαδημαϊκάκαιβιομηχανικάευρωπαϊκάκέντρα

  20. Βασικά υποσυστήματα του glite • Πρόσβαση • ΤοσύστημααπότοοποίοοιχρήστεςυποβάλλουνδιεργασίεςστοGrid • Υπηρεσίες Ασφάλειας • Ασφαλής Πρόσβαση • Χωρισμός των χρηστών σε Virtual Organizations (VO) • Υπηρεσίες Πληροφόρησης και Παρακολούθησης • Συγκέντρωση πληροφοριών σχετικά με τα στατικά και τα δυναμικά χαρακτηριστικά στων πόρων του δικτύου • Παρακολούθηση και Καταγραφή στατιστικών • Globus Monitoring and Discovery Service (MDS) • Relational Grid Monitoring Architecture (RGMA) • Υπηρεσίες Διαχείρισης Εργασιών • Worklod Management System (WMS) • Λαμβάνειτιςεντολέςχρηστώνγιατηνυποβολήμίαςεργασίας • Εξετάζειτουςκαταλόγουςπληροφοριώνγιαναβρειτουςκατάλληλουςυπολογιστικούςπόρουςγιατηνεκτέλεσητηςεργασίας • Computing Element (CE) • ΔιαχειρίζεταιμίαφάρμαομογενώνυπολογιστικώνκόμβωνταοποίαονομάζονταιWorker Nodes • Εκτελείτιςβασικέςσυναρτήσειςτωνουρώναναμονής • Χρησιμοποιείταιγια τηνυποβολήτωνεργασιώνγιαεκτέλεσησταWorker nodes • Παρακολουθείτηνκατάστασηεκτέλεσηςμίαςεργασίας • Υπηρεσίες Διαχείρισης Δεδομένων • Storage Element (SE) • File & Replica Catalog Service • Data Management

  21. Monitoring and Discovery Service (MDS) Οι υπολογιστικοί και αποθηκευτικοί πόροι δημιουργούν τόσο στατικές όσο και δυναμικές πληροφορίες. Οι πληροφορίες αυτές πρέπει να συλλεχθούν τόσο για στατιστικούς σκοπούς όσο και για να βοηθήσουν τον task scheduler να πάρει τις αποφάσεις του. Για τον σκοπό αυτό υπάρχει η MDS υπηρεσία. Σε κάθε site, το Berkeley Database Information Index (BDII) χρησιμοποιείται για την αποθήκευση και προώθηση της πληροφορίας που συλλέγεται από τους τοπικούς πόρους, μέσω τωνGrid Resource Information Servers(GRIS). Πιο ψηλά στην ιεραρχία υπάρχουν BDIIs που συλλέγουν πληροφορία από τα site BDIIs. 21

  22. Workload Management System (WMS) • Το WMS είναι υπεύθυνο για την διαχείριση των εργασιών (tasks)που υποβάλλονται στο Grid. • Βασικό μέλημα η επιλογή των πόρων για την εκτέλεση των εργασιών (scheduling), που πραγματοποιείται από το Workload Manager(WM) υποσύστημα του WMS. • Ο υπολογιστικός πόρος που επιλέγεται είναι το αποτέλεσμα μίας διαδικασίας αντιστοίχησης των απαιτήσεων της εργασίας και των διαθέσιμων πόρων. • Τα υποσυστήματα του WMS που σχετίζονται με την λειτουργία του WM είναι τα παρακάτω: • Matchmaker (MM) ή Resource Broker (RB) • Information Super Market(ISM) • Task Queue (TQ) • Τα υπόλοιπα υποσυστήματα του WMS υποστηρίζουν την εργασία (task)κατά τα υπόλοιπα βήματα εκτέλεσης της (π.χ., υποβολή, επιστροφή αποτελεσμάτων, αποτυχίας κ.α.) 22

  23. Ανάγκη χρήσης του WMS • Μεγάλο πλήθος γεωγραφικά κατανεμημένων ετερογενών δυναμικών πόρων. • Οι χρήστες θα πρέπει να αλληλεπιδρούν απευθείας με τους διάφορους πόρους. • Πρέπει να γνωρίζουν τις διευθύνσεις και τα χαρακτηριστικά των πόρων που είναι διαθέσιμοι κάθε χρονική στιγμή. • Δεν μπορεί να λειτουργήσει στην πράξη αφού οδηγεί σε μη αποδοτικό και μη λειτουργικό σύστημα. • Έτσι στο gLite έχει σχεδιαστεί η υπηρεσία WMS ως η διεπαφή ανάμεσα στους χρήστες και τους πόρους

  24. Ανάγκη χρήσης του WMS • Yψηλότερο επίπεδο αφαίρεσης,οι χρήστες πλέον δεν ασχολούνται με τους πόρους • Δέχεται τις αιτήσεις των χρηστών και αναλαμβάνει να τις ικανοποιήσει. • Ανάθεση και διαχείριση των εργασιών που εκτελούνται ή έχουν εκτελεστεί σε κάποιο υπολογιστικό πόρο του δικτύου. • Ορίζουν τις απαιτήσεις των εργασιών και η WMS αναλαμβάνει να επιλέξει από το σύνολο των πόρων το κατάλληλο CE. • Ευκολότερη και αποτελεσματικότερη υποβολή των εργασιών • Mε την χρήση κατάλληλων αλγορίθμων μπορεί να βελτιστοποιηθεί η απόδοση του συστήματος

  25. Job Description Language (JDL) • ΟιεργασίεςπουπρόκειταιναεκτελεστούνστοGridπεριγράφονταικάνονταςχρήστητηςγλώσσαςJobDescription Language (JDL) • ΗJDLχρησιμοποιείταιγιανακαθορίσειταχαρακτηριστικάτηςεργασίαςκαιδιάφορεςαπαιτήσειςπουθέλουμεναικανοποιούνταιγιατηνεκτέλεσητηςεργασία • ΑυτάταχαρακτηριστικάκαιοιαπαιτήσειςλαμβάνονταιυπόψηαπότοWMS γιατηνεύρεσητουβέλτιστουCEστοοποίοθαεκτελεστείηεργασίαμας

  26. Παράδειγμα ενός JDL αρχείου • Executable= "test.sh"; • Arguments= "fileAfileB"; • StdOutput= "std.out"; • StdError= "std.err"; • InputSandbox= {"test.sh", "fileA", "fileB"}; • OutputSandbox= {"stdout", "std.err"}; • VirtualOrganisation= “see"; • Requirements= other.GlueHostMainMemoryRAMAvailable> = 4000

  27. WMS scheduling algorithms 27 • Ο Workload Manager (WM) παίρνει σαν είσοδο το JDL αρχείο που περιγράφει τα χαρακτηριστικά της εργασίας και εκτελεί δύο λειτουργίες: • filtering operation: Δημιουργείται ένα σύνολο από υποψήφια CEs με βάση τα χαρακτηριστικά της υποβαλλομένης εργασίας, που περιγράφονται στο Requirements πεδίο του JDL αρχείου • the selection operation: Επιλογή του «καλύτερου» CE από το σύνολο των CEs που δημιουργήθηκε προηγούμενος. Με τον όρο«καλύτερο»εννοούμε το CE το οποίο βελτιστοποιεί μία μετρική στόχο, η οποία ορίζεται στο Rank πεδίο του JDL αρχείου • Το gLite υλοποιεί δύο matchmaking αλγορίθμους, τον Max Rank και τον Fuzzy Rank • Ο Max Rank αλγόριθμος επιλέγει το CE του οποίου τα χαρακτηριστικά (στατικά ή δυναμικά) μεγιστοποιούν την έκφραση στο Rank πεδίο • Αν περισσότερα από ένα CEs έχουν την ίδια μέγιστη στιγμή, τότε ο αλγόριθμος επιλέγει τυχαία ένα από αυτά.

  28. WMS scheduling algorithms Ο Fuzzy Rank αλγόριθμος είναι μία στοχαστική παραλλαγή algorithm του Max Rank αλγορίθμου Η πρώτη φάση παραμένει η ίδια Ωστόσο οι τιμές που υπολογίζονται για τα CE με βάση το πεδίο εκφράζουν την πιθανότητα ότι ένα CE θα επιλεγεί ως το «καλύτερο» Με τον τρόπο αυτό η πιθανότητα επιλογής ενός CE είναι μεγαλύτερη για CE με μεγαλύτερη Rank τιμή Με βάση τις πιθανότητες αυτές ο αλγόριθμος επιλέγει τυχαία ένα CE Ο Fuzzy Rank αλγόριθμος μπορεί να επιλέγει διαφορετικό CE σε κάθε εκτέλεση του. 28

  29. Ροή μιας εργασίας στο Grid • Οι χρήστες για να χρησιμοποιήσουν τις υπηρεσίες του πλέγματος πρέπει να διαθέτουν λογαριασμό σε κάποιο User Interface(UI). • Μέσω του λογαριασμό τους στο UI ο χρήστης περιγράφει τα χαρακτηριστικά και τις απαιτήσεις της εργασίας του μέσω της χρήσης της ειδικά σχεδιασμένης γλώσσας περιγραφής (JDL – Job Description Language). • Το αρχείο περιγραφής μεταβιβάζεται για επεξεργασία στον Resource Broker (RB) στον οποίον τρέχουν οι υπηρεσίες του Workload Management System (WMS) . • Οι υπηρεσίες του Workload Management System (WMS) επικοινωνούν με τις υπηρεσίες του Information System (IS) (ανήκει στο MDS) που παρέχουν πληροφορίες για τους διαθέσιμους πόρους (χαρακτηριστικά και τρέχουσα κατάσταση). • Οι υπηρεσίες του WMS έχοντας ως βάση την περιγραφή της εργασίας, τις πληροφορίες σχετικά με το VO και τα χαρακτηριστικά των διαθέσιμων πόρων αποφασίζει για τον υπολογιστικό πόρο που θα αναλάβει την εκτέλεση της εργασίας.

  30. Ροή μιας εργασίας στο Grid

  31. Ανάθεση εργασιών σε υπολογιστικούς πόρους Δημιουργία προσωρινού πιστοποιητικό στο UI Υποβολή εργασίας και μεταφορά του Input Sandbox (SUBMITTED) WMS πρέπει να βρει το κατάλληλο CE (WAITING). Προετοιμασία της εργασίας για εκτέλεση στο CE (READY). Η εργασία είναι στον LRMS μηχανισμό του CE (SCHEDULED). Η εργασία εκτελείται σε κάποιο WN (RUNNING). Η εργασία ολοκληρώθηκε χωρίς λάθη τα δεδομένα εξόδου μεταφέρονται προς την υπηρεσία WMS (DONE). O χρήστης μπορεί να ανακτήσει τα αρχεία με τα δεδομένα εξόδου στον λογαριασμό του στο UI (CLEARED).

  32. Τεχνολογίες σχετικές με τα δίκτυα πλέγματος • Cloud Computing: • Cloud computing είναι ένα είδος κατανεμημένου υπολογισμού όπου οι πόροι είναι πολλές φορές εικονικοί (virtualized) και επομένως μπορούν να μεταβληθούν σε μέγεθος/πλήθος δυναμικά. • Desktop (Volunteer) Grids: • Είναι μια υπολογιστική και αποθηκευτική υποδομή που στηρίζεται στην εθελοντική προσφορά κοινών υπολογιστών, από τους χρήστες τους, με σκοπό την εκτέλεση κατανεμημένων υπολογιστικά εργασίων.

  33. Volunteer Computing – Goodwill Grids Volunteer computing is an arrangement in which people (volunteers) provide computing resources to projects, which use the resources to do distributed computing and/or storage. If you join a volunteer computing project, you agree to donate the idle cycles of your computer to specific research projects. Volunteers are typically members of the general public who own Internet-connected PCs. Organizations such as schools and businesses may also volunteer the use of their computers. Projects are typically academic (university-based) and do scientific research. But there are exceptions; for example, GIMPS and distributed.net (two major projects) are not academic. The first volunteer computing project was GIMPS (Great Internet Mersenne Prime Search), which started in 1995. Other early projects include distributed.net, SETI@home, and Folding@home. Today there are over 50 active projects. 33

  34. How does it compare to Grid Computing? If your definition of 'Grid computing' encompasses all distributed computing (which is silly - there's already a perfectly good term for that) then volunteer computing is a type of Grid computing. 'Desktop grid' computing - which uses desktop PCs within an organization - is superficially similar to volunteer computing, but because it has accountability and lacks anonymity, it is significantly different. 34

  35. Desktop Grid Middleware BOINC is the most widely used Desktop Grid middleware. Originally it was developed for SETI@Home. Later it became public domain and now is used by dozens of volunteer computing projects all around the world. In total the software is installed on over 4 million computers, making it the most popular Grid middleware in the world. People at home, or companies, run a piece of software called the BOINC Client. They can attach their BOINC client to one or more projects, thus deciding to which research they donate their computing time. BOINC Clients only make contact with the project server that is chosen by the user (resource provider). There is no communication with other systems. Applications are signed. 35

  36. Examples SZTAKI Desktop Grid is operated by the Laboratory of Parallel and Distributed Systems at the Hungarian Academy of Sciences. One of the most known Desktop Grid today based on BOINC. Number of users: 35868,  Number of hosts: 80222, Estimated performance of last 48 hours: 2253.714 GFlop/s , Peak performance: 3.4 TFlop/s, Workunits processed in the last 48 hours: 12596 EDGeS - Enabling Desktop Grids for e-Science -  is a European project with the aim of creating an integrated Grid infrastructure  that seamlessly integrates a variety of Desktop Grids with EGEE type of service Grids. Goal the interconnection of the largest European Service Grid infrastructure (EGEE) with existing Desktop Grid (DG) systems. The involvement of low-cost volunteer Desktop Grids into the European scientific grid infrastructure will contribute to the establishment of a sustainable European Grid infrastructure. 36

  37. Διαφορές Grid and Cloud Computing • Το Cloud computing παρέχει την δυνατότητα κλιμάκωσης των παρεχόμενων πόρων ανάλογα με τις ανάγκες του χρήστη και/ή της εφαρμογής. • Με τον τρόπο αυτό αποφεύγεται το φαινόμενο της δέσμευσης πόρων για μεγαλύτερο χρονικό διάστημα από ότι χρειάζεται, με ότι βέβαια αυτό συνεπάγεται για την απόδοση του Cloud καιτην χρέωση του χρήστη. • Οι υποδομές Cloud (υπολογιστικές ή αποθηκευτικές) στηρίζονται σε υπολογιστές κοινής χρήσης (desktop)και χρησιμοποιούν εξειδικευμένο λογισμικό για τον διαμοιρασμό των πόρων αυτών, παρέχοντας πλήθος υπηρεσιών μέσο του διαδικτύου. Αντίθετα, οι υποδομές Grid (υπολογιστικές ή αποθηκευτικές) στηρίζονται σε υπολογιστέςμεγάλων δυνατοτήτων. • Οι υποδομές Cloudπροσφέρουν στους χρήστες ένα σύνολο πλήρως παραμετροποιήσιμων πόρων, όπου ο χρήστης μπορεί να επιλέξει το λειτουργικό σύστημα, τα ακριβή χαρακτηριστικά του μηχανήματος (υπολογιστικές και αποθηκευτικές δυνατότητες) και άλλες ρυθμίσεις ασφάλειας, λογισμικού κα. Η χρήση της Virtualization τεχνολογίαςείναι βασικό συστατικό για την παροχή των παραπάνω δυνατοτήτων. Αντίθετα στις υποδομές Grid όλα τα παραπάνω ρυθμίζονται από τον διαχειριστή των πόρων.

  38. Τύποι Cloud Computing • Infrastructure as a Service (IaaS) ένας χρήστης αγοράζει πρόσβαση σε υπολογιστικούς και αποθηκευτικούς πόρους, μέσω του διαδικτύου. Αν χρειαστεί περισσότερους πόρους μπορεί να τους αγοράσει. Το web hosting είναι ένα απλό παράδειγμα IaaS. • Software as a Service (SaaS) η χρήση μιας εφαρμογής που δεν τρέχει τοπικά στον υπολογιστή του χρήστη αλλά σε κάποιο απομακρυσμένο μηχάνημα. Web-based email και Google Documents είναι τα πιο γνωστά παραδείγματα. • Platform as a Service (PaaS) η ανάπτυξη εφαρμογών χρησιμοποιώντας Web-based εργαλεία, τα οποία τρέχουν υλικό και λογισμικό που παρέχεται από έναν τρίτο. Γνωστά παραδείγματα είναι το Force.com και το Google App Engine.

  39. Cloud Computing Παραδειγματα • Pithos: Η υπηρεσία Pithos προσφέρει σε κάθε χρήστη 50 GBytes αποθηκευτικού χώρου online, προσβάσιμα από παντού, πάντοτε, με ασφάλεια. Η χρήση της υπηρεσίας είναι ελεύθερη και δωρεάν για τους φοιτητές και όλα τα άλλα μέλη της ελληνικής ακαδημαϊκής κοινότητας. Οι χρήστες μπορούν να αποθηκεύσουν με ασφάλεια τα αρχεία τους και να τα μοιραστούν με άλλους χρήστες. Επιπλέον, η υπηρεσία προσφέρει δυνατότητες αναζήτησης, και αρχειοθέτησης (versioning). • Sun Grid Engine: Το Grid Engine project παρέχει ένα ανοιχτό λογισμικό για την διαχείριση και τον συντονισμό κατανεμημένων πόρων. • MapReduce: MapReduce είναι ένα πακέτο λογισμικού από την Google που δίνει την δυνατοτητα κατανεμημένου υπολογισμού σε μεγάλες ποσότητες δεδομένων σε clusters υπολογιστών. • Amazon Web Services.

  40. Amazon Web Services • Amazon Web Services είναι ένα πολύ γνωστό παράδειγμα Infrastructure as a Service (IaaS). • Παρέχει πρόσβαση σε υπολογιστικούς, αποθηκευτικούς και δικτυακούς πόρους. • Ο χρήστης πληρώνει μόνο για τους πόρους που χρησιμοποιεί (π.χ., CPU/per hour of use, MB/per hour of use κτλ) • Π.χ. η Amazon Elastic Compute Cloud (Amazon EC2™) είναι μία δικτυακή υπηρεσία που παρέχει μεταβλητή υπολογιστική δύναμη σε μία διεργασία. Συγκεκριμένα ο χρηστης: • Επιλέγει το περιβάλλον μέσα στο οποίο θα τρέχει η εργασία του (π.χ. λειτουργικό συστημα, απαιτούμενες βιβλιοθήκες κ.α.) δημιουργώντας ένα Amazon Machine Image (AMI) • Καθοριζει θέματα ασφάλειας και δικτυακής πρόσβασης • Εκκινεί το περιβάλλον μέσα στο οποίο τρέχει την ή τις εργασίες που επιθυμεί • Πληρώνει μόνο για τους πόρους που χρησιμοποιεί. • Π.χ. Amazon Simple Storage Service (Amazon S3™) είναι μία δικτυακή υπηρεσία μέσω της οποίας ένας χρήστης μπορεί να αποθηκεύσει και να ανακτήσει μεγάλες ποσότητες δεδομένων οποιαδήποτε στιγμή και από οπουδήποτε.

  41. Amazon Web Services

  42. Διαφορές Grid and Cloud Computing

  43. Ερευνητικά ζητήματα • Αλγόριθμοι χρονοπρογραμματισμού, δλδ ανάθεσης εργασιών στους διαθέσιμους πόρους • Αλγόριθμοι Δέσμευσης Πόρων, δλδ χρονικής (αρχή και τέλος) και ποσοτικής (πόσες CPU)δέσμευσης υπολογιστικών, αποθηκευτικών και επικοινωνιακών πόρων. Με τον τρόπο αυτό γίνεται δυνατή η παροχή συγκεκριμένης ποιότητας υπηρεσιών στους χρήστες. • Ζητήματα διαλειτουργικότητας, μεταξύ διαφορετικών δικτύων πλέγματος, π.χ. όσον αφορά την αναπαράσταση της πληροφορίας των πόρων που διαθέτουν, καθώς και συμπίεσης της πληροφορίας αυτής. • Αναλυτική εκτίμηση των χαρακτηριστικών των εργασιών που υποβάλλονται (π.χ. διάρκεια, ρυθμός υποβολής), έτσι ώστε να είναι δυνατή η αξιολόγηση της απόδοσης αλγορίθμων μέσω περιβαλλόντων προσομοίωσης και με την χρήση ρεαλιστικών παραμέτρων. • Προσομοιωτές για δίκτυα πλέγματος • Τα παραπάνω ζητήματα είναι κοινά ανεξάρτητα αν μιλάμε για Grid computing, Cloud computing ή Desktop Grid computing.

  44. Αλγόριθμοι χρονοπρογραμματισμού • Ο διαχειριστής των πόρων (Grid resource manager) – χρονοπρογραμματιστής (scheduler) λαμβάνει τις αιτήσεις για την εκτέλεση εργασιών και αναθέτει τις αντίστοιχες εργασίες στους διαθέσιμους πόρους με βάση μία συνάρτηση βελτιστοποίησης. • Γενικά το πρόβλημα της χρονοδρομολόγησης είναι δύσκολο εξαιτίας του δυναμικού χαρακτήρα των δικτύων πλέγματος, με την διαθεσιμότητα και το φορτίο των πόρων να αλλάζει συνεχώς ενώ οι εργασίες των χρηστών έχουν ένα ευρή φάσμα χαρακτηριστικών και απαιτήσεων. • Ο βαθμός στον οποίον οι αλγόριθμοι χρονοπρογραμματισμού μπορούν να αντιμετωπίσουν αυτά τα θέματα, καθορίζει την απόδοση και την επιτυχία των δικτύων πλέγματος, μιας και επηρεάζει σημαντικά την ποιότητα υπηρεσιών που παρέχεται στον χρήστη. • Ο χρονοπρογραμματιστής στηρίζεται για τις αποφάσεις τους σε στατικές (υπολογιστικές και αποθηκευτικές χωρητικότητες) και δυναμικές (αριθμός εργασιών στην ουρά) πληροφορίες που παρέχονται σε αυτόν από τις υπηρεσίες συλλογής πληροφοριών. • Διάφορα κριτήρια μπορούν να χρησιμοποιηθούν: • Δικαιοσύνης • Οικονομικά • Παροχής ποιότητας υπηρεσιών

  45. Αλγόριθμοι χρονοπρογραμματισμού • Ο χρονοπρογραμματισμός συνήθως πραγματοποιείται σε 2 επίπεδα. Στο πιο πάνω επίπεδο αποφασίζεται σε πιο domain (cluster, site κτλ)θα εκτελεστεί μια εργασία και σε τοπικό επίπεδο αποφασίζεται σε ποιον ακριβώς πόρο θα εκτελεστεί η εργασία. Με παρόμοιο τρόπο πραγματοποιείται και η συλλογή της πληροφορία τον πόρων, η οποία χρησιμοποιείται από τον χρονοπρογραμματιστή για τις αποφάσεις του. • Αλγόριθμοι/μηχανισμοί που λαμβάνουν υπόψην τόσο το θέμα του χρονοπρογραμματισμού των εργασιών όσο και της δρομολόγησης των δεδομένων που αυτές χρειάζονται είναι σημαντικοί. Π.χ. το πρόβλημα της «Συλλογής Δεδομένων» εμφανίζεται στα δίκτυα πλέγματος όταν μία εργασία χρειάζεται για την εκτέλεση της περισσότερα από ένα δεδομένα. Στην περίπτωση αυτή θα πρέπει να αποφασιστούν τα εξής: • Τον αποθηκευτικό πόρο από όπου θα μεταφερθεί το κάθε δεδομένο. • Το υπολογιστικό πόρο στον οποίον θα μεταφερθούν όλα τα δεδομένα αυτά για την εκτέλεση της εργασίας • Τα μονοπάτια που θα ακολουθήσουν τα δεδομένα

  46. Αλγόριθμοι Ανάθεσης Πόρων • Ο βασικός μηχανισμός για την παροχή ποιότητας υπηρεσιών, είτε στα δίκτυα δεδομένων είτε στα δίκτυα πλέγματος, είναι η δέσμευση πόρων (επικοινωνιακών, υπολογιστικών or αποθηκευτικών). • Αλγόριθμοι/μηχανισμοί για την συνδυασμένη δέσμευση των πόρων αυτών είναι πολύ σημαντικοί για τα δίκτυα πλέγματος, μιας και οι υποβληθείσες εργασίες απαιτούν πολλές φορές για την εκτέλεση τους δεδομένα που πρέπει να μεταφερθούν στον εκάστοτε υπολογιστικό πόρο. • Ο ακριβής χρόνος εκκίνησης της μεταφοράς των δεδομένων και εκτέλεσης της εργασίας καθορίζει σημαντικά την απόδοση της ανάθεσης.

  47. Σύνοψη της πληροφορίας των πόρων • Ο χρονοπρογραμματιστής χρησιμοποιεί για τις αποφάσεις του στατικές και δυναμικές πληροφορίες για τους πόρους του δικτύου. • Οι πληροφορίες αυτές συλλέγονται από αντίστοιχους μηχανισμούς συλλογής. • Δύο θέματα που προκύπτουν είναι: • Η μείωση του όγκου των πληροφοριών αυτών που συλλέγονται και μεταδίδονται • Η απόκρυψη λεπτομερειών για τους πόρους ενός δικτύου πλέγματος, επιτρέποντας παρόλα αυτά την διαλειτουργικότητα του με άλλα δίκτυα πλέγματος. • Για τον σκοπό αυτό προτείνεται η ιδέα της «Σύνοψη της πληροφορίας των πόρων» • Η ιδέα αυτή εμφανίζεται και στα δίκτυα δεδομένων με διάφορους τρόπους: • Για την συνόψη των πληροφοριών σχετικά με την δικτυακή τοπολογία που διαφημίζεται στα υψηλότερα επίπεδα ενός ιεραρχικό δικτύου. • Για την μείωση των δεδομένων που έχουν ανιχνευτεί και μεταφέρονται από ένα δίκτυο αισθητήρων προς έναν κεντρικό κόμβο συλλογής πληροφορίας. . 

  48. Το προφίλ των εργασιών • Η ύπαρξη καλών πιθανοτικών μοντέλων που να περιγράφουν την διαδικασία άφιξης των εργασιών καθώς και τα χαρακτηριστικά (π.χ. διάρκεια) αυτών είναι πολύ σημαντική για την καλύτερη κατανόηση και την πρόβλεψη της συμπεριφοράς των δικτύων πλέγματος. • Π.χ. χρησιμοποιώντας τα αρχεία log μίας υπολογιστικής μονάδας που ανήκει στο cluster kallisto του HellasGrid καταλήψαμε σε πολύ ενδιαφέροντα συμπεράσματα αλλά και παράγαμε τέτοια πιθανοτικά μοντέλα.

  49. Προσομοιωτές για δίκτυα πλέγματος • Ο GridSim επιτρέπει την μοντελοποίηση και την προσομοίωση οντοτήτων του παράλληλου και του κατανεμημένου υπολογισμού: χρήστες, εφαρμογές, πόρους, χρονοπρογραμματιστές, με απώτερο σκοπό την αξιολόγηση αλγορίθμων χρονοπρογραμματισμού. • Ο OptorSim είναι ένα προσομοιωτής δικτύων πλέγματος για την αξιολόγηση μεθόδων δημιουργίας αντιγράφων δεδομένων στους κόμβους του δικτύου. • Ο NS-2, ένας κλασικός δικτυακός προσομοιωτής, μπορεί με τις κατάλληλες επεκτάσεις να χρησιμοποιηθεί για την αξιολόγηση αλγορίθμων για τα δίκτυα πλέγματος.

  50. Ερωτήσεις?

More Related