OpenShift ως εταιρική έκδοση του Kubernetes. Μέρος 1

"Ποια είναι η διαφορά μεταξύ Kubernetes και OpenShift;" – αυτό το ερώτημα τίθεται με αξιοζήλευτη συνέπεια. Αν και στην πραγματικότητα αυτό είναι σαν να ρωτάς σε τι διαφέρει ένα αυτοκίνητο από έναν κινητήρα. Αν συνεχίσουμε την αναλογία, τότε ένα αυτοκίνητο είναι ένα τελικό προϊόν, μπορείτε να το χρησιμοποιήσετε αμέσως, κυριολεκτικά: μπείτε και πηγαίνετε. Από την άλλη, για να σε πάει κάπου ένας κινητήρας, πρέπει πρώτα να συμπληρωθεί με ένα σωρό άλλα πράγματα για να πάρεις τελικά το ίδιο αυτοκίνητο.

OpenShift ως εταιρική έκδοση του Kubernetes. Μέρος 1

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

Σε αυτό το άρθρο θέλουμε να σας υπενθυμίσουμε και να εξετάσουμε τα ακόλουθα βασικά σημεία λίγο πιο αναλυτικά:

  • Το Kubernetes είναι η καρδιά της πλατφόρμας OpenShift και είναι 100% πιστοποιημένο Kubernetes, εντελώς ανοιχτού κώδικα και χωρίς την παραμικρή ιδιόκτητη φύση. Εν ολίγοις:
    • Το OpenShift Cluster API είναι XNUMX% Kubernetes.
    • Εάν το κοντέινερ εκτελείται σε οποιοδήποτε άλλο σύστημα Kubernetes, τότε θα τρέχει στο OpenShift χωρίς καμία αλλαγή. Δεν χρειάζεται να κάνετε αλλαγές στις εφαρμογές.
  • Το OpenShift όχι μόνο προσθέτει χρήσιμες λειτουργίες και λειτουργικότητα στο Kubernetes. Όπως ένα αυτοκίνητο, το OpenShift είναι εκτός συσκευασίας, μπορεί να τεθεί αμέσως σε παραγωγή και, όπως θα δείξουμε παρακάτω, κάνει τη ζωή ενός προγραμματιστή πολύ πιο εύκολη. Γι' αυτό το OpenShift είναι ενωμένο σε δύο πρόσωπα. Είναι μια επιτυχημένη και πολύ γνωστή πλατφόρμα PaaS για επιχειρήσεις από την πλευρά του προγραμματιστή. Και ταυτόχρονα, είναι μια εξαιρετικά αξιόπιστη λύση Container-as-a-Service από την άποψη της βιομηχανικής λειτουργίας.

Το OpenShift είναι Kubernetes με 100% πιστοποίηση CNCF

Το OpenShift βασίζεται σε Πιστοποίηση Kubernetes. Επομένως, μετά από σωστή εκπαίδευση, οι χρήστες εκπλήσσονται από τη δύναμη του kubectl. Και όσοι άλλαξαν στο OpenShift από το Kubernetes Cluster συχνά λένε πόσο τους αρέσει πραγματικά ότι μετά την ανακατεύθυνση του kubeconfig στο σύμπλεγμα OpenShift, όλα τα υπάρχοντα σενάρια λειτουργούν άψογα.

Πιθανότατα έχετε ακούσει για το βοηθητικό πρόγραμμα γραμμής εντολών του OpenShift που ονομάζεται OC. Είναι πλήρως συμβατό με τις εντολές του kubectl, ενώ προσφέρει αρκετούς χρήσιμους βοηθούς που θα σας φανούν χρήσιμοι κατά την εκτέλεση πολλών εργασιών. Αλλά πρώτα, λίγα περισσότερα για τη συμβατότητα του OC και του kubectl:

εντολές kubectl
Ομάδες OC

kubectl πάρει λοβό
oc πάρε λοβό

