
Introduction to the course
A concise set of notes used for quick reference.
Setting up your Azure Account
Terraform installation
Terraform installation (for Windows users)
Installing the Azure Command Line Interface
Setting up SSH keypairs using Putty (for windows users) - Linux / MacOS users can use the ssh-keygen tool
Introduction to the HasiCorp Configuration Language
How to use variables in terraform, and what datatypes can be used.
The basic terraform commands you need to know to get started
A first demo!
A first demo (part II)
An introduction to terraform with Azure specifically
The Azure Resource Manager explained
A demo on resource groups.
How to use virtual networks in Azure
How to use Virtual Machines (VMs) in Azure
A lecture on how to setup network security groups (firewall rules)
A demo on setting up network security groups
A lecture on availability
Scale sets allow you to autoscale your VMs. A Load Balancer in front of those VMs can balance traffic and provide healthchecks.
A demo showing how to use a scale set and loadbalancer with VMs in Azure with Terraform
A demo showing how to use a scale set and loadbalancer with VMs in Azure with Terraform (Part II)
A demo on how to use scale sets, but now with Availability Zone awareness
How to setup a MySQL Database in Azure with Terraform
A demo on how to setup a MySQL database in Azure with terraform
How to setup a SQL database in Azure
A demo of how to setup a SQL Database in Azure with Terraform
What is CosmosDB and how to set it up with terraform
A demo setting up a mongodb-compatible CosmosDB
An introduction to Azure Storage
What is Azure Blob Storage
A demo showing how to use Azure Blob Storage with terraform
Introduction to Azure Table storage
An introduction to Azure Queue Storage and Azure Data Lake Storage
Introduction to Azure Disk Storage
Azure Active Directory to manage your users and groups
A demo of how to use a Service Principal in Azure with Active Directory
An introduction to the Application Gateway.
Explore real-time Azure Stream Analytics with a terraform-enabled demo that filters IoT hub data for temperatures above 25 and writes results to blob storage, using a Raspberry Pi simulator.
You can store your terraform state remotely. This lecture explains you how
A demo on how to store your remote state remotely
Explore built-in functions in the Azure Corp configuration language and test them with the Terraform console, covering numeric, string, collection, encoding, filesystem, date/time, hash, network, and type conversion functions.
You can use for and for each loops in terraform to iterate over your variables
This demo is showing you how to use for loops
This demo is showing you how to use for each loops
In this lecture we will learn what Terraform modules are and why to use them
Introduction to AKS, the Azure Kubernetes Service
demo showing how to run AKS in terraform (part I)
demo showing how to run AKS in terraform (part II)
Deploy a Node.js express app to an AKS cluster using Azure DevOps pipelines, Docker build and push, and Kubernetes manifests, noting that Terraform support is not yet available.
Push the demo app to Azure DevOps, build and push a Docker image, and deploy to AKS with a load balancer, exposing the application via an external IP.
Switch from a local Terraform backend to a remote backend like Azure Blob Storage to share and protect state with encryption at rest, versioning, remote operations, and locks.
Explore read, generate and modify configuration in Terraform by mastering input variables, outputs, and locals. Learn types, defaults, validation, and sensitive handling for secure deployments.
Learn to read, generate, and modify Terraform configurations using output variables and locals, including description and sensitive options, rare depends_on cases, and how locals streamline IDs across resources.
In this hands-on training we will teach you how to implement and use Terraform on Microsoft Azure from the start to finish. After following this training you can add this precious skill to you resume.
Our mission is to ensure you can start using terraform with Azure in your organisation to automate the provisioning of cloud infrastructure. After taking this course, you'll have the confidence of using Terraform in your organisation.
Let's go and happy learning!
Terraform allows you to write your cloud infrastructure setup in code. If you have used Microsoft Azure before, you'll know that setting up your infrastructure using the Microsoft Azure Portal (the Web UI) is far from ideal. Terraform allows you use Infrastructure as Code, rather than executing the steps manually by going through the correct steps in the Microsoft Azure Portal.
This course will teach you how to write HCL, the HashiCorp Configuration Language, to bring up your infrastructure on Microsoft Azure. Terraform is cloud agnostic, so the terraform skills learned in this course are easily transferable to other cloud providers. After teaching you the terraform basics, the course will continue setting up simple architectural patterns, like VMs, to get you used to how terraform works. Once you have a good feeling of how you can use terraform, we dive a bit deeper into the possible Microsoft Azure Services you can spin up, like Autoscaling, LoadBalancing, MSSQL & MySQL, CosmosDB, Storage Accounts, Azure AD, and others. Also covered is advanced terraform usage, like using remote state, for/foreach loops, and conditionals/functions.