Course Outline
Review of Core Terraform Concepts
- The CLI and all available sub-commands
- The workflow of Terraform operations
- State management, its significance (and inherent fragility)
- Hashicorp Configuration Language (HCL), covering versions pre and post 0.12
Designing Complex Terraform Projects and Modules
- Strategies for Modularization
- Single-project, multi-module configurations
- Multi-project related infrastructure, covering single and hybrid cloud or platforms
- Decomposing Root Modules
- Handling both new and legacy monolithic projects, focusing on thoughtful Terraform project organization
Developing and Managing Complex Terraform Projects and Modules
- In-depth best practices
- Managing Module versions
- Emphasizing Share and DRY principles
- Navigating Complex provider scenarios across projects and modules
- Introducing Terraform Null Resource and its practical applications
Introduction to Make + Makefile
- Automating repetitive tasks in Terraform projects using a reliable, standard linux tool
Advanced Terraform Tooling and CLI Mastery
- Understanding state and the state file
- State migration and management in complex scenarios
- Approaches to Terraform import in complex environments
- Handling mistakes and recovery scenarios
- Managing drift that has escalated
- Dealing with corrupted or irreparable state
- Identifying what cannot be fixed
- Proactively preventing these scenarios in Terraform workflows
Advanced HCL Topics
- Advanced configuration language expression features:
- Approaches to re-usability
- Loops and meta-arguments
- For expressions
- Types in the context of expressions
Hardening Terraform Security
- Shifting Terraform security left and implementing defense in depth
- Securing state files
- Managing credentials and secrets: least privilege, rotation, and protection
- Identifying where and how security can break down in Terraform workflows
Infrastructure Reliability and Testing
- Available automated and manual testing frameworks and methods:
- Assessing the current landscape, e.g., terratest
- Managing drift and mitigating unexpected consequences in realistic scenarios
- Developer responsibility vs automated testing, including git hooks for validation, terraform-pre-commit, etc.
Automating Terraform and Integration in Pipelines
- Integrating Terraform with Spinnaker
- Using automated delivery pipelines to enhance quality assurance, stability, and reliability of infrastructure and Terraform deployments
- Terraform and GitOps: strategies for adopting GitOps in Terraform workflows
- Overview of Terraform Cloud and Enterprise, examining how these offerings improve Terraform workflows, and exploring other tools/processes for similar needs: custom CI/CD pipelines for Terraform, tools like Atlantis, etc.
Complex AWS Infrastructure with Terraform
- Designing and deploying VPCs with Terraform
- Managing EC2 instances and other compute resources
- Configuring AWS networking components
- Integrating AWS services into Terraform-managed infrastructure
- Implementing security best practices for AWS resources
Summary and Next Steps
Requirements
- A solid grasp of cloud infrastructure concepts
- Fundamental experience with Terraform operations
Target Audience
- DevOps engineers
- System administrators
- System architects
Custom Corporate Training
Training solutions designed exclusively for businesses.
- Customized Content: We adapt the syllabus and practical exercises to the real goals and needs of your project.
- Flexible Schedule: Dates and times adapted to your team's agenda.
- Format: Online (live), In-company (at your offices), or Hybrid.
Price per private group, online live training, starting from 4350 € + VAT*
Contact us for an exact quote and to hear our latest promotions
Testimonials (6)
The trainer was very knowledgeable and easy to talk to, he helped with troubleshooting issues for some of the participants and answered all the questions. Course material was good and had a lot of examples.
Vlad
Course - Advanced Terraform - 3 Days
I liked the fact that the trainer was willing to help us on the debugging side.
Diana
Course - Advanced Terraform - 3 Days
I liked it very much, I appreciate the fact that Vicenzo took the time to answer all the questions and troubleshoot the existing error messages
Mihai
Course - Advanced Terraform - 3 Days
The subjects that were brought were interesting.
Razvan
Course - Advanced Terraform - 3 Days
Vincenzo provided support to troubleshoot different scenarios and also helped with examples.
Stelian
Course - Advanced Terraform - 3 Days
It clarified some of the things I didn't know about terraform.