Course Outline
Introduction
- Differentiating Terraform from tools like Chef, Puppet, Ansible, or Salt.
- Rationale for choosing Terraform over Google Deployment Manager.
Overview of Terraform Features and Architecture
- Infrastructure as Code, execution plans, resource graphs, and change automation.
The Terraform Workflow
- Write, Preview, Create, Reproduce, Destroy.
Getting Started
- Preparing a GCP account for Terraform integration.
- Initializing Terraform and provisioning a virtual machine (compute engine instance).
Creating an Application
- Initiating a project on GCP.
- Setting up a sample web application.
Preparing an Execution Plan
- Writing, saving, and managing .tf files.
Working with Configuration Files
- Syntax overview.
- Writing, version controlling, and updating configurations.
Setting Resource Dependencies
- Leveraging the Terraform Resource Graph.
- Understanding the distinction between infrastructure and application dependencies.
Deploying Infrastructure
- Previewing configuration changes.
- Executing deployment changes.
Managing State
- Configuring Google Cloud Storage for state persistence.
- Setting up Remote State management.
Networking Essentials
- Configuring firewalls.
- Managing subnets.
Reproducing Infrastructure
- Establishing environments for application lifecycles: dev, test/qa, stage, and prod.
Packaging Configuration Files as Modules
- Utilizing shareable modules to duplicate and reuse code.
- Employing the Module Registry to construct reusable templates.
Integrating Terraform into a Deployment Pipeline
- Building, deploying, and testing applications.
- Importing existing external resources into Terraform.
Terraform Performance Tuning
- Monitoring infrastructure and analyzing performance metrics.
Troubleshooting Common Issues
Summary and Conclusion
Requirements
- Proficiency in using the command line.
- Fundamental understanding of cloud infrastructure concepts.
Target 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