GitOps Workshop – Επισκόπηση
Επισκόπηση
Αυτό το workshop καλύπτει τη διαδρομή από τις βασικές αρχές του GitOps έως την προχωρημένη λειτουργία πλατφόρμας και το Security Hardening. Η δομή του ακολουθεί το Kubernetes Workshop: τεκμηρίωση αναφοράς, τέσσερα επίπεδα workshop, ασκήσεις, Assessments, λύσεις, επίσημες πηγές και 31 πρακτικά παραδείγματα.
Η έμφαση δίνεται στην πραγματική χρήση του GitOps:
- Κατανόηση και εφαρμογή των αρχών OpenGitOps.
- Εξήγηση των Desired State, Actual State, Drift και Reconciliation.
- Σαφής διάκριση ανάμεσα σε Git, Kustomize, Helm, Argo CD και Flux.
- Σχεδιασμός δομής Git repositories για περιβάλλοντα, ομάδες και Clusters.
- Ελεγχόμενη διαχείριση των Promotion, Rollback, Sync Waves, Health, Diff και Status.
- Αξιολόγηση των Secrets, RBAC, AppProjects, Policies, Signatures και Supply Chain.
- Οργάνωση Incident Response για Drift, αποτυχημένα Syncs και Secret leaks.
Γρήγορη εκκίνηση
Αφού κατεβάσετε τα αρχεία του πρακτικού module από τη σελίδα του workshop, ελέγξτε πρώτα το provisioning script με --dry-run:
chmod +x scripts/provision_gitops.sh
./scripts/provision_gitops.sh --dry-run
Στη συνέχεια, ελέγξτε τα διαθέσιμα τοπικά εργαλεία:
git --version
kubectl version --client || true
kustomize version || true
helm version || true
Διαδρομή μάθησης
| Επίπεδο | Εστίαση | Workshop | Ασκήσεις | Assessment |
|---|---|---|---|---|
| 01 | Fundamentals | Workshop βασικού επιπέδου | Ασκήσεις βασικού επιπέδου | Αξιολόγηση βασικού επιπέδου |
| 02 | Intermediate | Workshop ενδιάμεσου επιπέδου | Ασκήσεις ενδιάμεσου επιπέδου | Αξιολόγηση ενδιάμεσου επιπέδου |
| 03 | Professional | Workshop επαγγελματικού επιπέδου | Ασκήσεις επαγγελματικού επιπέδου | Αξιολόγηση επαγγελματικού επιπέδου |
| 04 | Advanced Security | Workshop προχωρημένης ασφάλειας | Ασκήσεις προχωρημένης ασφάλειας | Αξιολόγηση προχωρημένης ασφάλειας |
Τεκμηρίωση
- Αρχιτεκτονική
- Βέλτιστες πρακτικές
- Εντολές
- Έννοιες
- Πρόγραμμα σπουδών
- Διαγράμματα
- Περιβάλλον cloud
- Περιβάλλον native bare metal
- Περιβάλλον native VM
- Περιβάλλον WSL
- Λειτουργία
- Ασφάλεια
- Αντιμετώπιση προβλημάτων
Όσα έγγραφα δεν έχουν ακόμη ελληνική έκδοση εμφανίζονται στα αγγλικά. Οι σύνδεσμοι ενημερώνονται καθώς ολοκληρώνονται οι μεταφράσεις.
Πιστοποιήσεις
Η επισκόπηση της πιστοποίησης CGOA αντιστοιχίζει τους επίσημους τομείς της εξέτασης με τις ενότητες του workshop και περιλαμβάνει ασκήσεις προετοιμασίας.
Παραδείγματα
Τα 31 πρακτικά modules παρατίθενται στην επισκόπηση παραδειγμάτων. Κάθε module περιλαμβάνει κύρια περιγραφή, τεκμηρίωση ανά διαθέσιμη γλώσσα, αρχεία που μπορούν να ελεγχθούν και ένα run.sh που δημιουργεί ένα τοπικό GitOps lab κάτω από το work/.
Δομή του workshop
.
├── assessments/
├── docs/
├── examples/
├── exercises/
├── media/
│ └── pics/
├── scripts/
├── workshops/
└── README-EL.md
Σημαντικός κανόνας ασφαλείας
Το GitOps κάνει τις αλλαγές ανιχνεύσιμες, αλλά δεν τις καθιστά αυτόματα ασφαλείς. Τα Secrets, τα δικαιώματα των Controllers, η πρόσβαση σε Git repositories, οι Signatures και τα Policy Gates χρειάζονται προσεκτικό σχεδιασμό. Μη χρησιμοποιείτε πραγματικά Tokens, production Cluster kubeconfigs ή πραγματικές τιμές Secrets στο workshop.
Επίσημες πηγές και πεδίο εφαρμογής
Το υλικό βασίζεται σε δημόσια τεκμηρίωση του GitOps και του Kubernetes. Τα Argo CD, Flux, Kustomize, Helm, Policy Controllers και Secret tools παρουσιάζονται εκεί όπου εξηγούν συνηθισμένα GitOps workflows. Ένα αρχείο παραδείγματος δεν αποτελεί υπόσχεση ότι ένα εργαλείο μπορεί να εγκατασταθεί σε κάθε συγκεκριμένο Cluster.
- OpenGitOps: https://opengitops.dev/
- OpenGitOps Principles: https://github.com/open-gitops/documents/blob/main/PRINCIPLES.md
- Argo CD Documentation: https://argo-cd.readthedocs.io/en/stable/
- Argo CD Declarative Setup: https://argo-cd.readthedocs.io/en/stable/operator-manual/declarative-setup/
- Argo CD Project Page: https://argoproj.github.io/cd/
- Flux Documentation: https://fluxcd.io/flux/
- Flux Core Concepts: https://fluxcd.io/flux/concepts/
- CNCF GitOps Certified Associate (CGOA): https://www.cncf.io/training/certification/cgoa/
- Linux Foundation Certified GitOps Associate (CGOA): https://training.linuxfoundation.org/certification/certified-gitops-associate-cgoa/
Άδεια χρήσης
Κατεβάστε την άδεια χρήσης της Orthevs Academy.
Πρόσθετες ασκήσεις Review
Χρησιμοποιήστε αυτές τις ασκήσεις όταν ολοκληρώσετε την κύρια εργασία και θέλετε να εξασκηθείτε περισσότερο στην τεκμηρίωση λειτουργικών αποφάσεων. Εστιάζουν σε ελέγξιμα στοιχεία και μπορούν να απαντηθούν με τοπικά GitOps artifacts.
Drill 01: Desired State
- Προσδιορίστε ποια πηγή, ποιος Controller ή ποιο περιβάλλον επηρεάζεται από το
Desired State. - Αναφέρετε μία εντολή ή ένα πεδίο Manifest που προσφέρει ελέγξιμο στοιχείο.
- Εξηγήστε τι αποδεικνύει αυτό το στοιχείο και τι δεν μπορεί να αποδείξει.
- Περιγράψτε την ασφαλέστερη διαδρομή Recovery για μια κοινόχρηστη GitOps πλατφόρμα.
Drill 02: Source Commit
- Προσδιορίστε ποια πηγή, ποιος Controller ή ποιο περιβάλλον επηρεάζεται από το
Source Commit. - Αναφέρετε μία εντολή ή ένα πεδίο Manifest που προσφέρει ελέγξιμο στοιχείο.
- Εξηγήστε τι αποδεικνύει αυτό το στοιχείο και τι δεν μπορεί να αποδείξει.
- Περιγράψτε την ασφαλέστερη διαδρομή Recovery για μια κοινόχρηστη GitOps πλατφόρμα.
Drill 03: Reconciliation
- Προσδιορίστε ποια πηγή, ποιος Controller ή ποιο περιβάλλον επηρεάζεται από το
Reconciliation. - Αναφέρετε μία εντολή ή ένα πεδίο Manifest που προσφέρει ελέγξιμο στοιχείο.
- Εξηγήστε τι αποδεικνύει αυτό το στοιχείο και τι δεν μπορεί να αποδείξει.
- Περιγράψτε την ασφαλέστερη διαδρομή Recovery για μια κοινόχρηστη GitOps πλατφόρμα.
Drill 04: Drift
- Προσδιορίστε ποια πηγή, ποιος Controller ή ποιο περιβάλλον επηρεάζεται από το
Drift. - Αναφέρετε μία εντολή ή ένα πεδίο Manifest που προσφέρει ελέγξιμο στοιχείο.
- Εξηγήστε τι αποδεικνύει αυτό το στοιχείο και τι δεν μπορεί να αποδείξει.
- Περιγράψτε την ασφαλέστερη διαδρομή Recovery για μια κοινόχρηστη GitOps πλατφόρμα.
Drill 05: Argo CD Application
- Προσδιορίστε ποια πηγή, ποιος Controller ή ποιο περιβάλλον επηρεάζεται από το
Argo CD Application. - Αναφέρετε μία εντολή ή ένα πεδίο Manifest που προσφέρει ελέγξιμο στοιχείο.
- Εξηγήστε τι αποδεικνύει αυτό το στοιχείο και τι δεν μπορεί να αποδείξει.
- Περιγράψτε την ασφαλέστερη διαδρομή Recovery για μια κοινόχρηστη GitOps πλατφόρμα.
Drill 06: Flux Kustomization
- Προσδιορίστε ποια πηγή, ποιος Controller ή ποιο περιβάλλον επηρεάζεται από το
Flux Kustomization. - Αναφέρετε μία εντολή ή ένα πεδίο Manifest που προσφέρει ελέγξιμο στοιχείο.
- Εξηγήστε τι αποδεικνύει αυτό το στοιχείο και τι δεν μπορεί να αποδείξει.
- Περιγράψτε την ασφαλέστερη διαδρομή Recovery για μια κοινόχρηστη GitOps πλατφόρμα.
Drill 07: Kustomize Overlay
- Προσδιορίστε ποια πηγή, ποιος Controller ή ποιο περιβάλλον επηρεάζεται από το
Kustomize Overlay. - Αναφέρετε μία εντολή ή ένα πεδίο Manifest που προσφέρει ελέγξιμο στοιχείο.
- Εξηγήστε τι αποδεικνύει αυτό το στοιχείο και τι δεν μπορεί να αποδείξει.
- Περιγράψτε την ασφαλέστερη διαδρομή Recovery για μια κοινόχρηστη GitOps πλατφόρμα.
Drill 08: HelmRelease
- Προσδιορίστε ποια πηγή, ποιος Controller ή ποιο περιβάλλον επηρεάζεται από το
HelmRelease. - Αναφέρετε μία εντολή ή ένα πεδίο Manifest που προσφέρει ελέγξιμο στοιχείο.
- Εξηγήστε τι αποδεικνύει αυτό το στοιχείο και τι δεν μπορεί να αποδείξει.
- Περιγράψτε την ασφαλέστερη διαδρομή Recovery για μια κοινόχρηστη GitOps πλατφόρμα.
Drill 09: Secret Management
- Προσδιορίστε ποια πηγή, ποιος Controller ή ποιο περιβάλλον επηρεάζεται από το
Secret Management. - Αναφέρετε μία εντολή ή ένα πεδίο Manifest που προσφέρει ελέγξιμο στοιχείο.
- Εξηγήστε τι αποδεικνύει αυτό το στοιχείο και τι δεν μπορεί να αποδείξει.
- Περιγράψτε την ασφαλέστερη διαδρομή Recovery για μια κοινόχρηστη GitOps πλατφόρμα.
Drill 10: RBAC Boundary
- Προσδιορίστε ποια πηγή, ποιος Controller ή ποιο περιβάλλον επηρεάζεται από το
RBAC Boundary. - Αναφέρετε μία εντολή ή ένα πεδίο Manifest που προσφέρει ελέγξιμο στοιχείο.
- Εξηγήστε τι αποδεικνύει αυτό το στοιχείο και τι δεν μπορεί να αποδείξει.
- Περιγράψτε την ασφαλέστερη διαδρομή Recovery για μια κοινόχρηστη GitOps πλατφόρμα.
Drill 11: Policy Gate
- Προσδιορίστε ποια πηγή, ποιος Controller ή ποιο περιβάλλον επηρεάζεται από το
Policy Gate. - Αναφέρετε μία εντολή ή ένα πεδίο Manifest που προσφέρει ελέγξιμο στοιχείο.
- Εξηγήστε τι αποδεικνύει αυτό το στοιχείο και τι δεν μπορεί να αποδείξει.
- Περιγράψτε την ασφαλέστερη διαδρομή Recovery για μια κοινόχρηστη GitOps πλατφόρμα.
Drill 12: Rollback
- Προσδιορίστε ποια πηγή, ποιος Controller ή ποιο περιβάλλον επηρεάζεται από το
Rollback. - Αναφέρετε μία εντολή ή ένα πεδίο Manifest που προσφέρει ελέγξιμο στοιχείο.
- Εξηγήστε τι αποδεικνύει αυτό το στοιχείο και τι δεν μπορεί να αποδείξει.
- Περιγράψτε την ασφαλέστερη διαδρομή Recovery για μια κοινόχρηστη GitOps πλατφόρμα.
Drill 13: Desired State
- Προσδιορίστε ποια πηγή, ποιος Controller ή ποιο περιβάλλον επηρεάζεται από το
Desired State. - Αναφέρετε μία εντολή ή ένα πεδίο Manifest που προσφέρει ελέγξιμο στοιχείο.
- Εξηγήστε τι αποδεικνύει αυτό το στοιχείο και τι δεν μπορεί να αποδείξει.
- Περιγράψτε την ασφαλέστερη διαδρομή Recovery για μια κοινόχρηστη GitOps πλατφόρμα.
Drill 14: Source Commit
- Προσδιορίστε ποια πηγή, ποιος Controller ή ποιο περιβάλλον επηρεάζεται από το
Source Commit. - Αναφέρετε μία εντολή ή ένα πεδίο Manifest που προσφέρει ελέγξιμο στοιχείο.
- Εξηγήστε τι αποδεικνύει αυτό το στοιχείο και τι δεν μπορεί να αποδείξει.
- Περιγράψτε την ασφαλέστερη διαδρομή Recovery για μια κοινόχρηστη GitOps πλατφόρμα.
Drill 15: Reconciliation
- Προσδιορίστε ποια πηγή, ποιος Controller ή ποιο περιβάλλον επηρεάζεται από το
Reconciliation. - Αναφέρετε μία εντολή ή ένα πεδίο Manifest που προσφέρει ελέγξιμο στοιχείο.
- Εξηγήστε τι αποδεικνύει αυτό το στοιχείο και τι δεν μπορεί να αποδείξει.
- Περιγράψτε την ασφαλέστερη διαδρομή Recovery για μια κοινόχρηστη GitOps πλατφόρμα.
Drill 16: Drift
- Προσδιορίστε ποια πηγή, ποιος Controller ή ποιο περιβάλλον επηρεάζεται από το
Drift. - Αναφέρετε μία εντολή ή ένα πεδίο Manifest που προσφέρει ελέγξιμο στοιχείο.
- Εξηγήστε τι αποδεικνύει αυτό το στοιχείο και τι δεν μπορεί να αποδείξει.
- Περιγράψτε την ασφαλέστερη διαδρομή Recovery για μια κοινόχρηστη GitOps πλατφόρμα.