Προγραμματισμός

Ετοιμαστείτε για τη νέα στοίβα

Η εικονικοποίηση μπορεί να είναι η πιο επιτυχημένη τεχνολογία που ξεπέρασε το όριο του κέντρου δεδομένων επιχειρήσεων. Η εξαιρετικά καλύτερη χρήση του υλικού και η ικανότητα περιστροφής των VM σε μια δεκάρα έχει κάνει την εικονικοποίηση εύκολη πώληση την τελευταία δεκαετία, σε σημείο που ο Gartner πρόσφατα υπολόγισε ότι το 70% των φορτίων εργασίας x86 εικονικοποιούνται.

Ωστόσο, η φανταστική ιδιωτική ουσία cloud πάνω από αυτό το επίπεδο εικονικοποίησης ήταν αργή. Ναι, τα εργαλεία διαχείρισης εικονικοποίησης από το VMware και τη Microsoft επέτρεψαν τη συμπεριφορά που μοιάζει με σύννεφο για διακομιστές και αποθηκευτικό χώρο, και ακόμη και το OpenStack επιτυγχάνει τελικά μια μικρή επιχειρηματική έλξη - αλλά τα προηγμένα δημόσια σύννεφα που προσφέρουν οι Amazon, Google, IBM, Microsoft και Rackspace προσφέρουν πολύ περισσότερα προηγμένη αυτόματη κλιμάκωση, μέτρηση και αυτοεξυπηρέτηση (για να μην αναφέρουμε εκατοντάδες άλλες υπηρεσίες). Επιπλέον, το επίπεδο cloud PaaS για ανάπτυξη, δοκιμή και ανάπτυξη εφαρμογών - που προσφέρεται τώρα από όλα τα μεγάλα δημόσια σύννεφα - έχει βρεθεί σε σχετικά λίγα κέντρα δεδομένων επιχειρήσεων.

Στη συνέχεια, ο Docker βγήκε στη σκηνή πέρυσι, προσφέροντας μια νέα στοίβα cloud που βασίζεται σε κοντέινερ και όχι σε VM. Τα εμπορευματοκιβώτια έχουν πολύ μικρότερο βάρος από τα VM και επιτρέπουν στις εφαρμογές να συσκευάζονται και να μετακινούνται με ευκολία, χωρίς την ταλαιπωρία της συμβατικής εγκατάστασης. Εάν τα σύννεφα που βασίζονται σε VM έχουν σταματήσει και η νέα στοίβα με βάση κοντέινερ προσφέρει τέτοια προφανή πλεονεκτήματα, θα προχωρήσει η νέα στοίβα στην επιχείρηση για να παραδώσει ένα νέο ιδιωτικό σύννεφο;

Ο Zorawar Biri Singh, πρώην επικεφαλής της HP Cloud Services και τώρα συνεργάτης επιχείρησης στην Khosla Ventures, πιστεύει ότι ο θρίαμβος της νέας στοίβας είναι αναπόφευκτος - αλλά είμαστε ακόμη χρόνια μακριά από την υιοθέτηση της επιχείρησης. Εδώ βλέπει τα σημεία συμφόρησης:

Πρώτον, για τις παραδοσιακές επιχειρήσεις και τον παραδοσιακό φόρτο εργασίας, η τρέχουσα δαπάνη πληροφορικής εστιάζεται στην απλοποίηση και διαχείριση της επέκτασης VM μέσω συγκλίνουσας λύσης στο κέντρο δεδομένων. Δεύτερον, η νέα στοίβα είναι ακόμα εύθραυστη και νωρίς. Η πραγματική χρησιμότητα γύρω από τα εμπορευματοκιβώτια, όπως η σκληρυμένη ασφάλεια, εξακολουθεί να μην επαρκεί. Αυτήν τη στιγμή, η νέα στοίβα είναι ένα πολύ καλό έδαφος σποράς για τους φορτιστές εργασίας και δοκιμών. Όμως, το πραγματικό σημείο τριβής είναι ότι οι ομάδες IT της εταιρικής παραγωγής-φόρτου εργασίας δεν έχουν τον προσανατολισμό του devops ή το ευέλικτο υπόβαθρο IT για να μπορούν να αναπτύξουν και να υποστηρίξουν κατανεμημένες ή απάτριδες εφαρμογές. Ένα από τα μεγαλύτερα ζητήματα είναι ότι υπάρχει απλώς ένα τεράστιο χάσμα δεξιοτήτων στους devops σε παραδοσιακούς επιχειρησιακούς οργανισμούς.

Από την άλλη πλευρά, λέει ο Σινγκ, "ορισμένες ομάδες προγραμματιστών και επιχειρηματικές γραμμές που βρίσκονται ήδη σε αυτήν την υποδομή." Σε τέτοιες περιπτώσεις, είτε οι μέθοδοι devops υπάρχουν ήδη, είτε οι πρωτοπόροι προγραμματιστές χειρίζονται την ίδια την πλευρά της λειτουργίας της στοίβας που βασίζεται στο κοντέινερ.

Ακριβώς όπως οι προγραμματιστές οδήγησαν στην υιοθέτηση βάσεων δεδομένων NoSQL, βρίσκονται στην πρώτη γραμμή της νέας στοίβας, κατεβάζουν λογισμικό ανοιχτού κώδικα και πειραματίζονται - ή στρέφονται σε δημόσια σύννεφα όπως το EC2 ή το Azure που υποστηρίζουν ήδη κοντέινερ.

Οι μικροϋπηρεσίες επιβάλλουν

Γιατί οι προγραμματιστές συμπαθούν τόσο τη νέα στοίβα; Σε μεγάλο βαθμό, επειδή τα κοντέινερ είναι ευνοϊκά για την αρχιτεκτονική των μικροϋπηρεσιών, όπου οι συλλογές μιας χρήσης, προσβάσιμων από API υπηρεσιών αντικαθιστούν μονολιθικές εφαρμογές. Η αρχιτεκτονική Microservices επιτρέπει στους προγραμματιστές να δημιουργούν εφαρμογές που είναι πιο προσαρμόσιμες σε νέες απαιτήσεις - και να δημιουργούν εντελώς νέες εφαρμογές γρήγορα χρησιμοποιώντας υπάρχουσες υπηρεσίες.

Ο John Sheehan, συνιδρυτής και διευθύνων σύμβουλος της υπηρεσίας παρακολούθησης και δοκιμών API Runscope, βλέπει τις μικροϋπηρεσίες ως «εκσυγχρονισμό» του SOA (αρχιτεκτονική προσανατολισμένη στις υπηρεσίες). "Οι βασικές ευθύνες είναι σε μεγάλο βαθμό οι ίδιες", λέει η Sheehan. "Θέλουμε να διανείμουμε διαφορετικά τμήματα της αρχιτεκτονικής του λογισμικού μας σε διαφορετικά συστήματα και να το χωρίσουμε όχι μόνο από όρια κώδικα αλλά και από όρια υπηρεσίας. Αυτή η μάθηση έχει μεταφερθεί στις μικροϋπηρεσίες."

Η αρχιτεκτονική Microservices βασίζεται σε απλούστερα, πιο φιλικά για προγραμματιστές πρωτόκολλα από ό, τι έκανε η SOA - REST σε αντίθεση με το SOAP. JSON σε αντίθεση με το XML. Η Sheehan σημειώνει μια άλλη βασική διαφορά:

Οι τύποι μικροϋπηρεσιών που βλέπουμε και οι πελάτες μας τείνουν να χρησιμοποιούν είναι πολύ καθοδηγημένοι. Εσωτερικά, αναπτύσσουμε περίπου 31 φορές την ημέρα στην εταιρεία μας σε όλες τις διαφορετικές υπηρεσίες μας. Είμαστε 14 άτομα και έχουμε περίπου 40 διαφορετικές υπηρεσίες που εκτελούνται εσωτερικά. Τόσο μεγάλο μέρος της είναι η τοποθέτηση της απαραίτητης υποδομής, ώστε κάθε ομάδα να είναι σε θέση να αναπτύξει, να κλιμακώσει, να παρακολουθήσει και να μετρήσει κάθε υπηρεσία ανεξάρτητα.

Σε ένα τέτοιο σενάριο, η γραμμή μεταξύ dev και ops θολώνει. Το προσωπικό της Ops γράφει κώδικα για τη διαχείριση της υποδομής, καθιστώντας ουσιαστικά μέρος της ομάδας ανάπτυξης. "Υπάρχει πολύ μικρή διάκριση μεταξύ της ομάδας ops και της ομάδας εφαρμογών", λέει η Sheehan. Στις λειτουργίες, "τυχαίνει να κωδικοποιείτε εναντίον διακομιστών αντί να κωδικοποιείτε κατά της υπηρεσίας."

Ο Σινγκ πιστεύει ότι η προσέγγιση μικροϋπολογιστών με εντατικούς υπολογιστές μπορεί να εξαλείψει την ανάγκη για "επίσημο" PaaS. Τέτοιες προσφορές PaaS όπως το Cloud Foundry ή το OpenShift προσφέρουν προκαθορισμένες συλλογές υπηρεσιών και διαδικασιών για την κατασκευή, τον έλεγχο και την ανάπτυξη εφαρμογών - ενώ, στη νέα στοίβα, πλούσια σύνολα προσβάσιμων σε API μικροσυσκευών μπορούν να ενσωματωθούν σε κάθε επίπεδο. Τόσο οι dev όσο και οι ops μπορούν να συνδέσουν μικροσυσκευές πάνω και κάτω από τη στοίβα, χωρίς τους περιορισμούς που επιβάλλει η PaaS.

Ένα διαφορετικό είδος υβριδικού

Η αρχιτεκτονική των μικροϋπηρεσιών ενδέχεται να ξεπεράσει το PaaS, αλλά ολόκληρη η νέα στοίβα δεν θα ριζώσει εν μία νυκτί. Για παράδειγμα, το Netflix θεωρείται ευρέως ότι διαθέτει την πιο προηγμένη ανάπτυξη μικροσυστημάτων οπουδήποτε και καθιστά πολλές προ-ενσωματωμένες υπηρεσίες διαθέσιμες στην κοινότητα ανοιχτού κώδικα ως εικόνες Docker στο Docker Hub - αλλά το Netflix δεν χρησιμοποιεί το Docker στην παραγωγή. Ούτε το Runscope, για αυτό το θέμα. Και οι δύο χρησιμοποιούν συμβατικά VMs.

Παρά το τεράστιο ενδιαφέρον των προγραμματιστών για λύσεις που βασίζονται σε κοντέινερ, είναι πρώτες μέρες. Πρώτον, τα εργαλεία ενορχήστρωσης και διαχείρισης εμπορευματοκιβωτίων, όπως η Μεσόσφαιρα και το Kubernetes, εξακολουθούν να εξελίσσονται. Για ένα άλλο, δεν είναι σαφές ποιο πρότυπο κοντέινερ θα κερδίσει, με τον CoreOS να αποτελεί μια σημαντική πρόκληση για τον Docker τον περασμένο Δεκέμβριο. Η στοίβα με βάση το κοντέινερ μπορεί να θριαμβεύσει τελικά, αλλά θα χρειαστεί λίγη ώρα.

"Βλέπουμε ότι το πιο πιθανό αποτέλεσμα είναι ότι τα κοντέινερ και τα VM θα χρησιμοποιηθούν σε συνδυασμό", λέει ο Kurt Milne από τον πάροχο διαχείρισης πολλαπλών ηχείων Cliqr. Αυτό θα μπορούσε να σημαίνει την εκτέλεση κοντέινερ μέσα σε VM - ή θα μπορούσε απλώς να σημαίνει ότι οι νέες στοίβες με βάση κοντέινερ και οι στοίβες που βασίζονται σε VM θα τρέχουν δίπλα-δίπλα.

Αυτό το υβριδικό σενάριο ανοίγει μια ευκαιρία για το VMware και άλλους που έχουν δημιουργήσει διαχείριση και ενορχήστρωση για εικονικοποίηση. Σε μια συνέντευξη με την περασμένη εβδομάδα, ο εκτελεστικός αντιπρόεδρος της VMware Raghu Raghuram αρνήθηκε να δει τα εμπορευματοκιβώτια ως απειλή. Αντ 'αυτού, είπε:

Βλέπουμε τα κοντέινερ ως έναν τρόπο να φέρουμε νέες εφαρμογές στην πλατφόρμα μας. Όταν προγραμματιστές ή άτομα πληροφορικής αναρωτιούνται τι χρειάζονται για να εκτελέσουν κοντέινερ με έναν ισχυρό τρόπο, αποδεικνύεται ότι χρειάζονται ένα επίπεδο υποδομής από κάτω - χρειάζονται επιμονή, χρειάζονται δικτύωση, χρειάζονται τείχος προστασίας, χρειάζονται διαχείριση πόρων και όλα αυτά τα είδη πράγματα. Το έχουμε ήδη δημιουργήσει. Όταν τοποθετείτε το μηχανισμό κοντέινερ πάνω από αυτό, τότε μπορείτε να αρχίσετε να χρησιμοποιείτε την ίδια υποδομή και για αυτά τα πράγματα. Βλέπουμε μοτίβα όπου η πρόσοψη του απάτριου Ιστού είναι όλα κοντέινερ και η επιμονή και οι βάσεις δεδομένων είναι όλα VM . Είναι ένας συνδυασμός και των δύο. Τώρα λοιπόν το ερώτημα είναι: Τι είναι ένα κοινό περιβάλλον υποδομής και ένα κοινό περιβάλλον διαχείρισης; Το βλέπουμε ως τεράστια ευκαιρία για εμάς.

Ο Raghuram αρνήθηκε να πει πότε το VMware μπορεί να επεκτείνει τα εργαλεία διαχείρισης του στο επίπεδο κοντέινερ, αλλά η επίπτωση είναι σαφής. Θα είναι ενδιαφέρον να δούμε πώς θα προσεγγιστεί η προσέγγιση VMware με γνώμονα τις λειτουργίες από τους προγραμματιστές που οδηγούν τον σημερινό πειραματισμό βάσει κοντέινερ.

Αυτό που είναι ξεκάθαρο είναι ότι, παρά τον τρέχοντα ενθουσιασμό, η νέα στοίβα δεν θα αντικαταστήσει την υπάρχουσα σε ένα δραματικό κύμα rip-and-αντικατάστασης. Όπως με την υιοθέτηση cloud, η στοίβα που βασίζεται σε κοντέινερ θα χρησιμοποιηθεί σχεδόν αποκλειστικά για dev και δοκιμή πρώτα. Η τεράστια υπάρχουσα επένδυση στην υποδομή εικονικοποίησης δεν θα απορριφθεί από το παράθυρο του κέντρου δεδομένων.

Ωστόσο, η νέα στοίβα με βάση τα κοντέινερ είναι ένα μεγάλο άλμα προς τα εμπρός στον έλεγχο ευελιξίας και προγραμματιστή. Οι προγραμματιστές ανακαλύπτουν και υιοθετούν τα εργαλεία που χρειάζονται για να χτίσουν την αρχιτεκτονική των μικροϋπηρεσιών και να προσφέρουν περισσότερες και καλύτερες εφαρμογές σε ένα φανταστικό κλιπ. Καθώς τα κομμάτια πέφτουν στη θέση τους και οι δεξιότητες devops γίνονται πανταχού παρόντες, μπορείτε να στοιχηματίσετε ότι η νέα στοίβα θα ριζώσει τόσο ασταμάτητα όσο έκανε η εικονικοποίηση.

$config[zx-auto] not found$config[zx-overlay] not found