kubectl λαμβάνει χώρους ονομάτων
oc λάβετε χώρους ονομάτων

kubectl δημιουργία -f deployment.yaml
oc δημιουργία -f deployment.yaml

Δείτε πώς φαίνονται τα αποτελέσματα της χρήσης του kubectl στο OpenShift API:

• kubectl get pods – επιστρέφει τα pods όπως αναμένεται.

OpenShift ως εταιρική έκδοση του Kubernetes. Μέρος 1

• kubectl get namespaces – επιστρέφει τους χώρους ονομάτων όπως αναμένεται.

OpenShift ως εταιρική έκδοση του Kubernetes. Μέρος 1
Η εντολή kubectl create -f mydeployment.yaml δημιουργεί πόρους kubernetes όπως και σε οποιαδήποτε άλλη πλατφόρμα Kubernetes, όπως φαίνεται στο παρακάτω βίντεο:


Με άλλα λόγια, όλα τα Kubernetes API είναι πλήρως διαθέσιμα στο OpenShift διατηρώντας παράλληλα 100% συμβατότητα. Γι' αυτό Το OpenShift αναγνωρίζεται ως πιστοποιημένη πλατφόρμα Kubernetes από το Cloud Native Computing Foundation (CNCF). 

Το OpenShift προσθέτει χρήσιμες λειτουργίες στο Kubernetes

Τα Kubernetes API είναι 100% διαθέσιμα στο OpenShift, αλλά το τυπικό βοηθητικό πρόγραμμα Kubernetes kubectl στερείται σαφώς λειτουργικότητας και ευκολίας. Αυτός είναι ο λόγος για τον οποίο η Red Hat έχει προσθέσει χρήσιμες λειτουργίες και εργαλεία γραμμής εντολών στο Kubernetes, όπως το OC (συντομογραφία του πελάτη OpenShift) και το ODO (OpenShift DO, αυτό το βοηθητικό πρόγραμμα απευθύνεται σε προγραμματιστές).

1. Βοηθητικό πρόγραμμα OC - μια πιο ισχυρή και βολική έκδοση του Kubectl

Για παράδειγμα, σε αντίθεση με το kubectl, σας επιτρέπει να δημιουργείτε νέους χώρους ονομάτων και να αλλάζετε εύκολα περιβάλλοντα, ενώ προσφέρει επίσης μια σειρά από χρήσιμες εντολές για προγραμματιστές, όπως δημιουργία εικόνων κοντέινερ και ανάπτυξη εφαρμογών απευθείας από πηγαίο κώδικα ή δυαδικά αρχεία (Πηγή σε εικόνα, s2i).

Ας δούμε παραδείγματα για το πώς οι ενσωματωμένοι βοηθοί και η προηγμένη λειτουργικότητα του βοηθητικού προγράμματος OC βοηθούν στην απλοποίηση της καθημερινής εργασίας.

Το πρώτο παράδειγμα είναι η διαχείριση χώρου ονομάτων. Κάθε σύμπλεγμα Kubernetes έχει πάντα πολλούς χώρους ονομάτων. Συνήθως χρησιμοποιούνται για τη δημιουργία περιβαλλόντων ανάπτυξης και παραγωγής, αλλά μπορούν επίσης να χρησιμοποιηθούν, για παράδειγμα, για να παρέχουν σε κάθε προγραμματιστή ένα προσωπικό sandbox. Στην πράξη, αυτό έχει ως αποτέλεσμα ο προγραμματιστής να χρειάζεται συχνά εναλλαγή μεταξύ χώρων ονομάτων, καθώς το kubectl εκτελείται στο πλαίσιο του τρέχοντος χώρου. Επομένως, στην περίπτωση του kubectl, οι άνθρωποι χρησιμοποιούν ενεργά βοηθητικά σενάρια για αυτό. Αλλά όταν χρησιμοποιείτε OC, για να μεταβείτε στον επιθυμητό χώρο, πείτε απλώς "oc project namespace".

