Course Outline
Terraform Core Concepts Review
- The CLI and all available sub-commands
- The flow of Terraform operations
- State and its importance (as well as fragility)
- Hashicorp Configuration Language (HCL), pre 0.12 and post 0.12
Designing More Complex Terraform Projects and Modules
- Approaches to Modularization
- Single-project, multi-module scenarios
- Multi-project related infrastructure, single and hybrid cloud or platform
- Root module decomposition
- Working with new and legacy monolithic projects alike, approaches to thoughtful Terraform project organization
Developing and Managing More Complex Terraform Projects and Modules
- Comprehensive best practices
- Module versions
- Share and focus on DRY
- Complex provider scenarios across projects and modules
- Introduce Terraform Null Label and its utility
An Introduction to Make + Makefile
- Automate repetitive tasks in Terraform projects using a reliable, standard linux tool
Advanced Terraform tool and CLI understanding
- Understand state and the state file
- State migration, management in complex scenarios
- Terraform import approaches in complex scenarios
- Approach mistakes and messes
- Drift that's gotten out of hand
- Corrupted or irreparable state
- Know what can't be fixed
- Proactively ensure that you don't end up in this position with Terraform
HCL Advanced Topics
- Advanced configuration language expression features:
- Re-usability approaches
- Loops, meta-arguments
- For expressions
- Types in the context of expressions
Hardening Security for Terraform
- Shift left Terraform security, defense in depth
- State files and security
- Manage credentials and secrets: least privilege, rotation, protection
- Where and how security can break down in Terraform workflows
Reliability of Infrastructure and Testing
- What automated and manual testing frameworks and methods are available currently?
- The current state of affairs leaves a lot to be desired, e.g. terratest
- Drift and mitigate unexpected consequences in realistic scenarios
- Developer responsibility vs automated testing, git hooks for validation, terraform-pre-commit, etc.
Automating Terraform, Terraform in Pipelines
- Terraform with Spinnaker
- Use automated delivery pipelines to improve quality assurance, stability, and reliability of infrastructure and Terraform deployments
- Terraform and GitOps: approaches to adopting GitOps in Terraform workflows
- Terraform Cloud and Enterprise overview, a look at how these offerings improve Terraform workflows and what other tools/processes exist out there to serve the same need: 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
- An understanding of cloud infrastructure concept
- Basic experience in Terraform operations
Audience
- DevOps engineers
- System administrators
- System architects
Delivery Options
Private Group Training
Our identity is rooted in delivering exactly what our clients need.
- Pre-course call with your trainer
- Customisation of the learning experience to achieve your goals -
- Bespoke outlines
- Practical hands-on exercises containing data / scenarios recognisable to the learners
- Training scheduled on a date of your choice
- Delivered online, onsite/classroom or hybrid by experts sharing real world experience
Private Group Prices RRP from €6840 online delivery, based on a group of 2 delegates, €2160 per additional delegate (excludes any certification / exam costs). We recommend a maximum group size of 12 for most learning events.
Contact us for an exact quote and to hear our latest promotions
Public Training
Please see our public courses