Skip navigation

Deploy API Management in Internal VNET with Public IP

Last updated: 11/06/2021

This template demonstrates how to create a instance of Azure API Management within your virtual network's subnet in Internal mode and configure NSG on the subnet as per recommendation. The template also expects Public IP address from your subscription.

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
publisherEmail The email address of the owner of the service
publisherName The name of the owner of the service
sku The pricing tier of this API Management service
skuCount The instance size of this API Management service.This should be in multiple of zones getting deployed.
virtualNetworkName Virtual Network name
virtualNetworkAddressPrefix Address prefix
subnetPrefix Subnet Prefix
subnetName Subnet Name
apimSubnetServiceEndpoints Service Endpoints enabled on the APIM subnet
location Azure region where the resources will be deployed
availabilityZones Zone numbers e.g. 1,2,3.
publicIpName Name for the Public IP used to access the api management service.
publicIpSku SKU for the Public IP used to access the api management service.
publicIPAllocationMethod Allocation method for the Public IP used to access Api Management service. Standard SKU public IP requires `Static` allocation.
dnsLabelPrefix Unique DNS Name for the Public IP used to access the api management service.

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.apimanagement/api-management-create-with-internal-vnet-publicip/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/quickstarts/microsoft.apimanagement/api-management-create-with-internal-vnet-publicip/azuredeploy.json
Installing and configuring the Azure cross-platform command-line interface