Εξέλιξη Κομματιού
Μόνιμη 1: Σχεδιασμός Μικρουπηρεσιών
• Ένα καλό σύνορο μικρούπηρεσίας
• Χρήση προσεγγίσεων οδηγημένων από τον τομή (Domain Driven Design - DDD)
• Εναλλακτικές προσεγγίσεις συνόρων επιχείρησης (Volatility, Data, Technology, Organizational)
• Κόψη του μονολιθικού συστήματος
• Πρωίμια διάσπαση
• Διάσπαση κατά επίπεδο
• Χρήση μοντέλων διάσπασης (Strangler, Parallel Run, Feature Toggle)
• Προβλήματα σύσφαιρης δεδομένων (Performance, Integrity, Transactions)
Μόνιμη 2: Βελτιστοποίηση Docker και της λειτουργίας υποδοχής
• Επιλογή της σωστής βασικής εικόνας
• Ελαχιστοποίηση του αριθμού των επιπέδων
• Χρήση πολυεπιπεδικών κατασκευών (multi-stage builds)
• Βελτιστοποίηση εικόνων (sort multi-line arguments, etc.)
• Εξαξιοποίηση του προς κατασκευή cache
• Οριοθέτηση εκδόσεων εικόνων
• Προσαρμογή της κατανομής πόρων
• Ασφαλείς πρακτικές για περιέχοντα (containers)
• Ρύθμιση της λειτουργίας υποδοχής για απόδοση
Μόνιμη 3: Kubernetes & Στρатегίες Εκδόσεων
Γενική Παρουσίαση Kubernetes Deployments
• Δημιουργία και εκτέλεση αρχικής εκδόσεως
• Επιλογές Kubernetes Deployments
Διαμετρική Μεταβολή (Rolling Update) Εκδόσεων
• Σύνεση της διαμετρικής μεταβολής (rolling update)
• Δημιουργία και εκτέλεση διαμετρικής μεταβολής
• Ανακατάσκευη (Rolling Back) της εκδόσεως
Διαμετρική Εκδόσεις (Canary Deployments)
• Σύνεση των διαμετρικών εκδόσεων
• Δημιουργία και εκτέλεση διαμετρικής εκδόσεως
Μπλε-Πράσινες (Blue-Green) Εκδόσεις
• Σύνεση των μπλε-πράσινων εκδόσεων
• Δημιουργία και εκτέλεση μπλε-πράσινης εκδόσεως
Εκτέλεση Τρέχουσα Δουλειά (Jobs) και Προγραμματισμένων Δουλειών (CronJobs)
• Δημιουργία Job και CronJob
Εκτέλεση Εργασιών Παράκολουθησης και Καταδοχής προβλημάτων
• Τεχνικές παράκολουθησης με το kubectl
Μόνιμη 4: Αυτοματοποίηση & Λειτουργική Αποδοτικότητα
Χρήση Python για την αυτοματοποίηση κοινών εργασιών στο Kubernetes
• Χρήση Python για διοικητικές λειτουργίες στο Kubernetes
• Χρήση Python για την καθορισμό αντικειμένων ρύθμισης (Configuration objects)
• Χρήση Python για τη δημιουργία αντικειμένων εκδόσεων (Deployment objects)
• Παρακολούθηση γεγονότων Kubernetes χρησιμοποιώντας Python
• Σκάλα (Scaling) μιας εκδόσεως μέσω Python
Κατανόηση των προκλήσεων της αυτοματοποίησης εκδόσεων
• Δηλωτική ρύθμιση με Kubernetes
• Ελέγχος της ακεραιότητας (Integrity) των ρυθμίσεων
Χρήση προσέγγισης GitOps για την αυτοματοποίηση εκδόσεων
• Αρχές GitOps
• Παρουσίαση Flux
• Εγκατάσταση του Flux σε κλάδωμα Kubernetes
Ρύθμιση του Flux για αυτοματοποιημένες εκδόσεις
• Χρήση καθηγητήρων (Notifications)
• Δομή του αποθετηρίου πηγών (Source Repository Structure)
Επεξεργασία εφαρμογών με αυτοματοποιημένη διαχείριση εικόνων
• Επεξεργασία μιας εκδόσεως εφαρμογής με το Flux
• Έλεγχος αποθετηρίων εικόνων περιέχοντα για tags
• Καθορισμός πολιτικής για την επιλογή της τελευταίας εικόνας (Latest Image selection)
• Ρύθμιση του Flux για αυτοματοποιημένη διαχείριση εικόνων
Μόνιμη 5: Παρατηρητηριακότητα & Καθαρούσα της Ρίζας
Ευθύνες καταγραφής και παρακολούθησης στο Kubernetes
• Γιατί είναι σημαντικές η καταγραφή και η παρακολούθηση
• Πρόσβαση στις καταγραφές Kubernetes
• Καταγραφές περιέχοντα (Pod and Container Logs)
• Καταγραφές ελέγχου της υποδοχής (Control Plane Logs)
• Χρήση πόρων κόμβων και περιέχοντα
Συλλογή και ανάλυση των καταγραφών
• Αθροισμός καταγραφών (Log Aggregation)
• Οπτικοποίηση καταγραφών (Log Visualization)
Διαχωρισμένη παρακολούθηση στο Kubernetes
• Τι είναι η διαχωρισμένη παρακολούθηση (distributed tracing)
• Χρήση OpenTelemetry
• Εργαλεία διαχωρισμένης παρακολούθησης (Distributed Tracing Tools)
• Αφετηριακή στάση μιας εφαρμογής
• Χρήση παρακολούθησης για την αναγνώριση προβλημάτων απόδοσης
Παρακολούθηση με Prometheus και Grafana
• Αρχές παρατηρητηριακότητας (Observability concepts)
• Εργαλεία παρακολούθησης (Monitoring Tools)
• Χρήση διαμόρφωσης Prometheus
Προηγμένες περιπτώσεις χρήσης καταγραφών
• Εξεργασία καταγραφών (Processing Logs)
• Φιλτράρισμα και ενέργη προσπέλαση των καταγραφών (Filtering and Enriching the Logs)
• Εξέγερση γεγονότων (Event Sourcing)
Μόνιμη 6: Προσομοίωση Συστηματικής κρίσης & ανταπόκριση σε περιστατικά
• Κατανόηση των διαφορετικών τύπων αποτυχιών σε περιβάλλον κλαδίου (cluster environment)
• Προσομοίωση αποτυχιών κόμβων
• Εξόντωση περιέχοντα (Pod Eviction) & σενάριο εξαντλήσεως πόρων (Resource Exhaustion)
• Προβλήματα δικτύου
• Αποτυχίες DNS για την αντιμετώπιση χρονικής παράλληλης εφαρμογής
• Προσομοίωση αποτυχίας του API Server
• Προσομοίωση υψηλού κυκλόφορου για την σταθερότητα του συστήματος
• Αποτυχία αποθήκης (Storage Failure)
• Σφάλματα ρύθμισης
• Κατανόηση των διαδικασιών αναφοράς περιστατικών
Μόνιμη 7: Αξιοθιγμινής υποστήριξης AI για την παράλληλη διαγώνιση
• Πλεονεκτήματα της αξιοθιγμινής AI για Kubernetes
• Αρχιτεκτονική K8sGPT CLI
• Εγκατάσταση του K8sGPT CLI
• Εντολές και χρήση του K8sGPT
• Χρήση αναλυτών K8sGPT (podAnalyzer, pvcAnalyzer, rsAnalyzer, etc.)
• Ανάλυση του κλάδωμα με το K8sGPT
• Ανάλυση πρακτικών προβλημάτων σε πραγματικό χρόνο με το K8sGPT
• Επιχειρησιακός αποδέκτης κλάδωμα (In-Cluster Operator for K8sGPT)
Απαιτήσεις
- Βασική γνώση της γραμμής εντολών Linux
- Εμπειρία στην ανάπτυξη εφαρμογών ή διοίκηση των συστημάτων
- Γνώρισμα κατάγεννήσεων (Docker concepts)
- Βασική κατανόηση των επιλογών Kubernetes (pods, deployments, services)
- Γενική κατανόηση αρχιτεκτονικής λογισμικού (π.χ., APIs, υπηρεσίες)
Στόχοι Αυτοκίνητου:
- Διαχειριστές DevOps
- Μηχανικοί πιστότητας των Τόπων (SREs)
- Προγραμματιστές Backend/Λογισμικού εργαζόμενοι με μικρουπηρεσίες
- Μηχανικοί Cloud και Πλατφόρμης
-
Διοικητές συστημάτων με εξέλιξη προς τα Kubernetes environments
Σχόλια (1)
πραγματικά παραδείγματα
Maria - Fundacja PTA
Κομμάτι - Mastering Make: Advanced Workflow Automation and Optimization
Μηχανική Μετάφραση