Δεν θυμάστε πώς ονομάζεται ο χώρος ονομάτων που χρειάζεστε; Κανένα πρόβλημα, απλώς πληκτρολογήστε "oc get projects" για να εμφανιστεί η πλήρης λίστα. Αναρωτιέστε πώς θα λειτουργήσει αυτό εάν έχετε πρόσβαση μόνο σε ένα περιορισμένο υποσύνολο χώρων ονομάτων στο σύμπλεγμα; Λοιπόν, επειδή το kubectl το κάνει σωστά μόνο εάν το RBAC σας επιτρέπει να βλέπετε όλα τα κενά στο σύμπλεγμα, και σε μεγάλα συμπλέγματα δεν δίνονται σε όλους τέτοια δικαιώματα. Έτσι, απαντάμε: για το OC αυτό δεν είναι καθόλου πρόβλημα και θα παράγει εύκολα μια πλήρη λίστα σε μια τέτοια κατάσταση. Είναι αυτά τα μικρά πράγματα που συνθέτουν τον εταιρικό προσανατολισμό του Openshift και την καλή επεκτασιμότητα αυτής της πλατφόρμας όσον αφορά τους χρήστες και τις εφαρμογές

2. ODO - μια βελτιωμένη έκδοση του kubectl για προγραμματιστές

Ένα άλλο παράδειγμα βελτιώσεων του Red Hat OpenShift σε σχέση με το Kubernetes είναι το βοηθητικό πρόγραμμα γραμμής εντολών ODO. Έχει σχεδιαστεί για προγραμματιστές και σας επιτρέπει να αναπτύσσετε γρήγορα τον τοπικό κώδικα σε ένα απομακρυσμένο σύμπλεγμα OpenShift. Μπορεί επίσης να βελτιστοποιήσει τις εσωτερικές διεργασίες για να συγχρονίσει άμεσα όλες τις αλλαγές κώδικα σε κοντέινερ σε ένα απομακρυσμένο σύμπλεγμα OpenShift χωρίς να χρειάζεται να δημιουργήσετε ξανά, να καταχωρήσετε και να αναδιατάξετε εικόνες.

Ας δούμε πώς το OC και το ODO διευκολύνουν την εργασία με κοντέινερ και Kubernetes.

Απλώς συγκρίνετε μερικές ροές εργασίας όταν δημιουργούνται με βάση το kubectl και όταν χρησιμοποιούνται OC ή ODO.

• Ανάπτυξη κώδικα στο OpenShift για όσους δεν μιλούν YAML:

Kubernetes/kubectl
$> git κλώνος github.com/sclorg/nodejs-ex.git
1- Δημιουργήστε ένα Dockerfile που δημιουργεί την εικόνα από κώδικα
-----
ΑΠΟ κόμβο
WORKDIR /usr/src/app
COPY πακέτο*.json ./
COPY index.js ./
ΑΝΤΙΓΡΑΦΗ ./εφαρμογή ./εφαρμογή
Εκτέλεση εγκατάστασης npm
ΕΚΘΕΣΗ 3000
CMD [ "npm", "start"] ————–
2- Χτίζουμε την εικόνα
$>κατασκευή podman...
3- Συνδεθείτε στο μητρώο
Είσοδος στο podman...
4- Τοποθετήστε την εικόνα στο μητρώο
ώθηση podman
5- Δημιουργήστε αρχεία yaml για ανάπτυξη εφαρμογών (deployment.yaml, service.yaml, ingress.yaml) - αυτό είναι το απόλυτο ελάχιστο
6- Ανάπτυξη αρχείων δήλωσης:
Kubectl εφαρμόζω -f .

OpenShift/oc
$> oc new-app github.com/sclorg/nodejs-ex.git – το_όνομα_εφαρμογής μας

OpenShift/odo
$> git κλώνος github.com/sclorg/nodejs-ex.git
$> odo δημιουργία στοιχείου nodejs myapp
$>odo σπρώξιμο

