Deploy VM Scale Set with LB probe and automatic repairs

Last updated: 5/3/2021

This template allows you to deploy a VM scale set of Linux VMs behind a load balancer with health probe configured. The scale set also has automatic instance repairs policy enabled with a grace period of 30 minutes.

This Azure Resource Manager template was created by a member of the community and not by Microsoft. Each Resource Manager template is licensed to you under a license agreement by its owner, not Microsoft. Microsoft is not responsible for Resource Manager templates provided and licensed by community members and does not screen for security, compatibility, or performance. Community Resource Manager templates are not supported under any Microsoft support program or service, and are made available AS IS without warranty of any kind.

Parameters

Parameter Name Description
vmSku Size of VMs in the VM Scale Set.
imagePublisher (no description available)
imageOffer (no description available)
imageSku (no description available)
imageOSVersion (no description available)
vmssName String used as a base for naming resources. Must be 3-61 characters in length and globally unique across Azure. A hash is prepended to this string for some resources, and resource-specific information is appended.
instanceCount Number of VM instances (100 or less).
adminUsername Admin username on all VMs.
adminPassword Admin password on all VMs.
healthProbePort Local http port on VM at which health extension to probe
healthProbeProtocol Protocol used by health extension to probe app health
location Location for the VM scale set
_artifactsLocation The base URI where artifacts required by this template are located including a trailing '/'
_artifactsLocationSasToken The sasToken required to access _artifactsLocation. When the template is deployed using the accompanying scripts, a sasToken will be automatically generated. Use the defaultValue if the staging location is not secured.

Use the template

PowerShell

New-AzResourceGroup -Name <resource-group-name> -Location <resource-group-location> #use this command when you need to create a new resource group for your deployment
New-AzResourceGroupDeployment -ResourceGroupName <resource-group-name> -TemplateUri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.compute/vmss-automatic-repairs-slb-health-probe/azuredeploy.json
Install and configure Azure PowerShell

Command line

az group create --name <resource-group-name> --location <resource-group-location> #use this command when you need to create a new resource group for your deployment
az group deployment create --resource-group <my-resource-group> --template-uri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.compute/vmss-automatic-repairs-slb-health-probe/azuredeploy.json
Install and Configure the Azure Cross-Platform Command-Line Interface