Εξέλιξη Κομματιού
Ενότητα 1: Εισαγωγή στην Υποδομή ως Κώδικα και το Terraform
- Έννοιες IaC και οφέλη για on-premises και υβριδικά περιβάλλοντα
- Επισκόπηση Terraform: providers, resources, state και κύκλος ζωής
- Εγκατάσταση Terraform, Azure CLI και απαραίτητων εργαλείων
- Πρώτη πρακτική άσκηση: συγγραφή απλής διαμόρφωσης Terraform και εφαρμογή της τοπικά
Ενότητα 2: Γλώσσα Διαμόρφωσης HashiCorp (HCL) και Βασικές Αρχές Διαμόρφωσης
- Σύνταξη HCL, resources, attributes και expressions
- Variables, outputs, locals και περιορισμοί τύπων
- Χρήση του Terraform CLI: init, plan, apply, destroy και fmt
- Πρακτικό εργαστήριο: δημιουργία παραμετροποιημένης διαμόρφωσης για έναν on-prem πόρο και έναν πόρο Azure
Ενότητα 3: Providers, Resources και Βασικές Αρχές του Azure Provider
- Κατανόηση των providers και της διαμόρφωσης provider (AzureRM provider)
- Αντιστοίχιση υποδομής σε resources Terraform (δικτύωση, υπολογιστικοί πόροι, αποθήκευση)
- Διαχείριση αυθεντικοποίησης Azure και service principals για αυτοματοποίηση
- Πρακτική άσκηση: παροχή εικονικού δικτύου Azure και ενός απλού VM μέσω Terraform
Ενότητα 4: Διαχείριση State, Backends και Συνεργασία
- Terraform state: σκοπός, μορφή και ζητήματα κύκλου ζωής
- Απομακρυσμένα backends με Azure Storage Account και στρατηγικές κλειδώματος state
- Workspaces, περιβάλλοντα και πρότυπα συνεργασίας για ομάδες
- Εργαστήριο: ρύθμιση απομακρυσμένου state στο Azure Storage και εκτέλεση ροής εργασίας πολλαπλών χρηστών
Ενότητα 5: Modularization, Επαναχρησιμοποίηση και Βέλτιστες Πρακτικές
- Συγγραφή και χρήση modules Terraform
- Είσοδοι/έξοδοι modules, versioning και πρότυπα registry
- Διάταξη φακέλων, συμβάσεις ονοματοδοσίας και συντηρήσιμη δομή αποθετηρίου
- Πρακτική άσκηση: δημιουργία επαναχρησιμοποιήσιμου module για Azure VM + δίσκο + δίκτυο και δοκιμή σε διάφορα περιβάλλοντα
Ενότητα 6: Διαχείριση Εικονικών Συσκευών Azure και Ενσωμάτωση On-Prem
- Διαχείριση Azure Virtual Machines, στοιχείων Virtual Desktop και κύκλου ζωής συσκευών μέσω Terraform
- Πρότυπα υβριδικής διαχείρισης συσκευών: σύνδεση on-prem πόρων και συσκευών διαχειριζόμενων από το Azure
- Ενσωμάτωση συστημάτων διαχείρισης όγκου ή συσκευών μέσω data sources και εξωτερικών providers
- Εργαστήριο: ανάπτυξη στόλου Azure VMs που αντιπροσωπεύουν μονάδες χειριστών και ρύθμιση tagging αποθέματος και βασικής παρακολούθησης
Ενότητα 7: CI/CD, Αυτοματοποίηση και Pipelines Ανάπτυξης
- Ενσωμάτωση Terraform με CI/CD (GitHub Actions, Azure DevOps pipelines)
- Αυτοματοποίηση plan/apply με ασφαλή μυστικά και service principals
- Βασικές αρχές Policy as Code (πρότυπα Sentinel ή Open Policy Agent) και έλεγχοι πριν την ανάπτυξη
- Πρακτική άσκηση: δημιουργία απλού GitHub Actions workflow για plan και apply του Terraform σε sandbox συνδρομή
Ενότητα 8: Ασφάλεια, Μυστικά και Λειτουργικές Πρακτικές
- Διαχείριση μυστικών: ενσωμάτωση Azure Key Vault και αποφυγή ευαίσθητων δεδομένων σε αρχεία state
- Έλεγχος πρόσβασης, RBAC και ελάχιστο προνόμιο για λογαριασμούς αυτοματοποίησης
- Ανίχνευση αποκλίσεων, συμφιλίωση state και βασικές πρακτικές αποκατάστασης
- Λίστα ελέγχου: backup, έλεγχος και διακυβέρνηση για υποδομές διαχειριζόμενες από Terraform
Ενότητα 9: Δοκιμές, Αποσφαλμάτωση και Αντιμετώπιση Προβλημάτων
- Αποσφαλμάτωση διαμορφώσεων Terraform και αποτελεσματική ανάγνωση διαφορών plan
- Προσεγγίσεις δοκιμών μονάδας και ενσωμάτωσης (terraform validate, tflint, kitchen-terraform)
- Κοινά πρότυπα σφαλμάτων και στρατηγικές επίλυσης
- Εργαστήριο: εκτέλεση εργαλείων επικύρωσης και linting και διόρθωση προβλημάτων που εντοπίστηκαν
Ενότητα 10: Τελικό Έργο — Σενάριο Υβριδικής Ανάπτυξης
- Άσκηση σχεδιασμού: σχεδιασμός ανάπτυξης on-prem + συσκευών Azure με χρήση των προτύπων που διδάχθηκαν
- Υλοποίηση βασικών στοιχείων με χρήση modules, απομακρυσμένου state και αποσπασμάτων pipeline CI/CD
- Παρουσίαση λύσης, συζήτηση ανταλλαγμάτων και αναθεώρηση runbook για λειτουργίες
Σύνοψη και Επόμενα Βήματα
Απαιτήσεις
- Κατανόηση βασικών εννοιών δικτύωσης και εικονικοποίησης
- Εξοικείωση με τη γραμμή εντολών Windows ή Linux
- Βασικές γνώσεις εννοιών υποδομών cloud ή on-premises
Κοινό
- Διαχειριστές συστημάτων και μηχανικοί πλατφόρμας
- Επαγγελματίες DevOps που ξεκινούν με την Υποδομή ως Κώδικα
- Ομάδες IT που διαχειρίζονται υβριδικές υποδομές (on-prem + Azure)
Σχόλια (3)
Το ρυθμός, για το μεγαλύτερο μέρος, ήταν εξαιρετικός. Ο Μιχάλ ήταν πολύ καλό στο να διασφαλίζει ότι το κοινό ήταν ενεργό και ότι όλοι ακολουθούσαν, για το μεγαλύτερο μέρος.
Asif Shaikh - Carpmaels & Ransford
Κομμάτι - Terraform on Microsoft Azure
Μηχανική Μετάφραση
Έλεγχος όλων των λεπτομερειών στην πράξη - με την εκτύπωση πραγματικού κώδικα
Michal Pipala - EY
Κομμάτι - Advanced Terraform: Efficient Infrastructure as Code
Μηχανική Μετάφραση
ο εκπαιδευτής ήταν πολύ καλά προετοιμασμένος
Federico Biavati - CRIF S.P.A.
Κομμάτι - Terraform for Managing Cloud Infrastructure
Μηχανική Μετάφραση