Κυκλοφορία πλατφόρμας ενορχήστρωσης κοντέινερ , το οποίο επιτρέπει την ολοκληρωμένη διαχείριση ενός συμπλέγματος απομονωμένων κοντέινερ και παρέχει μηχανισμούς για την ανάπτυξη, τη συντήρηση και την κλιμάκωση εφαρμογών που εκτελούνται σε κοντέινερ. Το έργο δημιουργήθηκε αρχικά από την Google, αλλά αργότερα μεταφέρθηκε σε μια ανεξάρτητη πλατφόρμα υπό την επίβλεψη του οργανισμού. Linux Foundation. Η πλατφόρμα τοποθετείται ως μια λύση που βασίζεται στην κοινότητα, καθολική, δεν συνδέεται με συγκεκριμένα συστήματα και είναι ικανή να εκτελεί οποιαδήποτε εφαρμογή σε οποιοδήποτε περιβάλλον cloud. Ο κώδικας του Kubernetes είναι γραμμένος σε Go και άδεια σύμφωνα με το Apache 2.0.
Παρέχει δυνατότητες για ανάπτυξη και διαχείριση υποδομής, όπως συντήρηση βάσης δεδομένων DNS, εξισορρόπηση φόρτου,
Κατανομή κοντέινερ σε όλους τους κόμβους του cluster (μετεγκατάσταση κοντέινερ ανάλογα με τις αλλαγές στο φόρτο εργασίας και τις ανάγκες εξυπηρέτησης), έλεγχος λειτουργικότητας σε επίπεδο εφαρμογής, διαχείριση λογαριασμών, ενημέρωση και δυναμική κλιμάκωση ενός cluster που λειτουργεί χωρίς διακοπή. Είναι δυνατή η ανάπτυξη ομάδων κοντέινερ με λειτουργίες ενημέρωσης και επαναφοράς για ολόκληρη την ομάδα ταυτόχρονα, καθώς και η λογική διαίρεση του συμπλέγματος σε μέρη με κοινή χρήση πόρων. Υπάρχει υποστήριξη για δυναμική μετεγκατάσταση εφαρμογών, για την αποθήκευση δεδομένων των οποίων μπορούν να χρησιμοποιηθούν τόσο τοπικά συστήματα αποθήκευσης όσο και συστήματα δικτυακής αποθήκευσης.
Η έκδοση 1.18 του Kubernetes περιλαμβάνει 38 αλλαγές και βελτιώσεις, εκ των οποίων οι 15 έχουν αναβαθμιστεί σε σταθερή έκδοση και οι 11 σε beta. 12 νέες αλλαγές που προτείνονται στην κατάσταση alpha. Κατά την προετοιμασία της νέας έκδοσης, καταβλήθηκαν ίσες προσπάθειες τόσο για τη βελτίωση διαφόρων λειτουργιών και τη σταθεροποίηση των πειραματικών δυνατοτήτων, όσο και για την προσθήκη νέων εξελίξεων. Κύριες αλλαγές:
- kubectl
- Μια έκδοση alpha της εντολής "kubectl debug", η οποία διευκολύνει την αποσφαλμάτωση σε pod εκτελώντας εφήμερα κοντέινερ με εργαλεία αποσφαλμάτωσης.
- την εντολή "kubectl diff", η οποία σας επιτρέπει να δείτε τι θα αλλάξει στο σύμπλεγμα αν εφαρμόσετε το μανιφέστο.
- όλες οι γεννήτριες εντολών "kubectl run" εκτός από τη γεννήτρια εκτέλεσης ενός pod.
- Η σημαία "--dry-run", ανάλογα με την τιμή της (client, server και none), η δοκιμαστική εκτέλεση της εντολής εκτελείται στην πλευρά του client ή του server.
- κώδικας kubectl σε ξεχωριστό αποθετήριο. Αυτό επέτρεψε στο kubectl να αποσυνδεθεί από τις εσωτερικές εξαρτήσεις του kubernetes και διευκόλυνε την εισαγωγή κώδικα σε έργα τρίτων.
- Είσοδος
- Άλλαξε η ομάδα API για το Ingress σε networking.v1beta1.
- νέα πεδία:
- pathType, το οποίο σας επιτρέπει να καθορίσετε πώς θα συγκριθεί η διαδρομή στο αίτημα
- Το IngressClassName αντικαθιστά την σχολίαση kubernetes.io/ingress.class, η οποία έχει καταργηθεί. Αυτό το πεδίο καθορίζει το όνομα του ειδικού αντικειμένου InressClass.
- ένα αντικείμενο IngressClass που καθορίζει το όνομα του ελεγκτή εισόδου, τις πρόσθετες παραμέτρους του και εάν χρησιμοποιείται από προεπιλογή
- Υπηρεσία
- το πεδίο AppProtocol, στο οποίο μπορείτε να καθορίσετε ποιο πρωτόκολλο χρησιμοποιεί η εφαρμογή
- σε κατάσταση beta και ενεργοποιημένο από προεπιλογή το EndpointSlicesAPI, το οποίο αποτελεί μια πιο λειτουργική αντικατάσταση των κανονικών Endpoints.
- Δικτύου
- Το IPv6 έχει μεταφερθεί σε κατάσταση beta.
- Μόνιμοι δίσκοι. Η ακόλουθη λειτουργικότητα έχει δηλωθεί ως σταθερή:
- Ρύθμιση παραμέτρων της εφαρμογής
- Σε αντικείμενα ConfigMap και Secret νέο πεδίο «αμετάβλητο». Ο ορισμός της τιμής πεδίου σε true αποτρέπει την τροποποίηση του αντικειμένου.
- Προγραμματιστής
- η δυνατότητα δημιουργίας πρόσθετων προφίλ για τον kube-scheduler. Αν προηγουμένως ήταν απαραίτητο να εκκινήσετε επιπλέον ξεχωριστούς προγραμματιστές για την υλοποίηση μη τυπικών αλγορίθμων διανομής pod, τώρα είναι δυνατό να δημιουργήσετε επιπλέον σύνολα ρυθμίσεων για τον τυπικό προγραμματιστή και να καθορίσετε το όνομά του στο ίδιο πεδίο pod ".spec.schedulerName". Κατάσταση: άλφα.
- δηλώθηκε σταθερό
- Κλιμάκωση
- η δυνατότητα καθορισμού στο HPA που εκδηλώνεται τον βαθμό επιθετικότητας κατά την αλλαγή του αριθμού των τρεχουσών λοβών, δηλαδή, όταν αυξάνεται το φορτίο, εκκινούνται N φορές περισσότερες περιπτώσεις ταυτόχρονα.
- Κούμπελετ
- έλαβε κατάσταση beta. Η λειτουργία επιτρέπει την κατανομή NUMA, η οποία αποτρέπει την υποβάθμιση της απόδοσης σε συστήματα πολλαπλών υποδοχών.
- Κατάσταση beta Η λειτουργία PodOverhead, η οποία σας επιτρέπει να καθορίσετε στην RuntimeClass την πρόσθετη ποσότητα πόρων που απαιτούνται για την εκτέλεση ενός pod.
- Υποστήριξη HugePages, απομόνωση σε επίπεδο κοντέινερ και υποστήριξη για πολλαπλά μεγέθη hugepages που προστέθηκαν σε κατάσταση alpha.
- τελικό σημείο για μετρήσεις /metrics/resource/v1alpha1, χρησιμοποιείται αντ' αυτού /metrics/resource
- API
- Καταργήθηκε η δυνατότητα χρήσης των παρωχημένων ομάδων API apps/v1beta1 και extensions/v1beta1.
- αναβαθμισμένο σε κατάσταση beta2. Αυτή η βελτίωση μεταφέρει τον χειρισμό αντικειμένων από το kubectl στον διακομιστή API. Οι συντάκτες της βελτίωσης ισχυρίζονται ότι αυτό θα διορθώσει πολλά υπάρχοντα σφάλματα που δεν μπορούν να διορθωθούν στην τρέχουσα κατάσταση. Πρόσθεσαν επίσης μια ενότητα που ονομάζεται «.metadata.managedFields», η οποία προσφέρει την αποθήκευση του ιστορικού των αλλαγών σε ένα αντικείμενο, υποδεικνύοντας ποιος, πότε και τι ακριβώς άλλαξε.
- σταθερό API αιτήματος υπογραφής πιστοποιητικού.
- Υποστήριξη πλατφόρμας Windows.
- Η υποστήριξη συνεχίζει να επεκτείνεται Windows κόμβος. Προστέθηκαν εκδόσεις Alpha:
- Η υποστήριξη έχει μεταφερθεί σε σταθερή κατάσταση
- Η υποστήριξη συνεχίζει να επεκτείνεται Windows κόμβος. Προστέθηκαν εκδόσεις Alpha:
Πηγή: opennet.ru
