Spelling suggestions: "subject:"2analysis public clouds"" "subject:"3analysis public clouds""
1 |
Μελέτη και ανάπτυξη τεχνικών για την αποτελεσματική διαχείριση πόρων σε δίκτυα πλέγματος και υποδομές υπολογιστικών νεφώνΚρέτσης, Αριστοτέλης 25 February 2014 (has links)
Οι τεχνολογίες κατανεμημένου υπολογισμού, όπως τα δίκτυα πλέγματος και οι υποδομές Νέφους, έχουν διαμορφώσει πλέον ένα καινούργιο περιβάλλον σχετικά με τον τρόπο που εκτελούνται οι εργασίες των χρηστών, αποθηκεύονται τα δεδομένα και γενικότερα χρησιμοποιούνται οι εφαρμογές. Τα δίκτυα πλέγματος αποτέλεσαν το επίκεντρο της σχετικής ερευνητικής δραστηριότητας για μεγάλο χρονικό διάστημα, με βασικό στόχο τη δημιουργία υποδομών για την εκτέλεση ερευνητικών εφαρμογών με πολύ υψηλές υπολογιστικές και αποθηκευτικές απαιτήσεις. Ωστόσο είναι πλέον προφανές ότι υπάρχει μια στροφή προς τις υποδομές Νέφους που προσφέρουν υπηρεσίες κατανεμημένου υπολογισμού και αποθήκευσης μέσω πλήρως διαχειρίσιμων πόρων. Η συγκεκριμένη μετάβαση έχει ως αποτέλεσμα μια μετατόπιση από το μοντέλο των πολλών και ισχυρών πόρων που βρίσκονται κατανεμημένοι σε διάφορες περιοχές του κόσμου (όπως στα δίκτυα πλέγματος) προς σχετικά λιγότερα αλλά πολύ μεγαλύτερα ως προς το μέγεθος κέντρα δεδομένων τα οποία αποτελούνται από χιλιάδες υπολογιστικούς πόρους οι οποίοι φιλοξενούν ακόμη περισσότερες εικονικές μηχανές.
Η έρευνα που διεξάγαμε ακολούθησε αυτή την αλλαγή, μελετώντας αλγοριθμικά θέματα για δίκτυα πλέγματος και υποδομές Νεφών και αναπτύσσοντας μια σειρά από εργαλεία και εφαρμογές που διαχειρίζονται, παρακολουθούν και αξιοποιούν τους πόρους που προσφέρουν οι συγκεκριμένες υποδομές.
Αρχικά, μελετούμε τα ζητήματα που προκύπτουν κατά την υλοποίηση αλγορίθμων χρονοπρογραμματισμού, που είχαν προηγουμένως μελετηθεί σε περιβάλλοντα προσομοίωσης, σε ένα πραγματικό σύστημα ενδιάμεσου λογισμικού για δίκτυα πλέγματος, και συγκεκριμένα το gLite. Το πρώτο ζήτημα που αντιμετωπίσαμε είναι το γεγονός ότι οι πληροφορίες που παρέχει το ενδιάμεσο λογισμικό gLite στους αλγορίθμους χρονοπρογραμματισμού δεν είναι πάντα έγκυρες, γεγονός που επηρεάζει την αποδοσή τους. Για την αντιμετώπιση του προβλήματος αναπτύξαμε ένα εσωτερικό, στο χρονοπρογραμματιστή, μηχανισμό που καταγράφει τις αποφάσεις του σχετικά με ποιές εργασίες ανατέθηκαν σε ποιούς υπολογιστικούς πόρους και λειτουργεί συµπληρωµατικά µε την υπηρεσία πληροφοριών του gLite. Επιπλέον, εξετάζουμε το ζήτημα του δίκαιου διαμοιρασμού της υπολογιστικής χωρητικότητας ενός πόρου στις εργασίες που έχουν ανατεθεί σε αυτόν. Για το σκοπό αυτό, επεκτείνουμε το ενδιάμεσο λογισμικό gLite ώστε να περιλαμβάνει ένα νέο μηχανισμό που μέσω της αξιοποίησης της τεχνολογίας εικονικοποίησης επιτρέπει τον ταυτόχρονο διαμοιρασμό της υπολογιστικής χωρητικότητας ενός κόμβου σε πολλές εργασίες.
Στην συνέχεια εξατάζουμε το πρόβλημα της συνδυασμένης μεταφοράς πολλαπλών εικονικών μηχανών σε σύγχρονες υπολογιστικές υποδομές. Πιο συγκεκριμένα, προτείνουμε μια μεθοδολογία που στοχεύει στην καλύτερη χρησιμοποίηση των διαθέσιμων υπολογιστικών και δικτυακών πόρων, λαμβάνοντας υπόψη στις αποφάσεις σχετικά με τη συνδυασμένη μεταφορά εικονικών μηχανών τις αλληλεξαρτήσεις που δημιουργούνται από την επικοινωνία τους. Η προτεινόμενη μεθοδολογία χρησιμοποιεί την προσέγγιση πολλαπλών κριτηρίων για την επιλογή των εικονικών μηχανών που θα μετακινηθούν, αναθέτοντας διαφορετικά βάρη στα διάφορα κριτήρια ενδιαφέροντος. Επιπλέον, επιλέγει τους υπολογιστικούς κόμβους όπου οι μετακινούμενες εικονικές μηχανές θα φιλοξενηθούν, λαμβάνοντας υπόψη τον τρόπο με τον οποίο οι μετακινήσεις επηρεάζουν τις λογικές (ή εικονικές) τοπολογίες που σχηματίζονται από την επικοινωνία τους και αντιμετωπίζοντας τη συγκεκριμένη επιλογή ως ένα πρόβλημα αναδιάρθρωσης λογικών τοπολογιών. Η αξιολόγηση επιβεβαίωσε τη δυνατότητα της μεθοδολογίας να επιλύει, μέσω των κατάλληλων μετακινήσεων, ένα σημαντικό αριθμό προβλημάτων που οφείλονται σε ελλείψεις υπολογιστικών ή επικοινωνιακών πόρων, ελαχιστοποιώντας παράλληλα τον αριθμό των μετακινήσεων και την προκαλούμενη επιβάρυνση του δικτύου.
Το επόμενο θέμα που εξετάζουμε αφορά το πρόβλημα της ανάλυσης δεδομένων επικοινωνίας μεταξύ εικονικών μηχανών οι οποίες φιλοξενούνται σε ένα κέντρο δεδομένων. Προτείνουμε και αξιολογούμε, μέσω της ανάλυσης δεδομένων από ένα πραγματικό κέντρο δεδομένων, την εφαρμογή μετρικών και τεχνικών από τη θεωρία ανάλυσης κοινωνικών δικτύων για τον προσδιορισμό σημαντικών εικονικών μηχανών, για παράδειγμα εικονικές μηχανές οι οποίες απαιτούν περισσότερο εύρος ζώνης σε σχέση με άλλες, και ομάδων εικονικών μηχανών που συσχετίζονται με κάποιο τρόπο μεταξύ τους. Μέσω της συγκεκριμένης προσέγγισης έχουμε τη δυνατότητα να εξάγουμε σημαντικές πληροφορίες οι οποίες μπορούν να αξιοποιηθούν για τη λήψη καλύτερων αποφάσεων σχετικά με τη διαχείριση του πολύ μεγάλου πλήθους των εικονικών μηχανών που φιλοξενούνται στα σύγχρονα κέντρα δεδομένων.
Στη συνέχεια προσδιορίζουμε τρόπους με τους οποίους οι πληροφορίες παρακολούθησης που συλλέγονται από τη λειτουργία μιας δημόσιας υποδομής Υπολογιστικού Νέφους, και ιδίως από την υπηρεσία Amazon Web Services (AWS), μπορούν να χρησιμοποιηθούν με ένα αποδοτικό τρόπο προκειμένου να εξάγουμε πολύτιμες πληροφορίες, που μπορούν να αξιοποιηθούν από τους τελικούς χρήστες για την αποτελεσματικότερη διαχείριση των εικονικών πόρων τους. Πιο συγκεκριμένα, παρουσιάζουμε το σχεδιασμό και την υλοποίηση ενός εργαλείου ανοιχτού κώδικα, του SuMo, στο όποιο έχουμε υλοποίησει όλη την απαραίτητη λειτουργικότητα για τη συλλογή και ανάλυση δεδομένων παρακολούθησης από την υπηρεσία AWS. Επιπλέον, προτείνουμε ένα μηχανισμό για τη βελτιστοποίηση του κόστους και της αξιοποίησης (Cost and Utilization Optimization - CUO) των εικονικών υπολογιστικών πόρων της υπηρεσίας AWS. Ο μηχανισμός CUO χρησιμοποιεί πληροφορίες (πλήθος, ακριβή χαρακτηριστικά, ποσοστό αξιοποίησης) για τους διαθέσιμους εικονικούς πόρους ενός χρήστη και προτείνει ένα νέο (βέλτιστο) σύνολο πόρων που θα μπορούσαν να χρησιμοποιηθούν για την αποδοτικότερη εξυπηρέτηση του ίδιου φορτίου εργασίας με μειωμένο κόστος.
Τέλος, παρουσιάζουμε την υλοποίηση ενός ολοκληρωμένου εργαλείου, που ονομάζουμε Mantis, για το σχεδιασμό και τη λειτουργία των μελλοντικών ευέλικτων (flex-grid) οπτικών δικτύων που υποστηρίζει επιπλέον οπτικά δίκτυα σταθερού πλέγματος τόσο μοναδικού ρυθμού μετάδοσης όσο και πολλαπλών ρυθμών μετάδοσης. Οι χρήστες έχουν τη δυνατότητα να καθορίζουν δικτυακές τοπολογίες, απαιτήσεις κίνησης, παραμέτρους για το κόστος απόκτησης και λειτουργίας των δικτυακών συσκευών, ενώ επιπλέον έχουν πρόσβαση σε αρκετούς αλγορίθμους για το σχεδιασμό, λειτουργία και αξιολόγηση διαφόρων οπτικών δικτύων. Το εργαλείο έχει σχεδιαστεί ώστε να μπορεί να λειτουργεί είτε ως υπηρεσία (Software as a Service) είτε ως κλασσική εφαρμογή (Desktop Application). Λειτουργώντας ως υπηρεσία παρέχει κλιμάκωση με βάση τις απαιτήσεις των χρηστών, αξιοποιώντας τα πλεονεκτήματα των υποδομών Υπολογιστικού Νέφους, εκτελώντας γρήγορα και αποτελεσματικά τις εργασίες των χρηστών. Για τη λειτουργία αυτή, μπορεί να χρησιμοποιεί τόσο δημόσιες υποδομές Υπολογιστικού Νέφους όπως η υπηρεσία Amazon Web Services (AWS) και η υπηρεσία της ΕΔΕΤ (~okeanos), όσο και ιδιωτικές που βασίζονται στο OpenStack. Επιπλέον, η αρθρωτή αρχιτεκτονική και η υλοποίηση των διαφόρων λειτουργικών τμημάτων επιτρέπουν την εύκολη επέκταση του εργαλείου ώστε να υποστηρίζει μελλοντικά περισσότερες υποδομές Υπολογιστικού Νέφους. / Distributed computing technologies, like grids and clouds, shape today a new environment, regarding the way tasks are executed, data are stored and retrieved, and applications are used. Though grids and desktop grids have been the focus of the research community for a long time, a shift has become evident today towards cloud and virtualization related technologies in general, which are supported by large computing factories, namely the data centers. As a result there is also a shift from the model of several powerful resources distributed at various locations in the world (as in grids) towards fewer huge data centers consisting of thousands of “simple” computers that host Virtual Machines.
The research performed over the course of my PhD followed this shift, investigating algorithmic issues in the context of grids and then of clouds and developing a number of tools and applications that manage, monitor and utilize these kinds of resources.
Initially, we describe the steps followed, the difficulties encountered, and the solutions provided in developing and evaluating a scheduling policy, initially implemented in a simulation environment, in the gLite grid middleware. Our focus is on a scheduling algorithm that allocates in a fair way the available resources among the requested users or jobs. During the actual implementation of this algorithm in gLite, we observed that the validity of the information used by the scheduler for its decisions affects greatly its performance. To improve the accuracy of this information, we developed an internal feedback mechanism that operates along with the scheduling algorithm. Also, a Grid computation resource cannot be shared concurrently between different users or jobs, making it difficult to provide actual fairness. For this reason we investigated the use of virtualization technology in the gLite middleware. We implement and evaluate our scheduling algorithm and the proposed mechanisms in a small gLite testbed.
Next, we present a methodology, called communication-aware virtual infrastructures (COMAVI), for the concurrent migration of multiple Virtual Machines (VMs) in computing infrastructures, which aims at the optimum use of the available computational and network resources, by capturing the interdependencies between the communicating VMs. This methodology uses multiple criteria for selecting the VMs that will migrate, with different weights assigned to each of them. COMAVI also selects the computing sites where the migrating VMs will be hosted, by accounting for the way migration affects the logical (or virtual) topologies formed by the communicating VMs and viewing this selection as a logical topology reconfiguration problem. We apply COMAVI to two basic computing infrastructures that exhibit different constraints/criteria and characteristics: a grid infrastructure operating over a wide area network (WAN) and a data center infrastructure operating over a local area network (LAN). Through the presented methodology different communication-aware VM migration algorithms can be tailored to the needs of the resource provider. The algorithms presented resolve the maximum possible number of VM violations (due to computing or communication resource shortages), while tending to minimize the number of migrations performed, the induced network overhead, the logical topology reconfigurations required, and the corresponding service interruptions. We evaluate the proposed methods through simulations in realistic computing environments, and we exhibit their performance benefits.
We also consider the use of social network analysis methods on communication traces, collected from Virtual Machines (VMs) located in computing infrastructures, like a data center. Our aim is to identify important VMs, for example VMs that require more bandwidth than other VMs or VMs that communicate often with other VMs. We believe that this approach can handle the large number of VMs present in computing infrastructures and their interactions in the same way social interactions of millions of people are analyzed in today’s social networks. We are interested in identifying measures that can locate these important VMs or groups of interacting VMs, missed through other usual metrics and also capture the time-dynamicity of their interactions. In our work we use real traces and evaluate the applicability of the considered methods and measures.
In addition, we consider the analysis and optimization of public clouds. For this reason, we identify important algorithmic operations that should be part of a cloud analysis and optimization tool, including resource profiling, performance spike detection and prediction, resource resizing, and others, and we investigate ways in which the collected monitoring information can be processed towards these purposes. The analyzed information is valuable since it can drive important virtual resource management decisions. We also present an open-source tool we developed, called SuMo, which contains the necessary functionalities for collecting monitoring data from Amazon Web Services (AWS), analyzing them and providing resource optimization suggestions. We also present a Cost and Utilization Optimization (CUO) mechanism for optimizing the cost and the utilization of a set of running Amazon EC2 instances, which is formulated as an Integer Linear Programming (ILP) problem. This CUO mechanism receives information regarding the current set of instances used (their number, type, utilization) and proposes a new set of instances for serving the same load, so as to minimize cost and maximize utilization and performance efficiency.
Finally, we present a network planning and operation tool, called Mantis, for designing the next generation optical networks, supporting both flexible and mixed line rate WDM networks. Through Mantis, the user is able to define the network topology, current and forecasted traffic matrices, CAPEX/OPEX parameters, set up basic configuration parameters, and use a library of algorithms to plan, operate, or run what-if scenarios for an optical network of interest. Mantis is designed to be deployed either as a cloud service or as a desktop application. Using the cloud infrastructures features Mantis can scale according to the user demands, executing fast and efficiently the scenarios requested. Mantis supports different cloud platforms either public such as Amazon Elastic Compute Cloud (Amazon EC2) and ~okeanos the GRNET’s cloud service or private based on OpenStack, while its modular architecture allows other cloud infrastructures to be adopted in the future with minimum effort.
|
Page generated in 0.0646 seconds