- Lab
- A Cloud Guru
Deploying an Azure VM with Terraform
Deploying VMs is the primary target for almost all attempts at automation. Terraform provides a much more human-readable syntax than that of an ARM template, and allows for the creation of any prerequisites you may want, or need without having to jump around multiple portal screens. In this hands-on lab, we will take what we've done in the previous labs and add in the creation of a NIC and a marketplace Ubuntu VM. Additionally, we will create a Boot Diagnostics storage account to support the use of the serial console, providing a quick way to test the VM's deployment.
Path Info
Table of Contents
-
Challenge
Set Up the Command Line Interface (CLI)
- Open the CLI.
- Select Bash at the prompt.
- Click Show Advanced Settings. Both the Resource Group and Storage Account should be pre-selected with the lab generated values.
- In the File share section, choose the Create new radio button and enter console.
- Click the Attach Storage button.
- Once the command prompt is initialized, proceed to Task 2.
-
Challenge
Deploy a Ubuntu VM
- Use the code block found in the Additional Information and Resources section to create a
test.tf
file and upload it to the CLI. - In the (resource
"azurerm_storage_account" "lab"
) declaration, you'll need to edit theresource_group_name
value with the name generated by the lab. The"provider"
statement has been added to the code, so you won't need to create amain.tf
file to deploy the storage account. - Once the file has been uploaded, run
terraform init
. - Run
terraform plan
and review the output to confirm that Terraform will create the desired resource. Green plus signs will indicate the resources that need to be added. - Run
terraform apply
, answering yes to the prompt to continue. - Once Terraform completes the deployment, check the Azure Portal to confirm.
- Use the code block found in the Additional Information and Resources section to create a
What's a lab?
Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.
Provided environment for hands-on practice
We will provide the credentials and environment necessary for you to practice right within your browser.
Guided walkthrough
Follow along with the author’s guided walkthrough and build something new in your provided environment!
Did you know?
On average, you retain 75% more of your learning if you get time for practice.