• Διακόπτης περιβάλλοντος: αλλαγή χώρου ονομάτων εργασίας ή συμπλέγματος εργασίας.

Kubernetes/kubectl
1- Δημιουργήστε ένα πλαίσιο στο kubeconfig για το έργο "myproject"
2- set-context kubectl…

OpenShift/oc
oc έργο "myproject"

Ποιοτικός έλεγχος: «Ένα ενδιαφέρον χαρακτηριστικό έχει εμφανιστεί εδώ, ακόμα σε έκδοση alpha. Ίσως μπορούμε να το βάλουμε στην παραγωγή;»

Φανταστείτε να καθίσετε σε ένα αγωνιστικό αυτοκίνητο και να σας πουν: «Έχουμε εγκαταστήσει έναν νέο τύπο φρένων και, για να είμαι ειλικρινής, η αξιοπιστία τους δεν είναι ακόμα εντάξει... Αλλά μην ανησυχείτε, θα τα βελτιώσουμε ενεργά κατά τη διάρκεια της διαδρομής του πρωταθλήματος». Πώς σας φαίνεται αυτή η προοπτική; Εμείς στην Red Hat κατά κάποιο τρόπο δεν είμαστε πολύ ευχαριστημένοι. 🙂

Επομένως, προσπαθούμε να περιμένουμε τις εκδόσεις alpha μέχρι να ωριμάσουν επαρκώς και να έχουμε κάνει ενδελεχείς δοκιμές μάχης και να αισθανθούμε ότι είναι ασφαλείς στη χρήση. Συνήθως, όλα περνούν πρώτα από το στάδιο Προεπισκόπησης προγραμματιστή και μετά Τεχνική Προεπισκόπηση και μόνο τότε βγαίνει ως δημόσια κυκλοφορία Γενική Διαθεσιμότητα (GA), το οποίο είναι ήδη τόσο σταθερό που είναι κατάλληλο για παραγωγή.

Γιατί αυτό? Επειδή, όπως και με την ανάπτυξη οποιουδήποτε άλλου λογισμικού, δεν φτάνουν όλες οι αρχικές ιδέες στο Kubernetes στην τελική κυκλοφορία. Ή το φτάνουν και διατηρούν ακόμη και την προβλεπόμενη λειτουργικότητα, αλλά η υλοποίησή τους είναι ριζικά διαφορετική από αυτή στην άλφα έκδοση. Με χιλιάδες πελάτες της Red Hat να χρησιμοποιούν το OpenShift για να υποστηρίξουν κρίσιμους φόρτους εργασίας, δίνουμε ιδιαίτερη έμφαση στη σταθερότητα της πλατφόρμας μας και στη μακροπρόθεσμη υποστήριξη.

Η Red Hat δεσμεύεται να κυκλοφορεί συχνά το OpenShift και να ενημερώνει την συμπεριλαμβανόμενη έκδοση του Kubernetes. Για παράδειγμα, η τρέχουσα έκδοση GA του OpenShift 4.3 τη στιγμή που γράφονται αυτές οι γραμμές περιλαμβάνει το Kubernetes 1.16, το οποίο βρίσκεται μόνο ένα πίσω από την upstream έκδοση του Kubernetes με αριθμό 1.17. Έτσι, προσπαθούμε να παρέχουμε στον πελάτη Kubernetes εταιρικής κλάσης και να παρέχουμε πρόσθετο ποιοτικό έλεγχο καθώς κυκλοφορούμε νέες εκδόσεις του OpenShift.

Διορθώσεις λογισμικού: «Υπήρχε μια τρύπα στην έκδοση του Kubernetes που έχουμε στην παραγωγή. Και μπορείτε να το κλείσετε μόνο με την ενημέρωση τριών εκδόσεων. Ή υπάρχουν επιλογές;

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

