Microsoft.Network trafficmanagerprofiles 2017-05-01

Bicep resource definition

The trafficmanagerprofiles resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.Network/trafficmanagerprofiles resource, add the following Bicep to your template.

resource symbolicname 'Microsoft.Network/trafficmanagerprofiles@2017-05-01' = {
  location: 'string'
  name: 'string'
  properties: {
    dnsConfig: {
      relativeName: 'string'
      ttl: int
    }
    endpoints: [
      {
        properties: {
          endpointLocation: 'string'
          endpointMonitorStatus: 'string'
          endpointStatus: 'string'
          geoMapping: [
            'string'
          ]
          minChildEndpoints: int
          priority: int
          target: 'string'
          targetResourceId: 'string'
          weight: int
        }
      }
    ]
    monitorConfig: {
      intervalInSeconds: int
      path: 'string'
      port: int
      profileMonitorStatus: 'string'
      protocol: 'string'
      timeoutInSeconds: int
      toleratedNumberOfFailures: int
    }
    profileStatus: 'string'
    trafficRoutingMethod: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

Property values

DnsConfig

Name Description Value
relativeName The relative DNS name provided by this Traffic Manager profile. This value is combined with the DNS domain name used by Azure Traffic Manager to form the fully-qualified domain name (FQDN) of the profile. string
ttl The DNS Time-To-Live (TTL), in seconds. This informs the local DNS resolvers and DNS clients how long to cache DNS responses provided by this Traffic Manager profile. int

Endpoint

Name Description Value
properties The properties of the Traffic Manager endpoint. EndpointProperties

EndpointProperties

Name Description Value
endpointLocation Specifies the location of the external or nested endpoints when using the ‘Performance’ traffic routing method. string
endpointMonitorStatus The monitoring status of the endpoint. 'CheckingEndpoint'
'Degraded'
'Disabled'
'Inactive'
'Online'
'Stopped'
endpointStatus The status of the endpoint. If the endpoint is Enabled, it is probed for endpoint health and is included in the traffic routing method. 'Disabled'
'Enabled'
geoMapping The list of countries/regions mapped to this endpoint when using the ‘Geographic’ traffic routing method. Please consult Traffic Manager Geographic documentation for a full list of accepted values. string[]
minChildEndpoints The minimum number of endpoints that must be available in the child profile in order for the parent profile to be considered available. Only applicable to endpoint of type 'NestedEndpoints'. int
priority The priority of this endpoint when using the ‘Priority’ traffic routing method. Possible values are from 1 to 1000, lower values represent higher priority. This is an optional parameter. If specified, it must be specified on all endpoints, and no two endpoints can share the same priority value. int
target The fully-qualified DNS name of the endpoint. Traffic Manager returns this value in DNS responses to direct traffic to this endpoint. string
targetResourceId The Azure Resource URI of the of the endpoint. Not applicable to endpoints of type 'ExternalEndpoints'. string
weight The weight of this endpoint when using the 'Weighted' traffic routing method. Possible values are from 1 to 1000. int

Microsoft.Network/trafficmanagerprofiles

Name Description Value
location The Azure Region where the resource lives string
name The resource name string (required)
properties The properties of the Traffic Manager profile. ProfileProperties
tags Resource tags Dictionary of tag names and values. See Tags in templates

MonitorConfig

Name Description Value
intervalInSeconds The monitor interval for endpoints in this profile. This is the interval at which Traffic Manager will check the health of each endpoint in this profile. int
path The path relative to the endpoint domain name used to probe for endpoint health. string
port The TCP port used to probe for endpoint health. int
profileMonitorStatus The profile-level monitoring status of the Traffic Manager profile. 'CheckingEndpoints'
'Degraded'
'Disabled'
'Inactive'
'Online'
protocol The protocol (HTTP, HTTPS or TCP) used to probe for endpoint health. 'HTTP'
'HTTPS'
'TCP'
timeoutInSeconds The monitor timeout for endpoints in this profile. This is the time that Traffic Manager allows endpoints in this profile to response to the health check. int
toleratedNumberOfFailures The number of consecutive failed health check that Traffic Manager tolerates before declaring an endpoint in this profile Degraded after the next failed health check. int

ProfileProperties

Name Description Value
dnsConfig The DNS settings of the Traffic Manager profile. DnsConfig
endpoints The list of endpoints in the Traffic Manager profile. Endpoint[]
monitorConfig The endpoint monitoring settings of the Traffic Manager profile. MonitorConfig
profileStatus The status of the Traffic Manager profile. 'Disabled'
'Enabled'
trafficRoutingMethod The traffic routing method of the Traffic Manager profile. 'Geographic'
'Performance'
'Priority'
'Weighted'

TrackedResourceTags

Name Description Value

Quickstart samples

The following quickstart samples deploy this resource type.

Bicep File Description
Azure Traffic Manager external endpoint example This template shows how to create an Azure Traffic Manager profile using external endpoints.
Azure Traffic Manager VM example This template shows how to create an Azure Traffic Manager profile load-balancing across multiple virtual machines.
Azure Traffic Manager web app example This template shows how to create an Azure Traffic Manager profile for an App Service.

ARM template resource definition

The trafficmanagerprofiles resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.Network/trafficmanagerprofiles resource, add the following JSON to your template.

{
  "type": "Microsoft.Network/trafficmanagerprofiles",
  "apiVersion": "2017-05-01",
  "name": "string",
  "location": "string",
  "properties": {
    "dnsConfig": {
      "relativeName": "string",
      "ttl": "int"
    },
    "endpoints": [
      {
        "properties": {
          "endpointLocation": "string",
          "endpointMonitorStatus": "string",
          "endpointStatus": "string",
          "geoMapping": [ "string" ],
          "minChildEndpoints": "int",
          "priority": "int",
          "target": "string",
          "targetResourceId": "string",
          "weight": "int"
        }
      }
    ],
    "monitorConfig": {
      "intervalInSeconds": "int",
      "path": "string",
      "port": "int",
      "profileMonitorStatus": "string",
      "protocol": "string",
      "timeoutInSeconds": "int",
      "toleratedNumberOfFailures": "int"
    },
    "profileStatus": "string",
    "trafficRoutingMethod": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

Property values

DnsConfig

Name Description Value
relativeName The relative DNS name provided by this Traffic Manager profile. This value is combined with the DNS domain name used by Azure Traffic Manager to form the fully-qualified domain name (FQDN) of the profile. string
ttl The DNS Time-To-Live (TTL), in seconds. This informs the local DNS resolvers and DNS clients how long to cache DNS responses provided by this Traffic Manager profile. int

Endpoint

Name Description Value
properties The properties of the Traffic Manager endpoint. EndpointProperties

EndpointProperties

Name Description Value
endpointLocation Specifies the location of the external or nested endpoints when using the ‘Performance’ traffic routing method. string
endpointMonitorStatus The monitoring status of the endpoint. 'CheckingEndpoint'
'Degraded'
'Disabled'
'Inactive'
'Online'
'Stopped'
endpointStatus The status of the endpoint. If the endpoint is Enabled, it is probed for endpoint health and is included in the traffic routing method. 'Disabled'
'Enabled'
geoMapping The list of countries/regions mapped to this endpoint when using the ‘Geographic’ traffic routing method. Please consult Traffic Manager Geographic documentation for a full list of accepted values. string[]
minChildEndpoints The minimum number of endpoints that must be available in the child profile in order for the parent profile to be considered available. Only applicable to endpoint of type 'NestedEndpoints'. int
priority The priority of this endpoint when using the ‘Priority’ traffic routing method. Possible values are from 1 to 1000, lower values represent higher priority. This is an optional parameter. If specified, it must be specified on all endpoints, and no two endpoints can share the same priority value. int
target The fully-qualified DNS name of the endpoint. Traffic Manager returns this value in DNS responses to direct traffic to this endpoint. string
targetResourceId The Azure Resource URI of the of the endpoint. Not applicable to endpoints of type 'ExternalEndpoints'. string
weight The weight of this endpoint when using the 'Weighted' traffic routing method. Possible values are from 1 to 1000. int

Microsoft.Network/trafficmanagerprofiles

Name Description Value
apiVersion The api version '2017-05-01'
location The Azure Region where the resource lives string
name The resource name string (required)
properties The properties of the Traffic Manager profile. ProfileProperties
tags Resource tags Dictionary of tag names and values. See Tags in templates
type The resource type 'Microsoft.Network/trafficmanagerprofiles'

MonitorConfig

Name Description Value
intervalInSeconds The monitor interval for endpoints in this profile. This is the interval at which Traffic Manager will check the health of each endpoint in this profile. int
path The path relative to the endpoint domain name used to probe for endpoint health. string
port The TCP port used to probe for endpoint health. int
profileMonitorStatus The profile-level monitoring status of the Traffic Manager profile. 'CheckingEndpoints'
'Degraded'
'Disabled'
'Inactive'
'Online'
protocol The protocol (HTTP, HTTPS or TCP) used to probe for endpoint health. 'HTTP'
'HTTPS'
'TCP'
timeoutInSeconds The monitor timeout for endpoints in this profile. This is the time that Traffic Manager allows endpoints in this profile to response to the health check. int
toleratedNumberOfFailures The number of consecutive failed health check that Traffic Manager tolerates before declaring an endpoint in this profile Degraded after the next failed health check. int

ProfileProperties

Name Description Value
dnsConfig The DNS settings of the Traffic Manager profile. DnsConfig
endpoints The list of endpoints in the Traffic Manager profile. Endpoint[]
monitorConfig The endpoint monitoring settings of the Traffic Manager profile. MonitorConfig
profileStatus The status of the Traffic Manager profile. 'Disabled'
'Enabled'
trafficRoutingMethod The traffic routing method of the Traffic Manager profile. 'Geographic'
'Performance'
'Priority'
'Weighted'

TrackedResourceTags

Name Description Value

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Azure Traffic Manager + Application Gateways Demo Setup

Deploy to Azure
This template allows you to quickly deploy Azure Traffic Manager on top of Application Gateways demo to test traffic distribution between different regions.
Azure Traffic Manager Demo Setup

Deploy to Azure
This template allows you to quickly deploy Azure Traffic Manager demo to test traffic distribution between different regions.
Azure Traffic Manager external endpoint example

Deploy to Azure
This template shows how to create an Azure Traffic Manager profile using external endpoints.
Azure Traffic Manager multi-value routing

Deploy to Azure
This template shows how to create an Azure Traffic Manager profile using nested endpoints with min-child and multi-value routing.
Azure Traffic Manager VM example

Deploy to Azure
This template shows how to create an Azure Traffic Manager profile load-balancing across multiple virtual machines.
Azure Traffic Manager VM example with Availability Zones

Deploy to Azure
This template shows how to create an Azure Traffic Manager profile load-balancing across multiple virtual machines placed in Availability Zones.
Azure Traffic Manager web app example

Deploy to Azure
This template shows how to create an Azure Traffic Manager profile for an App Service.
Multi tier traffic manager, L4 ILB, L7 AppGateway

Deploy to Azure
This template deploys a Virtual Network, segregates the network through subnets, deploys VMs and configures load balancing

Terraform (AzAPI provider) resource definition

The trafficmanagerprofiles resource type can be deployed with operations that target:

  • Resource groups

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.Network/trafficmanagerprofiles resource, add the following Terraform to your template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Network/trafficmanagerprofiles@2017-05-01"
  name = "string"
  location = "string"
  body = jsonencode({
    properties = {
      dnsConfig = {
        relativeName = "string"
        ttl = int
      }
      endpoints = [
        {
          properties = {
            endpointLocation = "string"
            endpointMonitorStatus = "string"
            endpointStatus = "string"
            geoMapping = [
              "string"
            ]
            minChildEndpoints = int
            priority = int
            target = "string"
            targetResourceId = "string"
            weight = int
          }
        }
      ]
      monitorConfig = {
        intervalInSeconds = int
        path = "string"
        port = int
        profileMonitorStatus = "string"
        protocol = "string"
        timeoutInSeconds = int
        toleratedNumberOfFailures = int
      }
      profileStatus = "string"
      trafficRoutingMethod = "string"
    }
  })
  tags = {
    {customized property} = "string"
  }
}

Property values

DnsConfig

Name Description Value
relativeName The relative DNS name provided by this Traffic Manager profile. This value is combined with the DNS domain name used by Azure Traffic Manager to form the fully-qualified domain name (FQDN) of the profile. string
ttl The DNS Time-To-Live (TTL), in seconds. This informs the local DNS resolvers and DNS clients how long to cache DNS responses provided by this Traffic Manager profile. int

Endpoint

Name Description Value
properties The properties of the Traffic Manager endpoint. EndpointProperties

EndpointProperties

Name Description Value
endpointLocation Specifies the location of the external or nested endpoints when using the ‘Performance’ traffic routing method. string
endpointMonitorStatus The monitoring status of the endpoint. 'CheckingEndpoint'
'Degraded'
'Disabled'
'Inactive'
'Online'
'Stopped'
endpointStatus The status of the endpoint. If the endpoint is Enabled, it is probed for endpoint health and is included in the traffic routing method. 'Disabled'
'Enabled'
geoMapping The list of countries/regions mapped to this endpoint when using the ‘Geographic’ traffic routing method. Please consult Traffic Manager Geographic documentation for a full list of accepted values. string[]
minChildEndpoints The minimum number of endpoints that must be available in the child profile in order for the parent profile to be considered available. Only applicable to endpoint of type 'NestedEndpoints'. int
priority The priority of this endpoint when using the ‘Priority’ traffic routing method. Possible values are from 1 to 1000, lower values represent higher priority. This is an optional parameter. If specified, it must be specified on all endpoints, and no two endpoints can share the same priority value. int
target The fully-qualified DNS name of the endpoint. Traffic Manager returns this value in DNS responses to direct traffic to this endpoint. string
targetResourceId The Azure Resource URI of the of the endpoint. Not applicable to endpoints of type 'ExternalEndpoints'. string
weight The weight of this endpoint when using the 'Weighted' traffic routing method. Possible values are from 1 to 1000. int

Microsoft.Network/trafficmanagerprofiles

Name Description Value
location The Azure Region where the resource lives string
name The resource name string (required)
properties The properties of the Traffic Manager profile. ProfileProperties
tags Resource tags Dictionary of tag names and values.
type The resource type "Microsoft.Network/trafficmanagerprofiles@2017-05-01"

MonitorConfig

Name Description Value
intervalInSeconds The monitor interval for endpoints in this profile. This is the interval at which Traffic Manager will check the health of each endpoint in this profile. int
path The path relative to the endpoint domain name used to probe for endpoint health. string
port The TCP port used to probe for endpoint health. int
profileMonitorStatus The profile-level monitoring status of the Traffic Manager profile. 'CheckingEndpoints'
'Degraded'
'Disabled'
'Inactive'
'Online'
protocol The protocol (HTTP, HTTPS or TCP) used to probe for endpoint health. 'HTTP'
'HTTPS'
'TCP'
timeoutInSeconds The monitor timeout for endpoints in this profile. This is the time that Traffic Manager allows endpoints in this profile to response to the health check. int
toleratedNumberOfFailures The number of consecutive failed health check that Traffic Manager tolerates before declaring an endpoint in this profile Degraded after the next failed health check. int

ProfileProperties

Name Description Value
dnsConfig The DNS settings of the Traffic Manager profile. DnsConfig
endpoints The list of endpoints in the Traffic Manager profile. Endpoint[]
monitorConfig The endpoint monitoring settings of the Traffic Manager profile. MonitorConfig
profileStatus The status of the Traffic Manager profile. 'Disabled'
'Enabled'
trafficRoutingMethod The traffic routing method of the Traffic Manager profile. 'Geographic'
'Performance'
'Priority'
'Weighted'

TrackedResourceTags

Name Description Value