Course Outline
Introduction
- How is Terraform different from Chef, Puppet, Ansible or Salt?
 - Why not use Google Deployment Manager?
 
Overview of Terraform Features and Architecture
- Infrastructure as Code, execution plans, resource graphs, change automation
 
Terraform Workflow
- Write, Preview, Create, Reproduce, Destroy
 
Getting Started
- Preparing a GCP account to use with Terraform
 - Initializing Terraform and building a virtual machine (compute engine instance)
 
Creating an Application
- Starting a project on GCP
 - Initializing a sample web app
 
Preparing an Execution Plan
- Writing a new plan, saving, and removing .tf files
 
Working with Configuration Files
- Syntax overview
 - Writing, version controlling, and updating
 
Setting Resource Dependencies
- Using the Terraform Resource Graph
 - Infrastructure vs application dependencies
 
Deploying Infrastructure
- Previewing configuration changes
 - Executing changes
 
Managing State
- Setting up Google Cloud Storage for persistence
 - Setting up Remote State
 
Networking
- Setting up a firewall
 - Managing subnets
 
Reproducing Infrastructure
- Setting up environments for an app: dev, test/qa, stage, and prod
 
Packaging Configuration Files as Modules
- Duplicating code with shareable modules
 - Using the Module Registry to build reusable templates
 
Integrating Terraform into a Deployment Pipeline
- Building, deploying, and testing an application
 - Importing existing external resources into Terraform
 
Terraform Performance Tuning
- Infrastructure monitoring and performance metrics
 
Troubleshooting
Summary and Conclusion
Requirements
- Experience working with a command line
 - An understanding of cloud infrastructure concepts
 
Audience
- Cloud architects
 - System administrators
 - DevOps engineers
 
Testimonials (3)
Trainer's depth of knowledge on Terraform, his enthusiasm on good ways of coding and principles and his patience.
Douglas Hanna - Mailchimp
Course - Terraform on GCP (Google Cloud Platform)
The Pomodoro Technique, the size which made engagement easy and not taking too much time because there are too many people in the class.
Chris Carlino - Mailchimp
Course - Terraform on GCP (Google Cloud Platform)
Intractive sessions