Ενημερώσεις

Απελευθερώστε το σύννεφο!

Η ζωή με το Open Source κυλάει συναρπαστικά και ελεύθερα αλλά όλο και περισσότερο μερικά σημεία γίνονται πιο κλειστά και αυτό γιατί εξαρτόμαστε από web services τα οποία δεν ελέγχουμε. Μια μεγάλη ώθηση στις εφαρμογές έχει δοθεί και από το cloud computing. 'Άφθονοι, φθηνοί, παραμετροποιήσιμοι και a la carte υπολογιστικοί πόροι στη διάθεση μας για να απογειώσει τις εφαρμογές που τους χρειάζονται. Μια μικρή παρένθεση σε αυτό το σημείο: Δεν είναι όλα τα σύννεφα ίδια, τα χωρίζουμε σε 2 μεγάλες κατηγορίες τα managed environments όπως το Google App Engine όπου το Google μας παρέχει ένα περιορισμένο σύνολο επιλογών σε ένα εντελώς ελεγχόμενο περιβάλλον και τις υπηρεσίες cloud computing που εμείς καλούμαστε να ξεκινήσουμε virtual instances όποτε και όπως ακριβώς θέλουμε. Και οι 2 επιλογές έχουν τα συν τους.

Στην πρώτη περίπτωση απλά ανεβάζουμε τον κώδικα μας και τον ξεχνάμε (λέμε τώρα...). Στην δεύτερη έχουμε άπειρες επιλογές στησίματος. Ας πούμε ότι φτιάξαμε το ιδανικό setup με load balancers, app servers, database cluster, memcache server και Hadoop καθώς και scripts για autoscaling. Αλλά είδα μια νέα προσφορά από άλλο provider πολύ πιο συμφέρουσα ή θέλουμε να φτιάξουμε το δικό μας cloud από τα κονδύλια του ΕΣΠΑ :P Μπορεί μεν ο κώδικας της εφαρμογής να παίζει παντού αλλά τι γίνεται με το deploy και τα autoscaling scripts; Απλά τα ξαναγράφουμε γιατί σύννεφο με σύννεφο διαφέρει.

Αυτό μέχρι πρότινος γιατί η RedHat βάλθηκε να ομογενοποιήσει σε ένα  API τα cloud computing APIs. Πολύ απλά με μια Ruby βιβλιοθήκη μπορούμε να ξεκινήσουμε και να σταματήσουμε μηχανήματα είτε αυτά βρίσκονται στο Amazon, στη Rackspace είτε στο datacenter  μας. Και αυτό μπορεί να γίνει απλά χρησιμοποιώντας τη βιβλιοθήκη αυτή είτε από το site της εν λόγω προσπάθειας που ακούει στο όνομα DeltaCloud.

Basic relationships

Όπως φαίνεται τα περισσότερα σύννεφα μοιράζονται μερικές όμοιες ιδιότητες που είναι οι εξής:

  • id, το εσωτερικό id του instance
  • owner_id, ποιος κατέχει το instance
  • name, πάρα πολύ χρήσιμο, έλειπε από το EC2, δώστε ένα όνομα στο instance πχ memcache, queue, db, app
  • image, η εικόνα του λειτουργικού πχ Ubuntu 9.10, Solaris 10, HP-UX κλπ
  • flavor (architecture, memory, storage) το μέγεθος του instance, αρχιτεκτονική, πόροι
  • realm, που βρίσκεται το datacenter πχ. ανατολική ακτή, Ευρώπη, κλπ
  • state, το instance τρέχει είτε είναι σταματημένο είναι ξεκινάει
  • public | private address, εσωτερικές οι εξωτερικές διευθύνσεις

Ακόμα το DeltaCloud είναι σε early stage και λείπουν drivers και για άλλα σύννεφα παρόλ' αυτα είναι μια προσπάθεια που αξίζει και μακάρι σύντομα να μπορούν οι εφαρμογές να πετάνε από σύννεφο σε σύννεφο χωρίς να μεσολαβούν πολλές αστραπές και βροντές!

