The hands-on lab is part of this learning path
Ready for the real environment experience?
Terraform by HashiCorp can manage your infrastructure across multiple cloud providers and on-prem. To reuse and share components across projects and to better organize large projects, you can create modules. In this Lab, you will use modules shared on the public Terraform Registry as well as a module that you create to provision a web server virtual machine in Azure. The Lab will also introduce you to Azure's browser-based Cloud Shell, which you will use to complete the Lab.
Upon completion of this Lab you will be able to:
- Create reusable Terraform modules
- Use Terraform modules shared on the Terraform Registry
- Work with Terraform Data Sources
- Use Terraform Provisioners to bootstrap VMs
- Learn how to use Azure Cloud Shell
You should be familiar with:
- Working at the command-line in Linux
- Terraform basics
The following Labs can be used to fulfill the prerequisites to this Lab:
- Create AWS Resources with Terraform
- Manage AWS Resources with Terraform
- Deploy a Highly Available Website with Terraform on AWS
Before completing the Lab instructions, the environment will look as follows:
After completing the Lab instructions, the environment should look similar to:
May 6th, 2019 - Added Lab validation Lab Step to check the work performed in the Lab
May 6th, 2019 - Fixed an issue with the latest AzureRM Terraform provider attempting to register unnecessary Resource Providers and updated screenshots to reflect the latest experience
September 7, 2018 - Updated images to improve lab experience
About the Author
Logan has been involved in software development and research since 2007 and has been in the cloud since 2012. He is an AWS Certified DevOps Engineer - Professional, AWS Certified Solutions Architect - Professional, Microsoft Certified Azure Solutions Architect Expert, MCSE: Cloud Platform and Infrastructure, Google Cloud Certified Associate Cloud Engineer, Certified Kubernetes Administrator (CKA), Certified Kubernetes Application Developer (CKAD), Linux Foundation Certified System Administrator (LFCS), and Certified OpenStack Administrator (COA). He earned his Ph.D. studying design automation and enjoys all things tech.