Η Red Hat υπερηφανεύεται ότι κυκλοφορεί κρίσιμες διορθώσεις νωρίτερα από άλλες και παρέχει υποστήριξη για πολύ μεγαλύτερο χρονικό διάστημα. Πάρτε για παράδειγμα την ευπάθεια κλιμάκωσης των προνομίων Kubernetes (CVE-2018-1002105): ανακαλύφθηκε στο Kubernetes 1.11, και διορθώσεις για προηγούμενες εκδόσεις κυκλοφόρησαν μόνο μέχρι την έκδοση 1.10.11, αφήνοντας αυτήν την τρύπα σε όλες τις προηγούμενες εκδόσεις Kubernetes, από 1.x έως 1.9.

Με τη σειρά τους, Η Red Hat επιδιορθώνει το OpenShift πίσω στην έκδοση 3.2 (Το Kubernetes 1.2 είναι εκεί), καταγράφει εννέα εκδόσεις OpenShift και δείχνει ξεκάθαρα φροντίδα για τους πελάτες (περισσότερες λεπτομέρειες εδώ).

Πώς το OpenShift και το Red Hat προωθούν την Kubernetes

Η Red Hat είναι ο δεύτερος μεγαλύτερος συνεργάτης λογισμικού στο έργο ανοιχτού κώδικα Kubernetes, πίσω μόνο από την Google, με 3 από τους 5 πιο παραγωγικούς προγραμματιστές να προέρχονται από τη Red Hat. Ένα άλλο ελάχιστα γνωστό γεγονός: πολλές κρίσιμες λειτουργίες εμφανίστηκαν στο Kubernetes ακριβώς με πρωτοβουλία της Red Hat, συγκεκριμένα, όπως:

  • RBAC. Το Kubernetes δεν είχε λειτουργίες RBAC (ClusterRole, ClusterRoleBinding) μέχρι που οι μηχανικοί της Red Hat αποφάσισαν να τις εφαρμόσουν ως μέρος της ίδιας της πλατφόρμας και όχι ως πρόσθετη λειτουργικότητα OpenShift. Φοβάται η Red Hat να βελτιώσει το Kubernetes; Όχι βέβαια, γιατί η Red Hat ακολουθεί αυστηρά τις αρχές ανοιχτού κώδικα και δεν παίζει παιχνίδια Open Core. Οι βελτιώσεις και οι καινοτομίες που καθοδηγούνται από κοινότητες ανάπτυξης, αντί για αποκλειστικές, είναι πιο βιώσιμες και υιοθετούνται ευρύτερα, γεγονός που ευθυγραμμίζεται καλά με τον βασικό μας στόχο να κάνουμε το λογισμικό ανοιχτού κώδικα πιο χρήσιμο στους πελάτες μας.
  • Πολιτικές ασφαλείας για pods (Pod Security Policies). Αυτή η έννοια της ασφαλούς εκτέλεσης εφαρμογών μέσα σε pods εφαρμόστηκε αρχικά στο OpenShift με το όνομα SCC (Security Context Constraints). Και όπως στο προηγούμενο παράδειγμα, η Red Hat αποφάσισε να εισαγάγει αυτές τις εξελίξεις στο ανοιχτό έργο Kubernetes, ώστε να μπορούν όλοι να τις χρησιμοποιήσουν.

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

Είναι σαφές ότι το OpenShift είναι Kubernetes. Ποιες είναι οι διαφορές; 🙂

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

Αλλά στην περίπτωση του OpenShift, η Red Hat αναλαμβάνει όλες αυτές τις πολυπλοκότητες και απλά σας δίνει μια λειτουργικά πλήρη πλατφόρμα, η οποία περιλαμβάνει όχι μόνο το ίδιο το Kubernetes, αλλά και ολόκληρο το σύνολο των απαραίτητων εργαλείων ανοιχτού κώδικα που μετατρέπουν το Kubernetes σε μια πραγματική εταιρική κατηγορία λύση που μπορείτε να ρίξετε άμεσα και εντελώς ήρεμα στην παραγωγή. Και φυσικά, εάν έχετε μερικές από τις δικές σας στοίβες τεχνολογίας, τότε μπορείτε να ενσωματώσετε το OpenShift σε υπάρχουσες λύσεις.

