Get in Touch

Course Outline

Terraform Core Concepts Review

  • The CLI and its full suite of sub-commands
  • The operational workflow of Terraform
  • State management: its critical importance and inherent fragility
  • HashiCorp Configuration Language (HCL), covering versions before and after 0.12

Designing Complex Terraform Projects and Modules

  • Strategies for modularization
    • Single-project, multi-module configurations
    • Related infrastructure across multiple projects in single or hybrid cloud platforms
    • Decomposing root modules
      • Approaches to organizing new and legacy monolithic projects thoughtfully

Building and Managing Complex Terraform Projects and Modules

  • In-depth best practices
  • Managing module versions
  • Emphasizing and applying DRY (Don't Repeat Yourself) principles
  • Handling complex provider scenarios across different projects and modules
  • Introduction to the Terraform Null resource and its practical applications

Introduction to Make and Makefiles

  • Automating repetitive Terraform tasks using standard, reliable Linux tooling

Advanced Terraform Tooling and CLI Proficiency

  • Deep dive into state and state files
  • State migration and management in complex environments
  • Terraform import strategies for intricate scenarios
  • Addressing errors and complications
    • Managing severe configuration drift
    • Handling corrupted or unrecoverable state
    • Understanding limitations and unfixable issues
    • Proactive measures to prevent such situations in Terraform

Advanced HCL Topics

  • Advanced configuration language expression features:
    • Approaches to reusability
    • Loops and meta-arguments
    • For expressions
    • Data types in the context of expressions

Enhancing Terraform Security

  • Shifting security left and implementing defense in depth
  • Securing state files
  • Managing credentials and secrets via least privilege, rotation, and protection strategies
  • Identifying potential security breakdowns within Terraform workflows

Infrastructure Reliability and Testing

  • Overview of available automated and manual testing frameworks and methods
    • Current landscape and tools, such as terratest
  • Mitigating drift and unexpected outcomes in realistic scenarios
  • Balancing developer responsibility with automated testing, utilizing git hooks, terraform-pre-commit, and similar tools

Automating Terraform and Integration with Pipelines

  • Integrating Terraform with Spinnaker
  • Using automated delivery pipelines to enhance QA, stability, and reliability
  • Terraform and GitOps: strategies for adopting GitOps in Terraform workflows
  • Overview of Terraform Cloud and Enterprise, evaluating how these offerings improve workflows, and exploring alternative tools and processes such as custom CI/CD pipelines and Atlantis

Complex AWS Infrastructure with Terraform

  • Designing and deploying VPCs using Terraform
  • Managing EC2 instances and other compute resources
  • Configuring AWS networking components
  • Integrating various 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
  • Foundational experience with Terraform operations

Audience

  • DevOps engineers
  • System administrators
  • System architects
 21 Hours

Number of participants


Price per participant

Testimonials (6)

Upcoming Courses

Related Categories