1 Δεκ 09 - 1:58 // Bookmark and Share
Εικόνα: PanosJee
Παναγιώτης Παπαδόπουλος
Jack of all trades and master to none λένε οι φίλοι οι Αγγλοι και μάλλον δεν έχουν άδικο. περισσότερα »

Διαβάστηκαν περισσότερο σήμερα

7 Σχόλια

Εικόνα: Ανώνυμος

Οι 2 κατηγορίες που αναφέρεις είναι το PaaS και το IaaS.
http://en.wikipedia.org/wiki/Platform_as_a_service
http://en.wikipedia.org/wiki/Infrastructure_as_a_service

Τρί, 12/01/2009 - 13:40
Εικόνα: Ανώνυμος

Στη συγκεκριμένη περίπτωση νομίζω ότι η ομοιομορφία σκοτώνει την καινοτομία. Εδώ δεν έχουμε αποφασίσει τι σημαίνει το cloud computing και πάμε να το φορμουλάρουμε; Γιατί; Τι κίνητρο υπάρχει;

@cherovim είναι πολύ νωρίς στη ζωή της έννοιας του cloud computing για να χρησιμοποιούμε τους όρους που υπήρχαν για το grid computing :)

Αν έπρεπε να τα χωρίσουμε θα ήταν πιο δόκιμο να το κάνουμε αναφορικά με την 'προτιμώμενη χρήση' της κάθε υπηρεσίας. Θα πρότεινα:

- Αυτά που τρέχουν οτιδήποτε, πχ το Amazon EC2, που δε σου δίνουν καμία καθοδήγηση για το πως θα κάνεις κάτι, και απλώς σε αφήνουν να τρέξεις κώδικα πάνω σε ένα κλασικό offline λειτουργικό σύστημα. Παρεμπιπτόντως το EC2 είναι σχεδόν πανομοιότυπο με το Sun N1 Grid που πάτωσε, πράγμα που αποδεικνύει ότι και οι λογικοί προγραμματιστές μπορούν να πέσουν θύματα marketing.

- Αυτά που τρέχουν εφαρμογές γραμμένες σε κάτι συγκεκριμένο (γλώσσα, βιβλιοθήκη κτλ), όπου απαιτείται να προσαρμοστεί η εφαρμογή στην υποδομή και αυτό φέρνει κάποια αυτόματα ωφελήματα, πχ scaling, free storage κοκ. Εδώ πέφτουν τα Microsoft Azure, Google App Engine. Αυτά αποτελούν και reengineering της έννοιας του λειτουργικού συστήματος, αλλά σε μια κατάσταση όπου πχ το message bus (DDE στα Windows, DBUS σε Linux) σπάει και ενώ αποτελεί ένα ενιαίο API, από πίσω μοιράζεται σε πολλά δίκτυα και περισσότερους υπολογιστές, με ότι σημαίνει αυτό για τις υποθέσεις responsiveness και reliability που είχαν οι offline προγραμματιστές.

- Υβρίδια. Πχ το στο Azure προσπαθώντας να το κάνουν πιο ελκυστικό προσθέτουν σταδιακά χαρακτηριστικά του full VM hosting. Καθαρό υβρίδιο ήταν επίσης εξ' αρχής το (κατ' εμέ πιο καλοστημένο cloud offering) IBM Cloudmatrix, που παρέχει τις όποιες έξτρα υπηρεσίες έχει βάση το WebSphere και τις βιβλιοθήκες του Eclipse.

