
Learn how to apply Infrastructure as Code (IaC) with Terraform. Covers Web Apps, Database, VM, Kubernetes and Azure.
☑ Automate infrastructure deployment to the cloud
☑ Create Terraform templates
☑ Working with the “Execution Plan”
☑ Sharing and locking the State file
☑ Deploy into dev/test and production
☑ DevOps CI/CD pipelines for Terraform
☑ GitOps with Atlantis
☑ Creating and deploying Web Apps, Databases, VMs, Storage, Kubernetes clusters
☑ Deploy to multiple cloud platforms using Modules
☑ Troubleshooting Terraform
☑ Applying Infrastructure as Code (IaC)
Terraform is becoming the standard when it comes to deploying infrastructure into the cloud or on premise.
In this course you will learn how to create and deploy Terraform templates.
We will work with the different Terraform commands like init, plan, apply and destroy.
We’ll explore terraform features like input and output parameters, the execution plan and the remote backend state.
We’ll write templates for Web Apps, SQL Database, VMs, Storage, Kubernetes clusters and many more.
We’ll create the DevOps CI/CD pipelines using Azure DevOps and Github Actions to deploy into multiple environments: dev, test and prod.
Then we’ll implement GitOps for Terraform using Atlantis.
Along all these demonstrations you’ll also learn the Best practices in terms of security, configuration and scalability.
I hope you are ready and excited for this journey!
Bring a coffee and lets get started.
Current plan:
Intro
- Intro to Terraform (Init, Plan, Apply, Delete)
- Requirements (Terraform, Azure subscription, Azure CLI, VS Code+TF plugin, any OS)
ResourceGroup
- Deploying Resource Group into Azure
- Pay Attention to Resource Recreation
- Validate and Format Templates
WebApp
- Deploying Web App
- Adding Variables File
- Creating Variables in .tfvars Files
- Overriding Variables in the command line
- Creating Output Variables
Execution Plan
- Overview of Terraform Plan
- Demo
TF_State
- Working with Remote Backend State
Infra Deployments
- Deploying SQL Server with a Database
- Deploying and configuring Web App and SQL Server
- Deploying Linux VM
- Deploying Windows VM with Azure Bastion
- Deploying AKS cluster
- Deploying AKS with Managed Identity and ACR
Terraform features
- Functions (for each, for, count, if/else, random, lower, upper, min, max…)
DevOps with Terraform
- Deploy Terraform templates using Azure DevOps
- Configuring the CI/CD pipelines
Upcoming lectures:
- Data Source
- Workspaces/Environments
- Testing TF with Terratest
- Multicloud
- Deploy to AWS and GCP
- GitOps with TF (Atlantis…)
- TF with ARM
- TF competitors: Ansible, Pulumi, ARM, Cloud Formation
- TF Providers for Kubernetes, Helm, Docker, GIT…
English
Language
Introduction
Course requirements
Terraform basics
Terraform overview
Create the first terraform template
Terraform init, plan and apply
Recreating resources
Validation and formatting a template
Input & output variables
Creating a template for Azure Web App
Deploying Web App
Terraform Variables
Overriding variables with .tfvars
Overriding variables with command line
Output variables
Terraform execution plan
Execution plan overview
Execution plan demo
Terraform state
Terraform state overview
Terraform state demo
Infra deployments
Deploy Web App and SQL Database
Deploy Linux VM
DevOps for Terraform
CI/CD Pipelines using Azure DevOps
Deploy to multiple environments
Alright, let’s talk about this ‘Deploy Infra in the Cloud using Terraform’ course. If you’re like me, you’ve probably seen a million courses promising to make you a cloud guru. I decided to dive into this one to see if it actually delivered on the promise of getting hands-on with one of the industry-standard tools for infrastructure as code. And honestly? It’s a solid contender for anyone looking to level up their cloud game.
Overview
This isn’t just another fluff piece. The course dives straight into the trenches of automating infrastructure deployment, which is precisely what you need to be doing in today’s cloud-native world. It covers the bread and butter of Terraform: building templates, understanding the ‘Execution Plan’ (which is absolutely crucial, people!), and the often-overlooked but vital aspects of state file management – sharing and locking. Seriously, get this wrong and you’re asking for trouble. The real juice, though, comes from the practical application. Deploying to different environments (dev/test and prod) is a key differentiator, as is the deep dive into CI/CD pipelines and the increasingly popular GitOps paradigm with Atlantis. They don’t shy away from covering the actual resources you’ll be deploying, from the familiar Web Apps and Databases to VMs, Storage, and even Kubernetes clusters. It feels like they’re trying to equip you for a broad range of cloud engineering tasks.
Prerequisites
For this course, you’re not going in completely blind. They expect you to have a foundational understanding of cloud computing concepts. If you’re scratching your head wondering what an Availability Zone is, you might want to brush up on that first. Basic familiarity with at least one major cloud provider (AWS, Azure, or GCP) is also a must. And, of course, a grasp of basic command-line operations will make your life a lot easier. No need to be a coding ninja, but understanding syntax and logical flow is beneficial.
Skills & Tools
By the end of this course, you’ll be wielding Terraform like a pro. You’ll be creating robust Terraform templates, confidently navigating the Execution Plan, and implementing best practices for state file management. The hands-on labs are where this course shines, enabling you to deploy actual resources like Web Apps, Databases, VMs, Storage, and Kubernetes clusters. You’ll gain practical experience setting up infrastructure for different environments, a crucial skill for any cloud engineer. Furthermore, the modules on CI/CD pipelines and GitOps with Atlantis are particularly valuable, equipping you with the knowledge to integrate Terraform into automated workflows, making you job-ready for modern DevOps environments.
Career Benefits & Job Roles
Let’s be real, the ultimate goal is career advancement. This course is a strong stepping stone towards roles like Cloud Engineer, DevOps Engineer, Site Reliability Engineer (SRE), and Infrastructure as Code Specialist. Being proficient in Terraform opens doors to higher-paying positions and more responsibility. It’s the kind of skill that gets noticed and is often a requirement for certification prep for major cloud providers. The ability to automate and manage cloud infrastructure efficiently is a highly sought-after trait, directly contributing to career growth.
Pros
- Real-World Applicability: The course focuses heavily on practical implementation, using real-world projects to teach concepts. You’re not just learning theory; you’re building and deploying.
- Comprehensive Coverage: From basic Terraform syntax to advanced CI/CD and GitOps integration, it covers a broad spectrum of essential skills for cloud infrastructure management.
- Focus on Best Practices: It emphasizes crucial aspects like state file management and environment segregation, which are often missed in more superficial courses.
- Career-Focused Skills: The skills learned are directly transferable to in-demand job roles, making it a worthwhile investment for career growth.
Cons
My only significant gripe is that while they cover multiple cloud providers conceptually, the hands-on labs tend to lean heavily on one specific provider (often AWS or Azure, depending on the iteration). If your primary focus is a different cloud, you might need to do a bit of extra translation or seek out supplementary labs for that specific platform.