HashiCorp Terraform Associate Certification Course (003) – Pass the Exam!
By freeCodeCamp.org
Published: Aug 17, 2023
Prepare for the HashiCorp Terraform Associate Certification and pass! The Terraform Associate certification is for Cloud Engineers specializing in operations, IT, or development who know the basic concepts and skills associated with open source HashiCorp Terraform.Get your Free Practice and Downloadable Cheatsheets: https://www.exampro.co/terraform
📢 View updates: https://www.exampro.co/terraform
âœï¸ Developed by Andrew Brown of ExamPro
🔗 https://twitter.com/andrewbrown0:00:00 Course Intro
â˜ï¸ 0:15:03 Introduction
Exam Guide
Practice Exam Preview
Version 003 Considerationsâ˜ï¸ 0:31:55 IaC Concepts
What is Infrastructure as Code
Popular Infrastructure as Code tools
Declarative
Infrastructure Lifecycle
Infrastructure Lifecycle Advantages
Non Idempontent vs Idempontent
Provisioning vs Deployment vs Orchestration
Configuration Drift
Mutable vs Immutable Infrastructure
What is GitOps
Immutable Infrastructure Guaranteeâ˜ï¸ 0:52:26 Hashicorp Introduction
HashiCorp
What is Terraform
What is Terraform Cloudâ˜ï¸ 0:56:33 Terraform Basics
Terraform Lifecycle
Change Automation
Execution Plans
Visualizing Execution Plans
Resource Graph
Use Cases
Core and Plugins
Up and Running
Best Practices
Install
CLI and Configuration
Init
Plan and Apply
Apply Update
Inputs Variables
Local Values
Outputs
Modules
Divide Files
Destroy
Cloud
Cloud Updated
Cleanupâ˜ï¸ 1:07:37 Terraform Provisioners
Terraform Provisioners
Exec
File
Connection
Null Resources
Terraform Data
Cloud Init
Local Exec
Remote Exec
File
Null Resource
Terraform Data
Cleanupâ˜ï¸ 1:20:19 Terraform Providers
Providers
Registry
Providers Command
Providers Configuration
Modules
The Fine Line
Azure Provider
GCP Providerâ˜ï¸ 1:30:35 Terraform Language
Terraform Language
Alternate JSON Syntax
Terraform Settings
HashiCorp Configuration Languageâ˜ï¸ 1:35:23 Variables and Data
Input Variables
Variable Definition Files
Variables vs Environment Variables
Loading Input Variables
Output Values
Local Values
Data Sources
References to Named values
Input Variables Types
Input Variables Arguments
Outputs CLI
Outputs Chaining
Local Values
Data Sourcesâ˜ï¸ 1:47:52 Meta Arguments
Resource Meta Arguments
depends_on
count
for_each
Resource Behaviour and Lifecycle
Resource Providers and Alias
Depends On
Count
For Each
Alias
Lifecycleâ˜ï¸ 1:54:40 Expressions
Introduction to Expressions
Types and Values
Strings and Strings Templates
Expressions Operators
Conditional Expressions
Expressions For Expressions
Dynamic Blocks
Version Constraints
String Templates
For Expressions
Splats
Dynamic Blocks
Versioningâ˜ï¸ 2:41:01 Terraform State
State
State MV
State Backups
State CLIâ˜ï¸ 2:45:42 Initialization
terraform init
terraform getâ˜ï¸ 2:48:09 Writing and Modifying
Introduction
terraform fmt
terraform validate
terraform consoleâ˜ï¸ 2:51:17 Plan and Apply
Plan
Apply
Saved Plansâ˜ï¸ 2:54:23 Drift
Managed Resource Drift
Replacing Resources
Resource Addressing
Import
refresh and Refresh Only Mode
Apply Replace and Refresh Only
Importâ˜ï¸ 3:01:24 Troubleshooting
Terraform Troubleshooting
Debugging Terraform
Crash Logs
TF_LOG
Opening a Github Issueâ˜ï¸ 3:05:55 Terraform Modules
Finding Modules
Using Modules
Publishing Modules
Verified Modules
Standard Module Structure
Creatingâ˜ï¸ 3:11:25 Terraform Workflows
Team Workflows Overview
Individual Practitioner
Team
Terraform Cloud
VCS Workflowsâ˜ï¸ 3:18:28 Terraform Backends
Backends
Backend Initialization
terraform_remote_state
State Locking
Protecting Sensitive Data
Terraform Ignore File
Standard Backend Type S3
Multiple Workspaces
Terraform Remote State
Force Unlock
Cloud Backendâ˜ï¸ 3:37:22 Resources and Complex Types
Resources
Complex Types
Collection Types
Structural Types
Complex Types Follow Alongâ˜ï¸ 3:48:10 Built in Functions
Introduction
Numeric Functions
String Functions
Collection Functions
Encoding and Decoding Functions
Filesystem Functions
Date and Time Functions
Hash and Crypto Functions
IP Network Functions
Type Conversion Functions
Built In Functions Follow Alongâ˜ï¸ 4:18:30 Terraform Cloud
Terraform Cloud
Terraform Cloud Terms
Run Workflows
Permissions
API Tokens
Private Registry
Cost Estimation
Workflow Options
Migrating Default Local State
VCS Integration
Run Environment
Cloud Agents
Private Registryâ˜ï¸ 4:42:10 Terraform Enterprise
Terraform Enterprise
Terraform Enterprise Requirements
Air Gapped Environments
Cloud Features and Pricingâ˜ï¸ 4:51:47 Workspaces
Workspaces
Workspaces Internals
Current Workspace Interpolation
Multiple Workspaces
Cloud Workspaces
Workspaces CLI commands
Workspaces Differences
Cloud Multiple Workspacesâ˜ï¸ 5:07:53 Sentinel and Terraform
Sentinel
Policy as Code
Sentinel Policy Language Example
Sentinel with Terraformâ˜ï¸ 5:54:42 Packer
HashiCorp Packer
Packer Template File
Terraform and Packer Integration
Packerâ˜ï¸ 6:22:04 Consul
Terraform and Consulâ˜ï¸ 6:23:13 Vault
HashiCorp Vault
Terraform and Vault
Vault Injection via Data Sourceâ˜ï¸ 6:56:06 Misc
Alantis
CDK for Terraform
Gruntwork
Terragrunt
TerraTest