Κατ' εμέ η 2η είναι και η πιο παραγωγική τοποθέτηση. Ταυτόχρονα όμως, είναι και εντελώς αδύνατο να περιοριστεί σε ένα συμβόλαιο όπως ενα ενιαίο API. Θεωρώ ότι τα standard αρμόζουν σε πράγματα όπου ήδη ξέρουμε ποιά είναι η καλύτερη λύση (όλες οι πόρτες θα ανοίγουν προς τα αριστερά) και κάποια ανώτερη οντότητα (κράτος) θέλει να εξασφαλίσει ότι οι καταναλωτές (πολίτες) δε θα υποφέρουν από τις προσπάθειες των vendors για lock-in ή μονοπωλιακές συμπεριφορές.

Αν αφήσουμε την (κατ' εμέ ανεύθυνη) "κοινότητα" από την οποία προέκυψαν εκτρώματα όπως η javascript (έκτρωμα στα πλαίσια του enterprise computing) και ντροπές όπως τα διάφορα feed formats να αποφασίσει για πράγματα τα οποία είναι 100% enterprise computing τότε υποσκάπτουμε το αύριο στο οποίο θα ζούμε.

Τρί, 12/01/2009 - 16:45
Εικόνα: Ανώνυμος

Και κάτι σχετικό και φρέσκο
http://blogs.zdnet.com/microsoft/?p=4672

Τρί, 12/01/2009 - 23:14
Εικόνα: Ανώνυμος

@barak

ναι ακριβώς αυτο εννοούσα. Πέρυσι έβαλαν php, φέτος ruby κ κάμποσα άλλα, αλλά supported όχι να φέρεις την ευθύνη των πράξεών σου απόλυτα όπως πχ με ruby 2 python χακιές που κάνουν στο app engine.

Τρί, 12/01/2009 - 23:38
Εικόνα: PanosJee

@Γιώργος Κασσελάκης
Λεπτομερέστατη τοποθέτηση, ευχαριστούμε! Προσωπικά θεωρώ ως υπόδειμα το AppEngine για cloud εφαρμογή αλλά το cloud είναι λίγο hype. H λύση EC2 προσωπικά τη θεωρώ μια χαρά όταν θες custom setup γιατί το AppEngine δεν μπορεί να κάνει τα πάντα και ειδικά computing intensive εργασίες συνεπώς μια IaaS λύση είναι αυτό που θες όταν δεν έχει το σίδερο και θες να πληρώνεις ότι καις. Σε αυτή την περίπτωση δε με χαλάει να μπορώ σχετικά εύκολα να μετακινηθώ σε άλλη εταιρία.

@barak
Wow

Τετ, 12/02/2009 - 13:33
Εικόνα: Ανώνυμος

@Γιώργος
Άλλη η στρατηγική της Microsoft κι άλλη της Google. Η Microsoft προσπαθεί να φέρει τους πάντες πάνω στο cloud ώστε μετά να πουλήσει development tools, database licenses κ.ο.κ. Η Google πέρα από το service αυτό καθαυτό δεν έχει κάτι να πουλήσει, επομένως δεν έχει και καμιά ιδιαίτερη σκασίλα να υποστηρίξει διαφορετικά περιβάλλοντα.

Τετ, 12/02/2009 - 15:06

Πες μας την βασιλική σου γνώμη

Το περιεχόμενο αυτού του πεδίου παραμένει ιδιωτικό και δε θα εμφανίζεται δημόσια. If you have a Gravatar account, used to display your avatar.
  • Διευθύνσεις ιστού και e-mail μετατρέπονται αυτόματα σε παραπομπές.
  • Επιτρεπόμενες ετικέτες HTML: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <h2> <h3> <h4> <p> <img> <code> <blockquote>
  • Αυτόματες αλλαγές γραμμών και παραγράφων.
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>, <c>, <cpp>, <css>, <drupal5>, <drupal6>, <html>, <java>, <javascript>, <php>, <python>, <robots>, <ruby>, <sql>, <xml>. Beside the tag style "<foo>" it is also possible to use "[foo]".

Περισσότερες πληροφορίες για τις επιλογές μορφοποίησης


© 2006-2010 Webz.gr | Designed by Alexander Lingris
Feedback