Microsoft.Network trafficmanagerprofiles 2018-04-01
Bicep resource definition
The trafficmanagerprofiles resource type can be deployed with operations that target:
- Resource groups - See resource group deployment commands
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@2018-04-01' = {
location: 'string'
name: 'string'
properties: {
dnsConfig: {
relativeName: 'string'
ttl: int
}
endpoints: [
{
id: 'string'
name: 'string'
properties: {
customHeaders: [
{
name: 'string'
value: 'string'
}
]
endpointLocation: 'string'
endpointMonitorStatus: 'string'
endpointStatus: 'string'
geoMapping: [
'string'
]
minChildEndpoints: int
priority: int
subnets: [
{
first: 'string'
last: 'string'
scope: int
}
]
target: 'string'
targetResourceId: 'string'
weight: int
}
type: 'string'
}
]
maxReturn: int
monitorConfig: {
customHeaders: [
{
name: 'string'
value: 'string'
}
]
expectedStatusCodeRanges: [
{
max: int
min: int
}
]
intervalInSeconds: int
path: 'string'
port: int
profileMonitorStatus: 'string'
protocol: 'string'
timeoutInSeconds: int
toleratedNumberOfFailures: int
}
profileStatus: 'string'
trafficRoutingMethod: 'string'
trafficViewEnrollmentStatus: '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 |
---|---|---|
id | Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficManagerProfiles/{resourceName} | string |
name | The name of the resource | string |
properties | The properties of the Traffic Manager endpoint. | EndpointProperties |
type | The type of the resource. Ex- Microsoft.Network/trafficManagerProfiles. | string |
EndpointProperties
Name | Description | Value |
---|---|---|
customHeaders | List of custom headers. | EndpointPropertiesCustomHeadersItem[] |
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 |
subnets | The list of subnets, IP addresses, and/or address ranges mapped to this endpoint when using the 'Subnet' traffic routing method. An empty list will match all ranges not covered by other endpoints. | EndpointPropertiesSubnetsItem[] |
target | The fully-qualified DNS name or IP address 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 |
EndpointPropertiesCustomHeadersItem
Name | Description | Value |
---|---|---|
name | Header name. | string |
value | Header value. | string |
EndpointPropertiesSubnetsItem
Name | Description | Value |
---|---|---|
first | First address in the subnet. | string |
last | Last address in the subnet. | string |
scope | Block size (number of leading bits in the subnet mask). | 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 |
---|---|---|
customHeaders | List of custom headers. | MonitorConfigCustomHeadersItem[] |
expectedStatusCodeRanges | List of expected status code ranges. | MonitorConfigExpectedStatusCodeRangesItem[] |
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 |
MonitorConfigCustomHeadersItem
Name | Description | Value |
---|---|---|
name | Header name. | string |
value | Header value. | string |
MonitorConfigExpectedStatusCodeRangesItem
Name | Description | Value |
---|---|---|
max | Max status code. | int |
min | Min status code. | 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[] |
maxReturn | Maximum number of endpoints to be returned for MultiValue routing type. | int |
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' 'MultiValue' 'Performance' 'Priority' 'Subnet' 'Weighted' |
trafficViewEnrollmentStatus | Indicates whether Traffic View is 'Enabled' or 'Disabled' for the Traffic Manager profile. Null, indicates 'Disabled'. Enabling this feature will increase the cost of the Traffic Manage profile. | 'Disabled' 'Enabled' |
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:
- Resource groups - See resource group deployment commands
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": "2018-04-01",
"name": "string",
"location": "string",
"properties": {
"dnsConfig": {
"relativeName": "string",
"ttl": "int"
},
"endpoints": [
{
"id": "string",
"name": "string",
"properties": {
"customHeaders": [
{
"name": "string",
"value": "string"
}
],
"endpointLocation": "string",
"endpointMonitorStatus": "string",
"endpointStatus": "string",
"geoMapping": [ "string" ],
"minChildEndpoints": "int",
"priority": "int",
"subnets": [
{
"first": "string",
"last": "string",
"scope": "int"
}
],
"target": "string",
"targetResourceId": "string",
"weight": "int"
},
"type": "string"
}
],
"maxReturn": "int",
"monitorConfig": {
"customHeaders": [
{
"name": "string",
"value": "string"
}
],
"expectedStatusCodeRanges": [
{
"max": "int",
"min": "int"
}
],
"intervalInSeconds": "int",
"path": "string",
"port": "int",
"profileMonitorStatus": "string",
"protocol": "string",
"timeoutInSeconds": "int",
"toleratedNumberOfFailures": "int"
},
"profileStatus": "string",
"trafficRoutingMethod": "string",
"trafficViewEnrollmentStatus": "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 |
---|---|---|
id | Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficManagerProfiles/{resourceName} | string |
name | The name of the resource | string |
properties | The properties of the Traffic Manager endpoint. | EndpointProperties |
type | The type of the resource. Ex- Microsoft.Network/trafficManagerProfiles. | string |
EndpointProperties
Name | Description | Value |
---|---|---|
customHeaders | List of custom headers. | EndpointPropertiesCustomHeadersItem[] |
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 |
subnets | The list of subnets, IP addresses, and/or address ranges mapped to this endpoint when using the 'Subnet' traffic routing method. An empty list will match all ranges not covered by other endpoints. | EndpointPropertiesSubnetsItem[] |
target | The fully-qualified DNS name or IP address 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 |
EndpointPropertiesCustomHeadersItem
Name | Description | Value |
---|---|---|
name | Header name. | string |
value | Header value. | string |
EndpointPropertiesSubnetsItem
Name | Description | Value |
---|---|---|
first | First address in the subnet. | string |
last | Last address in the subnet. | string |
scope | Block size (number of leading bits in the subnet mask). | int |
Microsoft.Network/trafficmanagerprofiles
Name | Description | Value |
---|---|---|
apiVersion | The api version | '2018-04-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 |
---|---|---|
customHeaders | List of custom headers. | MonitorConfigCustomHeadersItem[] |
expectedStatusCodeRanges | List of expected status code ranges. | MonitorConfigExpectedStatusCodeRangesItem[] |
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 |
MonitorConfigCustomHeadersItem
Name | Description | Value |
---|---|---|
name | Header name. | string |
value | Header value. | string |
MonitorConfigExpectedStatusCodeRangesItem
Name | Description | Value |
---|---|---|
max | Max status code. | int |
min | Min status code. | 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[] |
maxReturn | Maximum number of endpoints to be returned for MultiValue routing type. | int |
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' 'MultiValue' 'Performance' 'Priority' 'Subnet' 'Weighted' |
trafficViewEnrollmentStatus | Indicates whether Traffic View is 'Enabled' or 'Disabled' for the Traffic Manager profile. Null, indicates 'Disabled'. Enabling this feature will increase the cost of the Traffic Manage profile. | 'Disabled' 'Enabled' |
TrackedResourceTags
Name | Description | Value |
---|
Quickstart templates
The following quickstart templates deploy this resource type.
Template | Description |
---|---|
Azure Traffic Manager + Application Gateways Demo Setup |
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 |
This template allows you to quickly deploy Azure Traffic Manager demo to test traffic distribution between different regions. |
Azure Traffic Manager external endpoint example |
This template shows how to create an Azure Traffic Manager profile using external endpoints. |
Azure Traffic Manager multi-value routing |
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 |
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 |
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 |
This template shows how to create an Azure Traffic Manager profile for an App Service. |
Multi tier traffic manager, L4 ILB, L7 AppGateway |
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@2018-04-01"
name = "string"
location = "string"
body = jsonencode({
properties = {
dnsConfig = {
relativeName = "string"
ttl = int
}
endpoints = [
{
id = "string"
name = "string"
properties = {
customHeaders = [
{
name = "string"
value = "string"
}
]
endpointLocation = "string"
endpointMonitorStatus = "string"
endpointStatus = "string"
geoMapping = [
"string"
]
minChildEndpoints = int
priority = int
subnets = [
{
first = "string"
last = "string"
scope = int
}
]
target = "string"
targetResourceId = "string"
weight = int
}
type = "string"
}
]
maxReturn = int
monitorConfig = {
customHeaders = [
{
name = "string"
value = "string"
}
]
expectedStatusCodeRanges = [
{
max = int
min = int
}
]
intervalInSeconds = int
path = "string"
port = int
profileMonitorStatus = "string"
protocol = "string"
timeoutInSeconds = int
toleratedNumberOfFailures = int
}
profileStatus = "string"
trafficRoutingMethod = "string"
trafficViewEnrollmentStatus = "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 |
---|---|---|
id | Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficManagerProfiles/{resourceName} | string |
name | The name of the resource | string |
properties | The properties of the Traffic Manager endpoint. | EndpointProperties |
type | The type of the resource. Ex- Microsoft.Network/trafficManagerProfiles. | string |
EndpointProperties
Name | Description | Value |
---|---|---|
customHeaders | List of custom headers. | EndpointPropertiesCustomHeadersItem[] |
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 |
subnets | The list of subnets, IP addresses, and/or address ranges mapped to this endpoint when using the 'Subnet' traffic routing method. An empty list will match all ranges not covered by other endpoints. | EndpointPropertiesSubnetsItem[] |
target | The fully-qualified DNS name or IP address 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 |
EndpointPropertiesCustomHeadersItem
Name | Description | Value |
---|---|---|
name | Header name. | string |
value | Header value. | string |
EndpointPropertiesSubnetsItem
Name | Description | Value |
---|---|---|
first | First address in the subnet. | string |
last | Last address in the subnet. | string |
scope | Block size (number of leading bits in the subnet mask). | 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@2018-04-01" |
MonitorConfig
Name | Description | Value |
---|---|---|
customHeaders | List of custom headers. | MonitorConfigCustomHeadersItem[] |
expectedStatusCodeRanges | List of expected status code ranges. | MonitorConfigExpectedStatusCodeRangesItem[] |
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 |
MonitorConfigCustomHeadersItem
Name | Description | Value |
---|---|---|
name | Header name. | string |
value | Header value. | string |
MonitorConfigExpectedStatusCodeRangesItem
Name | Description | Value |
---|---|---|
max | Max status code. | int |
min | Min status code. | 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[] |
maxReturn | Maximum number of endpoints to be returned for MultiValue routing type. | int |
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' 'MultiValue' 'Performance' 'Priority' 'Subnet' 'Weighted' |
trafficViewEnrollmentStatus | Indicates whether Traffic View is 'Enabled' or 'Disabled' for the Traffic Manager profile. Null, indicates 'Disabled'. Enabling this feature will increase the cost of the Traffic Manage profile. | 'Disabled' 'Enabled' |
TrackedResourceTags
Name | Description | Value |
---|