Deploy SQL Managed Instance with Networking

Last updated: 13/09/2019

Deploy UDR and NSG to support Azure SQL Managed Instance and deploy the Managed Instance

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

Parameters

Parameter Name Description
location Location for all resources
vnetResourceName The name of the vnet
managedInstanceSubnetName Managed Instance Subnet name
sqlManagedInstanceName Name of the Azure SQL Managed Instance - must be globally unique, contain only lowercase letters, numbers and '-'
sqlManagedInstanceAdminLogin Admin user for Managed Instance
sqlManagedInstancePassword Admin user password - must be 16-128 characters, must contain 3 of uppercase, lowercase, numbers and non-alphanumeric characters, and cannot contain all or part of the login name
sqlManagedInstance-storageSizeInGB Amount of Storage in GB for this instance
sqlManagedInstance-vCores Number of vCores for this instance
sqlManagedInstance-licenseType Type of license: BasePrice (BYOL) or LicenceIncluded
sqlManagedInstance-skuName SKU NAME (GP_Gen4, GP_Gen5, BC_GEN5)
sqlManagedInstance-skuEdition SKU Edition (GeneralPurpose, BusinessCritical)
sqlManagedInstance-hardwareFamily Hardware family (Gen4, Gen5)
sqlManagedInstance-collation SQL Collation
tags Tags for the Managed Instance SQL resource.
_artifactsLocation The location of resources, such as templates and DSC modules, that the template depends on
_artifactsLocationSasToken Auto-generated token to access _artifactsLocation
vnetAddressRange Address range for the virtual network in CIDR notation
managedInstanceNSGName Name of the Managed Instance NSG
managedInstanceRouteTableName Name of the Managed Instance Route Table
managedInstanceSubnetAddressRange Managed Instance Subnet range
miManagementIps List of MI management IP ranges

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/azure-sql-managed-instance/azuredeploy.json
Installing and configuring 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/azure-sql-managed-instance/azuredeploy.json
Installing and configuring the Azure cross-platform command-line interface