Course Outline
Advanced Terraform Syntax and Constructs
- In-depth analysis of Terraform syntax
- Leveraging maps and lists to enable dynamic configurations
Expressions and Dynamic Configurations
- Exploring basic expressions and their practical applications
- Applying advanced expressions for complex infrastructure architectures
- Hands-on exercises focused on expression usage
Best Practices for Terraform Modules
- Distinguishing between local and shared modules and their appropriate use cases
- Designing modules with a focus on reusability and maintainability
- Managing versioning and module sources effectively
Terraform Best Practices and Patterns
- Reviewing instance index keys for effective state management
- Best practices for writing clean and organized Terraform code
- Ensuring idempotency and minimizing unintended side effects
Terraform State Management
- Importing resources and gaining a deep understanding of the state file
Staying Current with Terraform Updates
- Reviewing documentation in conjunction with new Terraform releases
- Developing strategies for smooth Terraform version upgrades
- Navigating deprecations and executing migration paths
Integrating Terraform with CI/CD Pipelines
- Understanding YAML and pipeline configuration fundamentals
Advanced Troubleshooting and Debugging
- Employing systematic methods to troubleshoot Terraform plans and applies
- Debugging both common and complex Terraform errors
- Utilizing logs and verbose output to resolve issues
Outputs and Data Flow in Terraform
- Understanding and leveraging Terraform outputs
- Managing data flow between modules and root configurations
- Securing sensitive information within outputs
Conditional Logic in Terraform
- Implementing conditional statements using count, for_each, and if
- Controlling the conditional creation of resources
Local Terraform Execution
- Configuring a local Terraform environment
- Executing and testing Terraform code on local machines
Managing Circular Dependencies
- Identifying and resolving circular dependency issues
- Refactoring code to eliminate dependency cycles
- Applying advanced techniques for dependency management
Summary and Next Steps
Requirements
- Solid grasp of fundamental Terraform syntax and operations
- Practical experience with cloud infrastructure (AWS preferred) and a working knowledge of CI/CD principles
Target Audience
- DevOps Engineers
- Cloud Architects
- Infrastructure Specialists
- Technical Leads and Managers
Testimonials (4)
Checking all the details in practice - by writing real code
Michal Pipala - EY
Course - Advanced Terraform: Efficient Infrastructure as Code
Very interactive training
Michal Bojko - EY
Course - Advanced Terraform: Efficient Infrastructure as Code
The structure was good, each section had a clear purpose and was easy enough to follow. The exercises were useful and the trainer was helpful when issues eventually arose. The relaxed approach regarding the labs was also something that I enjoyed. Props to the trainer for keeping a chill & friendly attitude throughout the training, even after some of the attendees gave up on the whole experience.
Rares - Orange Services
Course - Advanced Terraform: Efficient Infrastructure as Code
The flexibility of the trainer to adapt the knowledge sharing based on the group feedback or areas of intereset