OpenShift ως εταιρική έκδοση του Kubernetes. Μέρος 1
Το OpenShift είναι μια έξυπνη πλατφόρμα Kubernetes

Ρίξτε μια ματιά στην παραπάνω εικόνα: οτιδήποτε βρίσκεται έξω από το ορθογώνιο Kubernetes είναι εκεί όπου η Red Hat προσθέτει λειτουργικότητα που η Kubernetes δεν έχει, όπως λένε, by-design. Και τώρα θα δούμε τους κύριους από αυτούς τους τομείς.

1. Στιβαρό λειτουργικό σύστημα ως βάση: RHEL CoreOS ή RHEL

Η Red Hat είναι κορυφαίος πάροχος διανομών Linux για κρίσιμες για τις επιχειρήσεις εφαρμογές για περισσότερα από 20 χρόνια. Η συσσωρευμένη και συνεχώς ενημερωμένη εμπειρία μας σε αυτόν τον τομέα μας επιτρέπει να προσφέρουμε μια πραγματικά αξιόπιστη και αξιόπιστη βάση για τη βιομηχανική λειτουργία των εμπορευματοκιβωτίων. Το RHEL CoreOS χρησιμοποιεί τον ίδιο πυρήνα με το RHEL, αλλά είναι βελτιστοποιημένο κυρίως για εργασίες όπως η εκτέλεση κοντέινερ και η εκτέλεση συμπλεγμάτων Kubernetes: το μειωμένο μέγεθος και η αμετάβλητότητά του διευκολύνουν τη ρύθμιση συμπλεγμάτων, την αυτόματη κλιμάκωση, την ανάπτυξη ενημερώσεων κώδικα κ.λπ. Όλα αυτά τα χαρακτηριστικά το καθιστούν μια ιδανική βάση για την παροχή της ίδιας εμπειρίας χρήστη με το OpenShift σε ένα ευρύ φάσμα υπολογιστικών περιβαλλόντων, από γυμνό μέταλλο έως ιδιωτικό και δημόσιο cloud.

2. Αυτοματοποίηση λειτουργιών πληροφορικής

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

Το OpenShift 4 είναι επίσης ένα ολόκληρο οικοσύστημα λύσεων που βασίζεται σε χειριστές Kubernetes, που αναπτύχθηκε τόσο από την ίδια την Red Hat όσο και από τρίτους συνεργάτες (βλ. κατάλογο χειριστή Red Hat, ή κατάστημα χειριστή operatorhub.io, που δημιουργήθηκε από την Red Hat για προγραμματιστές τρίτων).

OpenShift ως εταιρική έκδοση του Kubernetes. Μέρος 1
Ο ενσωματωμένος κατάλογος OpenShift 4 περιλαμβάνει περισσότερους από 180 χειριστές Kubernetes

3. Εργαλεία προγραμματιστών

Από το 2011, το OpenShift είναι διαθέσιμο ως πλατφόρμα PaaS (Platform-as-a-Service) που κάνει τη ζωή πολύ πιο εύκολη για τους προγραμματιστές, τους βοηθά να επικεντρωθούν στην κωδικοποίηση και προσφέρει εγγενή υποστήριξη για γλώσσες προγραμματισμού όπως Java, Node.js , PHP, Ruby, Python, Go, καθώς και υπηρεσίες συνεχούς ενοποίησης και παράδοσης CI/CD, βάσεις δεδομένων κ.λπ. Προσφορές OpenShift 4 εκτενής κατάλογος, το οποίο περιλαμβάνει περισσότερες από 100 υπηρεσίες που βασίζονται σε χειριστές Kubernetes που αναπτύχθηκαν από τη Red Hat και τους συνεργάτες μας.

