Course Highlights
  • Understand, use and apply terraform, including advanced terraform features
  • Use terraform to provision AWS resources
  • Prepare for the HashiCorp Terraform Certification with lectures aligned with the exam objectives
  • Use terraform with Packer to create custom images
  • Use terraform with AWS ECS, Fargate, and CodePipelines
  • Be able to apply DevOps techniques using terraform
Curriculum

3 Topics
Course Introduction
Discussions and Support
Procedure Document

4 Topics
Introduction
Terraform installation
Terraform Installation (on Windows)
Terraform installation using Vagrant

6 Topics
Understanding terraform HCL
First steps in terraform - AWS Setup
First steps in terraform - Spinning up an instance
First steps in terraform - summary
Terraform Variable Types
Quiz 1

19 Topics
Variables
Demo: variables
Software Provisioning
Demo: Software provisioning
Demo: Windows Server Provisioning
Outputting attributes
Demo: Outputting Attributes
Remote state
Demo: Remote state
Data Sources
Demo: Data Sources
Templates
Templates in terraform 0.12 onwards
Other Providers
Modules
Demo: An external Module
Terraform Commands Overview
Demo: Terraform Commands
Quiz 2

28 Topics
Introduction to VPCs
Introduction to VPCs - Part II
Introduction to VPCs - Part III
Demo: VPCs and NAT
Launching EC2 instances in the VPC
Demo: Launching instances in a VPC
Quiz 3
EBS Volumes
Demo: EBS volumes
Userdata
Demo: Userdata
Static IPs EIPs and Route53
Demo: Route53
RDS
Demo: RDS
IAM
Demo: IAM users and groups
IAM Roles
Demo: IAM Roles
Autoscaling
Demo: Autoscaling
Introduction to Elastic Load Balancers (ELB)
ELBs in terraform
Demo: ELB with autoscaling
Application Load Balancer (ALB)
Elastic Beanstalk
Demo: Elastic Beanstalk
Quiz 4

13 Topics
Introduction to Interpolation
Conditionals
Demo: Interpolation and Conditionals
Built-in Functions
Demo: Built-in Functions
For and For Each Loops
Demo: For loops
Demo: For each loops
Terraform Project Structure
Demo: Project Structure in Terraform
Terraform lock file
Manipulating state
Demo: Manipulating state

6 Topics
Packer introduction
Terraform with Packer and Jenkins
Demo: Packer with terraform
Terraform with Packer and Jenkins (Part I)
Terraform with Packer and Jenkins (Part II)
Quiz 5

8 Topics
Introduction to Docker
Docker on AWS
Building Docker images
Demo: Build NodeJS app and push to ECR
ECS - Part I
ECS - Part II
Demo: Running a NodeJS app on ECS
Demo: Terraform with Jenkins ECR and ECS

5 Topics
Introduction to Module Development
ECS + ALB Module Overview
Demo: ECS + ALB Module (part I)
Demo: ECS + ALB Module (Part II)
Demo: ECS + ALB Module (Part III)

5 Topics
Introduction to Advanced Module Development
The difference between count and for_each
Demo: for_each with modules
Demo: Complex data types and the flatten() function
Refactoring modules

4 Topics
Introduction to AWS CodePipeline
Demo: CodePipeline (part I)
Demo: CodePipeline (part II)
Demo: CodePipeline (Part III)

2 Topics
Introduction to AWS EKS
Demo: AWS EKS

18 Topics
Introduction to the HashiCorp Infrastructure Automation Certification
Understanding Infrastructure as Code (IaC)
Understanding terraform basics
Understanding terraform basics - provisioning
Using the Terraform CLI
Interact with terraform modules
Interact with terraform modules: inputs & outputs
The terraform module registry
The terraform workflow
Implement and maintain state (part I)
Implement and maintain state (part II)
Read generate and modify configuration (input variables)
Read generate and modify configuration (output variables locals)
Resources and Datasources
Resources and Datasources (resource addresses)
Resources and datasources (functions and loops)
Secret Injection (Long lived vs short lived)
Terraform Cloud

2 Topics
Introduction to Cloud Development Kit for Terraform
Demo: Introduction to cdktf

2 Topics
Congratulations
Bonus Lecture: My Other Courses

  Write a Review

Learn DevOps: Infrastructure Automation With Terraform

Go to Paid Course