
Begin your Azure Terraform journey with this introduction by Dominic, a Terraform-certified IT and DevOps professional. Learn what you need to start using Terraform in Azure.
Create Azure account by signing in with a Microsoft account and start for free to explore services with $200 credit, but be cautious about charges when creating or deleting resources.
Install the TerraForm plugin in Visual Studio Code to set up and use TerraForm across Mac, Windows, and Linux.
Open a dedicated project folder in Visual Studio Code with the TerraForm plugin installed, using the File menu, and keep all files inside the folder named 'Course Code' in documents.
Open a terminal or command prompt, log in to connect Terraform to Azure, then sign in through your browser to prepare for creating your first resource.
Create your first Terraform resource by defining a resource group in Azure using a mane.tf file, set its name and location to UK South.
Define and configure a Terraform provider for Terraform 0.13 and higher by adding required providers blocks with source and version, then create provider.tf and pin version to 2.38.0.
Open the terminal in Visual Studio Code and run terraform init to initialize the current folder and download the required provider files, confirming with a green 'successfully initialized' message.
Run Terraform plan to generate a state file and preview the actions, showing which resources will be created and their IDs before applying with Terraform apply.
Learn how to use terraform apply to execute a plan, confirm creation of a new resource group, and update the state file, then use terraform destroy to remove resources.
Use Terraform destroy to delete resources created by Terraform, then refresh to confirm the resources are removed and only default resource groups remain.
Learn to set up Azure networking with Terraform by creating a virtual network and a subnet, linking them to establish a dependency, then plan and apply.
Learn how to locate Azure image SKUs with a preconfigured PowerShell script, using the Az module, to filter publishers, location, offer, and SKU for Windows images.
Learn to create Azure virtual machines with Terraform, covering three types: generic, Windows-specific, and Linux-specific VMs, and configuring the network interface, VM size, OS disk, and data disk.
Learn to provision a Linux virtual machine on Azure with Terraform by configuring a network interface, os disk, and ssh key authentication, and manage lifecycle with plan, apply, and destroy.
Learn to create a Windows virtual machine in Terraform for Azure by configuring a network interface, OS disk, and image, then plan, apply, and destroy resources.
Explore terraform variables, including string, number, bool, list, and map types, with input variable definitions, defaults, and type declarations, then plan and apply to prompt for values.
Learn to use Terraform outputs to retrieve resource values like id and name from a resource group, and pass them into other resources via plan and apply.
Create a VNet with 10.0.0.0/16, create a subnet named 'challenge subnet' with the same range, and configure a network interface that references the subnet ID via an attribute reference.
Walk through creating a new Terraform Azure project, add a virtual network, subnet, and network interface, customize names and IPs, then plan, apply, and destroy resources.
Build an Azure vm with OS and data disks, subnet, network interface, public IP, and network security group using Terraform. Organize resources into separate files and run plan and apply.
Trying to Make Sense of Terraform For Azure?
Are you sat confused trying to piece together code from awful documentations?
Getting lost in endless amounts of theory and reading… wasting hours and hours of your life…
Just to feel overwhelmed once you’re trying to apply your ‘knowledge’?
If you’re looking for a clear and detailed tutorial that guides you step-by-step through the foundations of Terraform without “death-by-text”, look no further.
Because once you’ve mastered this skill set, you’ll be able to work on your own terraform project or apply for your next DevOps job which is among the HOTTEST and HIGHEST earning roles in IT right now.
I simplify all the processes new students need to understand.
The course uses Terraform 1.17.0 syntax and
2.48 for azurerm. However, the code also supports the latest versions for both terraform and azurerm.
If you're struggling with a lesson or some code, you can find all the course code over on my GitHub account that is linked in the course.
And this course will teach you how to get there.
FAQ
What do I need to get started?
Laptop and a desire to learn Terraform--I’ll cover the rest
Say Goodbye To Confusing Documentation!
This course will take from beginner to expert in a clear, fast and informative way!