Σε αντίθεση με το Kubernetes, το OpenShift 4 έχει ένα αποκλειστικό GUI (Κονσόλα προγραμματιστή), το οποίο βοηθά τους προγραμματιστές να αναπτύξουν αβίαστα εφαρμογές από διάφορες πηγές (git, εξωτερικά μητρώα, Dockerfile κ.λπ.) στους χώρους ονομάτων τους και οπτικοποιεί με σαφήνεια τις σχέσεις μεταξύ των στοιχείων της εφαρμογής.

OpenShift ως εταιρική έκδοση του Kubernetes. Μέρος 1
Η Κονσόλα προγραμματιστή παρέχει μια σαφή εικόνα των στοιχείων της εφαρμογής και διευκολύνει την εργασία με το Kubernetes

Επιπλέον, το OpenShift προσφέρει ένα σύνολο εργαλείων ανάπτυξης Codeready, το οποίο, ειδικότερα, περιλαμβάνει Χώροι εργασίας Codeready, ένα IDE πλήρως διαμορφωμένο σε κοντέινερ με διεπαφή ιστού που εκτελείται απευθείας πάνω από το OpenShift και εφαρμόζει μια προσέγγιση IDE-as-a-service. Από την άλλη πλευρά, για όσους θέλουν να εργάζονται αυστηρά σε τοπική λειτουργία, υπάρχει το Codeready Containers, μια πλήρως λειτουργική έκδοση του OpenShift 4 που μπορεί να αναπτυχθεί σε φορητό υπολογιστή.

OpenShift ως εταιρική έκδοση του Kubernetes. Μέρος 1
Ενσωματωμένο IDE ως υπηρεσία για αποτελεσματική ανάπτυξη στην πλατφόρμα Kubernetes/OpenShift

Το OpenShift προσφέρει ένα πλήρες σύστημα CI/CD εξαρχής, είτε βασισμένο σε κοντέινερ Jenkins και ένα πρόσθετο DSL για εργασία με αγωγούς ή σύστημα CI/CD προσανατολισμένο στο Kubernetes Τέκτων (επί του παρόντος σε έκδοση προεπισκόπησης Tech). Και οι δύο αυτές λύσεις ενσωματώνονται πλήρως με την κονσόλα OpenShift, επιτρέποντάς σας να εκτελείτε ενεργοποιήσεις διοχέτευσης, να προβάλλετε αναπτύξεις, αρχεία καταγραφής και πολλά άλλα.

4. Εργαλεία Εφαρμογής

Το OpenShift σάς επιτρέπει να αναπτύξετε τόσο παραδοσιακές stateful εφαρμογές όσο και λύσεις που βασίζονται σε cloud που βασίζονται σε νέες αρχιτεκτονικές, όπως microservices ή χωρίς διακομιστή. Η λύση OpenShift Service Mesh έρχεται από το κουτί με βασικά εργαλεία για τη συντήρηση μικροϋπηρεσιών, όπως το Istio, το Kiali και το Jaeger. Με τη σειρά της, η λύση OpenShift Serverless περιλαμβάνει όχι μόνο το Knative, αλλά και εργαλεία όπως το Keda που δημιουργήθηκαν ως μέρος μιας κοινής πρωτοβουλίας με τη Microsoft για την παροχή λειτουργιών Azure στην πλατφόρμα OpenShift.

OpenShift ως εταιρική έκδοση του Kubernetes. Μέρος 1
Η ολοκληρωμένη λύση OpenShift ServiceMesh (Istio, Kiali, Jaeger) θα είναι χρήσιμη κατά την ανάπτυξη μικροϋπηρεσιών

Για να γεφυρώσει το χάσμα μεταξύ παλαιούχων εφαρμογών και κοντέινερ, το OpenShift επιτρέπει πλέον τη μετεγκατάσταση εικονικής μηχανής στην πλατφόρμα OpenShift χρησιμοποιώντας Container Native Virtualization (επί του παρόντος στο TechPreview), κάνοντας τις υβριδικές εφαρμογές πραγματικότητα και διευκολύνοντας τη μετεγκατάστασή τους μεταξύ διαφορετικών cloud, ιδιωτικών και δημόσιων.

