Complete Terraform Course – Beginner to Advanced

Complete Terraform Course – Beginner to Advanced

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 41 lectures (6h 37m) | 2.47 GB

Learn Terraform with hands-on demos by automating AWS infrastructure

By the end of this course:

  • you will master one of the most popular Infrastructure Provisioning and Infrastructure as Code (IaC) tool, which is Terraform
  • you will be able to use Terraform confidently in your projects
  • you will know all the core concepts and components of Terraform language
  • if you follow along the demos, you will have solid practical experience with Terraform
  • you will know the fundamental AWS networking concepts and how to create AWS resources using Terraform

You will learn all the concepts with practical examples by automating the AWS infrastructure. AWS is the most used cloud provider and using Terraform with AWS is the most common combination used in projects, so knowing how to automate AWS infrastructure gives you an advantage in the DevOps job market!

Why learn from me:

  • You will learn Terraform step by step and simply explained!
  • Thousands of students (checkout @Techworld with Nana on Youtube) love the way how I explain complex concepts in an easy way, so that everyone can understand it.
  • I’m both an educator and a practitioner. All my knowledge is based on real projects that I have worked in or consulted
  • Learn from a Docker Captain and AWS Container Hero

Core concepts you’ll learn:

  • Providers – Connect with remote cloud providers and systems
  • Resources and Data Sources – Create and fetch resources
  • Terraform Commands – Terraform CLI
  • Changing and destroying Resources
  • Terraform State
  • Output Values
  • Input Variables – Parameterize your Terraform Configuration to make it re-usable
  • Environment Variables in Terraform
  • Provisioners in Terraform – Prepare server
  • Terraform Modules – Modularize your Terraform Project and use existing Modules from Terraform Registry

In the main demo project you’ll learn:

  • how to setup a git repository for your Terraform project
  • how to create the main AWS networking resources: VPC, Subnet, Route Table, Internet Gateway, Security Group
  • how to create and prepare a EC2 server instance, install Docker and start a Docker container on it
  • & more

Throughout the course:

  • you will learn best practices
  • we will use Git to manage our configuration code, which is a best practice in Infrastructure as Code.

See the lecture description for even more information of what you will learn and what we will build.

Table of Contents

Introduction to Terraform
1 What is Infrastructure as Code
2 Introduction to Terraform

Terraform Local Setup AWS Setup
3 Demo Project Resources
4 Install Terraform and Local Setup
5 Create an AWS account and an AWS User as a PreRequisite for the Demo

Terraform Core Concepts and Components of Terraform Language
6 Providers in Terraform Connect to AWS Provider
7 Understand the AWS Resources we create with Terraform VPC Subnet more
8 Resources Data Sources
9 Change and Destroy Resources
10 More Terraform Commands
11 Terraform State
12 Output Values
13 Input Variables Parameterize your Terraform Configuration to make it reusable
14 Environment Variables in Terraform

Terraform Demo Project Automate AWS Infrastructure
15 Create Git Repository for our Terraform Project Configurations
16 Demo Project Overview
17 Create AWS VPC and Subnet
18 Create Route Table and Internet Gateway
19 Associate Subnet with Route Table
20 Use AWS Default Components Default Route Table
21 Create Security Group for Firewall Configuration
22 Fetch Amazon Machine Image AMI for EC2 Instance
23 Create EC2 Instance
24 Create ssh key pair
25 Configure EC2 Server to run entry script and run a Docker container
26 Best Practice Configure Infrastructure not Servers

Provisioners in Terraform
27 Introduction to Provisioners
28 Demo remoteexec localexec and file Provisioner
29 Provisioners are not recommended by Terraform

Terraform Modules Modularize your Terraform project and use existing Modules
30 Introduction to Modules
31 Terraform Project Structure Cleanup our Main Configuration File
32 Create and use a local Module encapsulating the networking configurations
33 Module Outputs
34 Create the second module encapsulating the server configurations
35 Wrap Up Modularize your Terraform project
36 Use existing Module from Terraform Registry VPC Module

Remote State in Terraform why its important and how to configure it
37 Introduction to Remote State
38 Configure Remote Storage with AWS S3 Bucket

Terraform Best Practices
39 Bonus Lecture Terraform Best Practices

Congratulations More Resources
40 Congratulations
41 More Resources

Homepage