Course Outline
Introduction
- How does Terraform differ from Chef, Puppet, Ansible, or Salt?
- Why opt for Terraform over Google Deployment Manager?
Terraform Features and Architecture Overview
- Infrastructure as Code, execution plans, resource graphs, and change automation.
Terraform Workflow
- Write, Preview, Create, Reproduce, Destroy.
Getting Started
- Preparing a GCP account for 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 application.
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.
- Distinguishing between infrastructure and application dependencies.
Deploying Infrastructure
- Previewing configuration changes.
- Executing changes.
Managing State
- Setting up Google Cloud Storage for persistence.
- Configuring Remote State.
Networking
- Configuring a firewall.
- Managing subnets.
Reproducing Infrastructure
- Setting up environments for an application: dev, test/qa, stage, and prod.
Packaging Configuration Files as Modules
- Duplicating code with shareable modules.
- Utilizing 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 interface.
- A fundamental 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