Terraform Azure Provider

In the following post I will demonstrate getting started with the Terraform Azure Provider. I’ll build the configuration for: Resource Group Virtual Network Subnet Network Security Group (Allow SSH) NSG Association 2 x Linux Virtual Machines 2 x Network Interface Cards 2 x Public IPs These will all be deployed them from Azure Cloud Shell. Remote vs Local State A quick note on the Terraform state file… I have decided to create a remote state file, stored in an Azure Storage Account in order to demonstrate the “backend” configuration....

June 5, 2022 · 6 min · Mark kerry

Terraform VirtualBox Provider

In this post I will demonstrate how to deploy 2x Ubuntu Virtual Machines using the Terraform VirtualBox provider, terra-farm You can install VirtualBox on Ubuntu using this guide. The main.tf file is configured to use a network adapter called vnetbox1, so you need to ensure it is created and set DHCP Server to Enable. Install Terraform Let’s start by installing Terraform. The following is from the official Terraform documentation: Add the Terraform gpg key....

May 1, 2022 · 4 min · Mark kerry

Create and Deploy an Azure Container Instance with Azure Bicep

Using the Go container created in a previous post, in the post I will detail the steps to author and deploy an Azure Container Instance using Azure Bicep. Hosted in a Linux container, the image will be pulled from Docker Hub. What are Azure Container Instances Azure Container Instances provides basic container functionality for simple solutions with no orchestration. They can be deployed with public accessibility (public IP and FQDN), or deployed to a VNet for private network access....

August 22, 2021 · 4 min · Mark kerry

Azure ARM Templates - Part 4: Azure Portal Custom Deployment

In my previous posts I walked through the process to author ARM templates using VS Code and the Azure Resource Manager (ARM) Tools extension. In this post I will walk through the process to author ARM templates from scratch using the Azure portal’s Custom Deployment feature. It’s handy for getting started with ARM template authoring, but as you will see below, creates resources with old API versions, bloats the variables element, and creates the variables element at the bottom of the template....

August 1, 2021 · 4 min · Mark kerry

Azure ARM Templates - Part 3: Deployment

In the third and final post of this series I’ll quickly cover the process to deploy the ARM template with PowerShell Deploy Open PowerShell and change directory to the location of your ARM template and parameter files. Then complete the following commands to connect to Azure and create a Resource Group to deploy the resources to: # Import the Azure Az PowerShell Module Import-Module -Name Az # Connect to Azure and authenticate Connect-AzAccount # Create the Resource Group New-AzResourceGroup -Name "rg-eu-vm" -Location "westeurope" Once the Resource Group has been created it’s time to deploy the resources using the New-AzResourceGroupDeployment cmdlet....

July 4, 2021 · 2 min · Mark kerry

Azure ARM Templates - Part 2: Testing

Following on from authoring the Azure ARM Templates - Part 1: Development post, in this one I will cover testing the ARM template. Two potential ways to test the ARM templates is by manually building a Pester test, and another is by using Microsoft’s Azure Resource Manager Template Toolkit (arm-ttk) module. You can run local tests against ARM templates using PowerShell - which I will demonstrate in the post - but most commonly template testing and validating is used during a CI pipeline....

July 3, 2021 · 4 min · Mark kerry

Azure ARM Templates - Part 1: Development

In the first of this three part series of posts, I will breakdown the components of an Azure ARM template, and the tools used to develop one. Then in part two I will cover testing an ARM template. And finally in part three, I will cover deploying the resources in the ARM template to Azure. The ARM template will consist of the following resources: Windows VM Network Interface Public IP Virtual Network Network Security Group Storage Account Getting Started Before looking at Bicep, Terraform or Pulumi, I think it’s important to get to know the process of developing Azure ARM templates from scratch....

June 27, 2021 · 7 min · Mark kerry