OpenShift ως εταιρική έκδοση του Kubernetes. Μέρος 1
Εικονική εικονική μηχανή Windows 2019 που εκτελείται στο OpenShift μέσω Container Native Virtualization (προς το παρόν σε έκδοση προεπισκόπησης Tech)

5. Εργαλεία για συστάδες

Οποιαδήποτε πλατφόρμα εταιρικής κλάσης πρέπει να διαθέτει υπηρεσίες παρακολούθησης και κεντρικής καταγραφής, μηχανισμούς ασφαλείας, έλεγχο ταυτότητας και εξουσιοδότηση και εργαλεία διαχείρισης δικτύου. Και το OpenShift τα παρέχει όλα αυτά out of the box, και είναι όλα 100% ανοιχτού κώδικα, συμπεριλαμβανομένων λύσεων όπως ElasticSearch, Prometheus, Grafana. Όλες αυτές οι λύσεις συνοδεύονται από πίνακες εργαλείων, μετρήσεις και ειδοποιήσεις που έχουν ήδη κατασκευαστεί και διαμορφωθεί χρησιμοποιώντας την εκτενή τεχνογνωσία παρακολούθησης συμπλέγματος της Red Hat, επιτρέποντάς σας να ελέγχετε και να παρακολουθείτε αποτελεσματικά το περιβάλλον παραγωγής σας από την αρχή.

Το OpenShift συνοδεύεται επίσης στάνταρ με τόσο σημαντικά πράγματα για εταιρικούς πελάτες, όπως ο έλεγχος ταυτότητας με ενσωματωμένο πάροχο oauth, η ενοποίηση με παρόχους διαπιστευτηρίων, συμπεριλαμβανομένων των LDAP, ActiveDirectory, OpenID Connect και πολλά άλλα.

OpenShift ως εταιρική έκδοση του Kubernetes. Μέρος 1
Προδιαμορφωμένος πίνακας εργαλείων Grafana για παρακολούθηση συμπλέγματος OpenShift

OpenShift ως εταιρική έκδοση του Kubernetes. Μέρος 1
Πάνω από 150 προδιαμορφωμένες μετρήσεις και ειδοποιήσεις Prometheus για παρακολούθηση συμπλέγματος OpenShift

Για να συνεχιστεί

Η πλούσια λειτουργικότητα της λύσης και η μεγάλη εμπειρία της Red Hat στον τομέα των Kubernetes είναι οι λόγοι για τους οποίους το OpenShift έχει κατακτήσει δεσπόζουσα θέση στην αγορά, όπως φαίνεται στο παρακάτω σχήμα (διαβάστε περισσότερα εδώ).

OpenShift ως εταιρική έκδοση του Kubernetes. Μέρος 1
«Η Red Hat αυτή τη στιγμή ηγείται της αγοράς με μερίδιο 44%.
Η εταιρεία αποκομίζει τα οφέλη της πελατοκεντρικής στρατηγικής πωλήσεών της, όπου πρώτα συμβουλεύεται και εκπαιδεύει τους προγραμματιστές επιχειρήσεων και στη συνέχεια προχωρά στη δημιουργία εσόδων καθώς η επιχείρηση αρχίζει να αναπτύσσει κοντέινερ στην παραγωγή».

(Πηγή: www.lightreading.com/nfv/containers/ihs-red-hat-container-strategy-is-paying-off/d/d-id/753863)

Ελπίζουμε να σας άρεσε αυτό το άρθρο. Σε μελλοντικές αναρτήσεις αυτής της σειράς, θα ρίξουμε μια πιο προσεκτική ματιά στα πλεονεκτήματα του OpenShift έναντι του Kubernetes σε καθεμία από τις κατηγορίες που συζητούνται εδώ.

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο