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

Τι είναι το CaaS; Απλούστερη διαχείριση κοντέινερ

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

Η χρήση εμπορευματοκιβωτίων αυξάνεται σταθερά με τις επιχειρήσεις παγκοσμίως, με το 65% των οργανισμών να δηλώνουν ότι χρησιμοποιούν κοντέινερ Docker και το 58% χρησιμοποιούν το σύστημα ενορχήστρωσης Kubernetes κατά κάποιο τρόπο, σύμφωνα με την τελευταία έκθεση του Flexera για το 2020.

Η έλλειψη πόρων και εμπειρογνωμοσύνης αναφέρεται συχνά ως βασικές προκλήσεις στη χρήση κοντέινερ για την κατασκευή και συντήρηση εφαρμογών. Επομένως, δεν πρέπει να προκαλεί έκπληξη το γεγονός ότι οι προγραμματιστές στρέφονται όλο και περισσότερο στον αυτοματισμό που παρέχεται από τις προσφορές κοντέινερ-ως-υπηρεσία (CaaS), με τους τρεις μεγάλους παρόχους cloud να πρωτοστατούν.

Καθορισμένα κοντέινερ ως υπηρεσία ή CaaS

Με το CaaS, οι προμηθευτές cloud παρέχουν ουσιαστικά μια φιλοξενούμενη μηχανή ενορχήστρωσης κοντέινερ - συνήθως βασίζεται στο εξαιρετικά δημοφιλές έργο ανοιχτού κώδικα Kubernetes, το οποίο προήλθε από την Google - για ανάπτυξη και διαχείριση κοντέινερ, διαχείριση συμπλεγμάτων, αυτοματοποίηση κλιμάκωσης και διαχείρισης αποτυχιών και συντήρηση της κοινής υποδομής επίπεδο, με διακυβέρνηση και ασφάλεια.

Γενικά, όλες οι λειτουργίες δικτύωσης, εξισορρόπησης φορτίου, παρακολούθησης, καταγραφής, ελέγχου ταυτότητας, ασφάλειας, αυτόματης κλιμάκωσης και συνεχούς ολοκλήρωσης / συνεχούς παράδοσης (CI / CD) καλύπτονται από την πλατφόρμα CaaS.

Αυτό επιτρέπει στους οργανισμούς να αξιοποιήσουν τα οφέλη της υποδομής cloud, ενώ ταυτόχρονα βοηθούν στην αποφυγή τυχόν κλειδώματος προμηθευτή που θα συνοδεύει την τυπική πλατφόρμα ως υπηρεσία (PaaS) - όπως AWS Elastic Beanstalk, Azure App Service, ή Google App Engine - καθώς τα ίδια τα κοντέινερ επιτρέπουν την απλή φορητότητα σε διάφορα περιβάλλοντα.

Εάν τα κοντέινερ είναι ο τρόπος που θέλετε να πάτε, τότε η διαφορά μεταξύ CaaS και λειτουργίας σε κλασική υποδομή ως υπηρεσία (IaaS) εξαρτάται από το εάν ο οργανισμός σας διαθέτει τους πόρους και τις δεξιότητες για να εφαρμόσει και να διαχειριστεί το Kubernetes (ή άλλη ενορχήστρωση κοντέινερ) layer), ή θα επωφεληθεί αφήνοντάς το σε έναν πάροχο cloud. Η απόφαση μπορεί επίσης να ενεργοποιηθεί εάν το περιβάλλον του κοντέινερ σας πρέπει να εκτείνεται σε πολλά σύννεφα ή / και περιβάλλοντα κατά την εγκατάσταση. Ορισμένοι προμηθευτές προσφέρουν πλατφόρμες CaaS που μπορούν να αναπτυχθούν είτε on-prem είτε στο cloud (δείτε παρακάτω).

«Μπορείτε είτε να διαχειριστείτε τα πράγματα σε επίπεδο υποδομής και να ρυθμίσετε μόνοι σας τον ενορχηστρωτή ή μπορείτε να χρησιμοποιήσετε μια πλατφόρμα κοντέινερ που χειρίζεται την υποκείμενη υποδομή και παρέχει έναν προεγκατεστημένο ενορχηστρωτή έτοιμο για να αναπτύξετε και να κλιμακώσετε τα κοντέινερ σας», έγραψε η πρώην Deutsche Bank Ο προγραμματιστής του BBC Rob Isenberg στο βιβλίο του, Docker for Rails Developers, που εκδόθηκε από τον O'Reilly.

Τα οφέλη

Η εκτέλεση των κοντέινερ σας στο CaaS είναι παρόμοια με την εκτέλεση των εικονικών σας μηχανών στο IaaS: Τα κύρια πλεονεκτήματα είναι η ταχύτητα ανάπτυξης και η ευκολία χρήσης, καθώς και η απλότητα του μοντέλου cloud pay-as-you-go και η προαναφερθείσα ελευθερία από το κλείδωμα προμηθευτή -σε.

Αφήνοντας την υποδομή κοντέινερ σε έναν προμηθευτή cloud, μπορείτε να ξεκινήσετε και να λειτουργήσετε χωρίς να επενδύσετε στο δικό σας υλικό και χωρίς να δημιουργήσετε και να εκτελέσετε τα δικά σας σύμπλεγμα Kubernetes (ή άλλο σύστημα ενορχήστρωσης κοντέινερ). Επιπλέον, με κοντέινερ εφαρμογών, μπορείτε να μεταφέρετε πιο εύκολα εφαρμογές σε διαφορετικά περιβάλλοντα ή οικοσυστήματα προμηθευτών, δίνοντας μεγαλύτερη ευελιξία και δυνατότητες κλιμάκωσης.

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

Ένα άλλο πλεονέκτημα είναι η συνοχή των οργάνων και της καταγραφής, καθώς η απομόνωση μεμονωμένων υπηρεσιών σε κοντέινερ μπορεί να επιτρέψει αποτελεσματικότερη συγκέντρωση καταγραφής και κεντρική παρακολούθηση μέσω του δημοφιλούς μοντέλου ανάπτυξης του sidecar.

Η μετεγκατάσταση παραδοσιακών εφαρμογών σε κοντέινερ παραμένει ένα σημαντικό εμπόδιο για την υιοθέτηση, ακόμη και όταν εκτελείται σε CaaS, όπως αναφέρεται από το 34% των ερωτηθέντων στην έκθεση Flexera's State of Cloud. Η μετεγκατάσταση σε κοντέινερ συχνά συνεπάγεται τη διάσπαση μονολιθικών εφαρμογών σε μικροϋπηρεσίες, οι οποίες για μεγαλύτερους, παλαιότερους οργανισμούς μπορεί να είναι μια σημαντική πολιτιστική και τεχνική αλλαγή που δεν πρέπει να ληφθεί σοβαρά υπόψη.

[Επίσης στο: Τι είναι το Docker; Η σπίθα για την επανάσταση των εμπορευματοκιβωτίων]

Κορυφαίες επιλογές προμηθευτή

Οι περισσότεροι από τους μεγαλύτερους παρόχους cloud έχουν προσφορές CaaS και υπάρχουν αρκετοί άλλοι πάροχοι που θέλουν να συμμετάσχουν στη δράση.

Ο ηγέτης της αγοράς υπηρεσιών Cloud Amazon Web Services (AWS) έχει δει την ισχυρή υιοθέτηση της υπηρεσίας Elastic Container χωρίς Kubernetes (ECS) και της υπηρεσίας Elastic Kubernetes (EKS). Παρομοίως, η υιοθέτηση της υπηρεσίας Azure Kubernetes αυξάνεται σημαντικά σύμφωνα με την ανάλυση της Flexera, όπως και η μηχανή Google Kubernetes (GKE).

Και οι τρεις γίγαντες cloud προσφέρουν τώρα χωρίς διακομιστή Υπηρεσίες Kubernetes, με AWS ECS στο Fargate, Google Cloud Run στο GKE και Azure Container Instances. Σε αντίθεση με τα EKS, AKS και GKE, αυτές οι υπηρεσίες αφαιρούν την ανάγκη εκτέλεσης εργασιών διαχείρισης διακομιστή και είναι ιδανικές για περιπτώσεις χρήσης κατά παραγγελία.

Πολλές από τις δυνατότητες διαχείρισης κοντέινερ του Google Cloud βρίσκονται τώρα κάτω από την ομπρέλα Anthos, η οποία επιτρέπει τη διαχείριση εφαρμογών που βασίζονται σε κοντέινερ σε εσωτερικές υποδομές και τα μεγάλα δημόσια σύννεφα (Google Cloud Platform και AWS τώρα, με υποστήριξη Azure εν κινήσει). Το Anthos συνδυάζει το GKE για φόρτο εργασίας cloud, το GKE On-Prem και την κονσόλα διαχείρισης Anthos Config, η οποία επιτρέπει την κεντρική διαχείριση, τις πολιτικές και την ασφάλεια σε υβριδικές και πολλαπλές εφαρμογές Kubernetes.

Εκτός από τους «μεγάλους τρεις» προμηθευτές cloud, οι προμηθευτές συμπεριλαμβανομένων των IBM / Red Hat, VMware, SUSE / Rancher, Canonical, D2iQ (πρώην Mesosphere), Rackspace, Oracle, HPE, Alibaba, Huawei και Tencent έχουν όλοι μια γεύση ενός διαχειριζόμενου Επιλογή CaaS. Ορισμένες από αυτές τις προσφορές μπορούν να αναπτυχθούν on-prem, σε δημόσια σύννεφα ή και τα δύο.

Ποια πλατφόρμα είναι η καλύτερη;

Ο οίκος αναλυτών της βιομηχανίας Gartner δεν διαθέτει ένα μαγικό τεταρτημόριο για τους παρόχους CaaS, αλλά στην τελευταία έκθεση του Competitive Landscape: Public Cloud Container Services από τον Wataru Katsurashima, προσδιορίζει το GKE της Google ως την κορυφαία διαχειριζόμενη επιλογή Kubernetes.

Οι αναλυτές στο Forrester έθεσαν την AWS στο κορυφαίο σημείο των πιο πρόσφατων πλατφορμών κοντέινερ του New Wave for Public Cloud Enterprise, το τρίτο τρίμηνο του 2019, με τη Microsoft και την Google ακριβώς πίσω. Θα πρέπει να σημειωθεί ότι η αναφορά Forrester αντιπροσώπευε μόνο επτά προμηθευτές και επικεντρώνεται αυστηρά στις δημόσιες εφαρμογές cloud.

Η AWS «οδηγεί το πακέτο με επιλογές ανάπτυξης, ασφάλεια και βαθιές ενσωματώσεις», σύμφωνα με τους συγγραφείς του Forrester, Dave Bartoletti και Charlie Dai. «Με ένα ευρύ φάσμα επιλογών κατανάλωσης Kubernetes (K8s) που διαχειρίζονται πλήρως (και χωρίς διακομιστές) και τα περισσότερα κοντέινερ που αναπτύσσονται απευθείας στην υποδομή cloud, η AWS συνεχίζει να καινοτομεί και να ενσωματώνει βαθιά την πλατφόρμα κοντέινερ με τις κορυφαίες δυνατότητες ασφάλειας και δικτύωσης.»

Η έκθεση Forrester προέτρεψε τόσο τη Microsoft όσο και την Google να απλοποιήσουν τις πλατφόρμες κοντέινερ τους. Η Microsoft επαινέθηκε για την ισχυρότερη εμπειρία προγραμματιστή και την παγκόσμια εμβέλειά της, αλλά χτύπησε για την πολυπλοκότητά της - η οποία ήταν ένα κοινό απόσπασμα στην έκθεση. Η Google κέρδισε επαίνους για τη βαθιά εξειδίκευσή της στο Kubernetes και τις προσπάθειές της να διασχίσει περιβάλλοντα πολλαπλών ηχείων, αλλά επικρίθηκε επίσης για την πολυπλοκότητα.

Τούτου λεχθέντος, το AWS EKS παραμένει η πιο συχνά χρησιμοποιούμενη πλατφόρμα διαχείρισης εμπορευματοκιβωτίων, σύμφωνα με την έρευνα CNCF 2019, με τα GKE, Docker EE / CE και AKS να ακολουθούν ακριβώς πίσω.

Η Έκθεση State of Cloud Report της Flexera 2020 συνδέει τη χρήση εταιρειών AWS EKS / ECS στο 55%, ενώ το 23% των ερωτηθέντων επιχειρήσεων σχεδιάζουν να χρησιμοποιήσουν αυτές τις επιλογές CaaS στο μέλλον. Η υιοθέτηση της υπηρεσίας Azure Kubernetes έφτασε το 50%, ενώ το 26% σχεδιάζει να χρησιμοποιήσει το AKS στο μέλλον. Και το Google Kubernetes Engine έφτασε το 26 τοις εκατό, με το 27 τοις εκατό των εταιρικών ερωτηθέντων να σχεδιάζουν να χρησιμοποιήσουν το GKS. Ωστόσο, η αυτοδιαχειριζόμενη Kubernetes εξακολουθεί να ξεπερνά όλες τις επιλογές στο 63% των ερωτηθέντων επιχειρήσεων, σύμφωνα με την έκθεση Flexera.

Άλλοι πόροι

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

Δεν υπάρχουν ακόμη πολλά βιβλία για το θέμα, αλλά το Εγχειρίδιο του Αρχιτέκτονα Λογισμικού από το O'Reilly παρέχει μια καλή επισκόπηση.

Τέλος, η Docker βρίσκεται στο κέντρο διαχείρισης εμπορευματοκιβωτίων και εμπορευματοκιβωτίων εδώ και χρόνια και η εταιρεία έχει καλό περιεχόμενο βίντεο σχετικά με το θέμα, συμπεριλαμβανομένης αυτής της συνόδου με το τεχνικό μέλος του Patrick Chanezon, και αυτή η επισκόπηση από τον Sandor Klein, αντιπρόεδρο για την Ευρώπη , Μέση Ανατολή και Αφρική.