Getting Started with Terraform for Google Cloud
Module 00: Course Introduction
Full name: Getting Started with Terraform for Google Cloud
Product code: T-TFGC-B
These links are based on the current course version.
Online course options:
- Getting Started with Terraform for Google Cloud - Google Cloud Skills Boost
- Getting Started with Terraform for Google Cloud - Coursera
Module 01: Introduction to Terraform for Google Cloud
Websites
- Terraform on Google Cloud documentation https://cloud.google.com/docs/terraform
- Get started with Terraform https://cloud.google.com/docs/terraform/get-started-with-terraform
- Infrastructure as Code with Terraform https://cloud.google.com/docs/terraform/resource-management/managing-infrastructure-as-code
- Google Cloud provider documentation (Terraform Registry) https://registry.terraform.io/providers/hashicorp/google/latest/docs
Videos
- Getting Started with Terraform for Google Cloud https://www.youtube.com/watch?v=BUPenAjobjw
- Using Terraform with Google Cloud https://www.youtube.com/watch?v=Xni8GUcWQ_s
Module 02: Terms and Concepts
Websites
- Terraform configuration language https://developer.hashicorp.com/terraform/language
- HCL style conventions https://www.terraform.io/language/syntax/style
- Terraform CLI commands https://developer.hashicorp.com/terraform/cli/commands
- Terraform workflow (init, plan, apply) https://developer.hashicorp.com/terraform/intro/core-workflow
- Terraform Validator https://cloud.google.com/docs/terraform/policy-validation
Module 03: Writing Infrastructure Code for Google Cloud
Websites
- Google Cloud Terraform resources https://registry.terraform.io/providers/hashicorp/google/latest/docs
- Terraform Registry modules for Google Cloud https://registry.terraform.io/browse/modules?provider=google
- Cloud Foundation Toolkit https://cloud.google.com/foundation-toolkit
- Terraform Blueprints for Google Cloud https://cloud.google.com/docs/terraform/blueprints/terraform-blueprints
- Resource dependencies in Terraform https://developer.hashicorp.com/terraform/language/resources/behavior#resource-dependencies
- Input variables https://developer.hashicorp.com/terraform/language/values/variables
- Output values https://developer.hashicorp.com/terraform/language/values/outputs
Module 04: Organizing and Reusing Configuration with Terraform Modules
Websites
- Terraform modules https://developer.hashicorp.com/terraform/language/modules
- Using modules from the Terraform Registry https://developer.hashicorp.com/terraform/language/modules/sources#terraform-registry
- Module composition https://developer.hashicorp.com/terraform/language/modules/develop/composition
- Google Cloud Terraform modules https://cloud.google.com/docs/terraform/blueprints/terraform-blueprints
Module 05: Introduction to the Terraform State
Websites
- Terraform state overview https://developer.hashicorp.com/terraform/language/state
- Remote state with Cloud Storage backend https://developer.hashicorp.com/terraform/language/backend/gcs
- State locking https://developer.hashicorp.com/terraform/language/state/locking
- Best practices for using Terraform https://cloud.google.com/docs/terraform/best-practices-for-terraform
- Sensitive data in state https://developer.hashicorp.com/terraform/language/state/sensitive-data
Module 06: Course Summary
Websites
- Terraform with Google Cloud https://cloud.google.com/docs/terraform
- Get Started with Terraform https://cloud.google.com/docs/terraform/get-started-with-terraform
- Terraform Modules https://cloud.google.com/docs/terraform/blueprints/terraform-blueprints
- Best Practices for using Terraform https://cloud.google.com/docs/terraform/best-practices-for-terraform
- Google Cloud Architecture Center - Terraform https://cloud.google.com/architecture?q=terraform