azure logo
Azure Classic v5.43.0, May 6 23

azure.network.TrafficManagerProfile

Explore with Pulumi AI

Manages a Traffic Manager Profile to which multiple endpoints can be attached.

Example Usage

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
using Random = Pulumi.Random;

return await Deployment.RunAsync(() => 
{
    var server = new Random.RandomId("server", new()
    {
        Keepers = 
        {
            { "azi_id", 1 },
        },
        ByteLength = 8,
    });

    var exampleResourceGroup = new Azure.Core.ResourceGroup("exampleResourceGroup", new()
    {
        Location = "West Europe",
    });

    var exampleTrafficManagerProfile = new Azure.Network.TrafficManagerProfile("exampleTrafficManagerProfile", new()
    {
        ResourceGroupName = exampleResourceGroup.Name,
        TrafficRoutingMethod = "Weighted",
        DnsConfig = new Azure.Network.Inputs.TrafficManagerProfileDnsConfigArgs
        {
            RelativeName = server.Hex,
            Ttl = 100,
        },
        MonitorConfig = new Azure.Network.Inputs.TrafficManagerProfileMonitorConfigArgs
        {
            Protocol = "HTTP",
            Port = 80,
            Path = "/",
            IntervalInSeconds = 30,
            TimeoutInSeconds = 9,
            ToleratedNumberOfFailures = 3,
        },
        Tags = 
        {
            { "environment", "Production" },
        },
    });

});
package main

import (
	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
	"github.com/pulumi/pulumi-random/sdk/v4/go/random"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		server, err := random.NewRandomId(ctx, "server", &random.RandomIdArgs{
			Keepers: pulumi.AnyMap{
				"azi_id": pulumi.Any(1),
			},
			ByteLength: pulumi.Int(8),
		})
		if err != nil {
			return err
		}
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		_, err = network.NewTrafficManagerProfile(ctx, "exampleTrafficManagerProfile", &network.TrafficManagerProfileArgs{
			ResourceGroupName:    exampleResourceGroup.Name,
			TrafficRoutingMethod: pulumi.String("Weighted"),
			DnsConfig: &network.TrafficManagerProfileDnsConfigArgs{
				RelativeName: server.Hex,
				Ttl:          pulumi.Int(100),
			},
			MonitorConfig: &network.TrafficManagerProfileMonitorConfigArgs{
				Protocol:                  pulumi.String("HTTP"),
				Port:                      pulumi.Int(80),
				Path:                      pulumi.String("/"),
				IntervalInSeconds:         pulumi.Int(30),
				TimeoutInSeconds:          pulumi.Int(9),
				ToleratedNumberOfFailures: pulumi.Int(3),
			},
			Tags: pulumi.StringMap{
				"environment": pulumi.String("Production"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.random.RandomId;
import com.pulumi.random.RandomIdArgs;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.network.TrafficManagerProfile;
import com.pulumi.azure.network.TrafficManagerProfileArgs;
import com.pulumi.azure.network.inputs.TrafficManagerProfileDnsConfigArgs;
import com.pulumi.azure.network.inputs.TrafficManagerProfileMonitorConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var server = new RandomId("server", RandomIdArgs.builder()        
            .keepers(Map.of("azi_id", 1))
            .byteLength(8)
            .build());

        var exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()        
            .location("West Europe")
            .build());

        var exampleTrafficManagerProfile = new TrafficManagerProfile("exampleTrafficManagerProfile", TrafficManagerProfileArgs.builder()        
            .resourceGroupName(exampleResourceGroup.name())
            .trafficRoutingMethod("Weighted")
            .dnsConfig(TrafficManagerProfileDnsConfigArgs.builder()
                .relativeName(server.hex())
                .ttl(100)
                .build())
            .monitorConfig(TrafficManagerProfileMonitorConfigArgs.builder()
                .protocol("HTTP")
                .port(80)
                .path("/")
                .intervalInSeconds(30)
                .timeoutInSeconds(9)
                .toleratedNumberOfFailures(3)
                .build())
            .tags(Map.of("environment", "Production"))
            .build());

    }
}
import pulumi
import pulumi_azure as azure
import pulumi_random as random

server = random.RandomId("server",
    keepers={
        "azi_id": 1,
    },
    byte_length=8)
example_resource_group = azure.core.ResourceGroup("exampleResourceGroup", location="West Europe")
example_traffic_manager_profile = azure.network.TrafficManagerProfile("exampleTrafficManagerProfile",
    resource_group_name=example_resource_group.name,
    traffic_routing_method="Weighted",
    dns_config=azure.network.TrafficManagerProfileDnsConfigArgs(
        relative_name=server.hex,
        ttl=100,
    ),
    monitor_config=azure.network.TrafficManagerProfileMonitorConfigArgs(
        protocol="HTTP",
        port=80,
        path="/",
        interval_in_seconds=30,
        timeout_in_seconds=9,
        tolerated_number_of_failures=3,
    ),
    tags={
        "environment": "Production",
    })
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
import * as random from "@pulumi/random";

const server = new random.RandomId("server", {
    keepers: {
        azi_id: 1,
    },
    byteLength: 8,
});
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleTrafficManagerProfile = new azure.network.TrafficManagerProfile("exampleTrafficManagerProfile", {
    resourceGroupName: exampleResourceGroup.name,
    trafficRoutingMethod: "Weighted",
    dnsConfig: {
        relativeName: server.hex,
        ttl: 100,
    },
    monitorConfig: {
        protocol: "HTTP",
        port: 80,
        path: "/",
        intervalInSeconds: 30,
        timeoutInSeconds: 9,
        toleratedNumberOfFailures: 3,
    },
    tags: {
        environment: "Production",
    },
});
resources:
  server:
    type: random:RandomId
    properties:
      keepers:
        azi_id: 1
      byteLength: 8
  exampleResourceGroup:
    type: azure:core:ResourceGroup
    properties:
      location: West Europe
  exampleTrafficManagerProfile:
    type: azure:network:TrafficManagerProfile
    properties:
      resourceGroupName: ${exampleResourceGroup.name}
      trafficRoutingMethod: Weighted
      dnsConfig:
        relativeName: ${server.hex}
        ttl: 100
      monitorConfig:
        protocol: HTTP
        port: 80
        path: /
        intervalInSeconds: 30
        timeoutInSeconds: 9
        toleratedNumberOfFailures: 3
      tags:
        environment: Production

Create TrafficManagerProfile Resource

new TrafficManagerProfile(name: string, args: TrafficManagerProfileArgs, opts?: CustomResourceOptions);
@overload
def TrafficManagerProfile(resource_name: str,
                          opts: Optional[ResourceOptions] = None,
                          dns_config: Optional[TrafficManagerProfileDnsConfigArgs] = None,
                          max_return: Optional[int] = None,
                          monitor_config: Optional[TrafficManagerProfileMonitorConfigArgs] = None,
                          name: Optional[str] = None,
                          profile_status: Optional[str] = None,
                          resource_group_name: Optional[str] = None,
                          tags: Optional[Mapping[str, str]] = None,
                          traffic_routing_method: Optional[str] = None,
                          traffic_view_enabled: Optional[bool] = None)
@overload
def TrafficManagerProfile(resource_name: str,
                          args: TrafficManagerProfileArgs,
                          opts: Optional[ResourceOptions] = None)
func NewTrafficManagerProfile(ctx *Context, name string, args TrafficManagerProfileArgs, opts ...ResourceOption) (*TrafficManagerProfile, error)
public TrafficManagerProfile(string name, TrafficManagerProfileArgs args, CustomResourceOptions? opts = null)
public TrafficManagerProfile(String name, TrafficManagerProfileArgs args)
public TrafficManagerProfile(String name, TrafficManagerProfileArgs args, CustomResourceOptions options)
type: azure:network:TrafficManagerProfile
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

name string
The unique name of the resource.
args TrafficManagerProfileArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
args TrafficManagerProfileArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args TrafficManagerProfileArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args TrafficManagerProfileArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name String
The unique name of the resource.
args TrafficManagerProfileArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

TrafficManagerProfile Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

The TrafficManagerProfile resource accepts the following input properties:

DnsConfig TrafficManagerProfileDnsConfigArgs

This block specifies the DNS configuration of the Profile, it supports the fields documented below.

MonitorConfig TrafficManagerProfileMonitorConfigArgs

This block specifies the Endpoint monitoring configuration for the Profile, it supports the fields documented below.

ResourceGroupName string

The name of the resource group in which to create the Traffic Manager profile. Changing this forces a new resource to be created.

TrafficRoutingMethod string

Specifies the algorithm used to route traffic. Possible values are Geographic, Weighted, Performance, Priority, Subnet and MultiValue.

MaxReturn int

The amount of endpoints to return for DNS queries to this Profile. Possible values range from 1 to 8.

Name string

The name of the Traffic Manager profile. Changing this forces a new resource to be created.

ProfileStatus string

The status of the profile, can be set to either Enabled or Disabled. Defaults to Enabled.

Tags Dictionary<string, string>

A mapping of tags to assign to the resource.

TrafficViewEnabled bool

Indicates whether Traffic View is enabled for the Traffic Manager profile.

DnsConfig TrafficManagerProfileDnsConfigArgs

This block specifies the DNS configuration of the Profile, it supports the fields documented below.

MonitorConfig TrafficManagerProfileMonitorConfigArgs

This block specifies the Endpoint monitoring configuration for the Profile, it supports the fields documented below.

ResourceGroupName string

The name of the resource group in which to create the Traffic Manager profile. Changing this forces a new resource to be created.

TrafficRoutingMethod string

Specifies the algorithm used to route traffic. Possible values are Geographic, Weighted, Performance, Priority, Subnet and MultiValue.

MaxReturn int

The amount of endpoints to return for DNS queries to this Profile. Possible values range from 1 to 8.

Name string

The name of the Traffic Manager profile. Changing this forces a new resource to be created.

ProfileStatus string

The status of the profile, can be set to either Enabled or Disabled. Defaults to Enabled.

Tags map[string]string

A mapping of tags to assign to the resource.

TrafficViewEnabled bool

Indicates whether Traffic View is enabled for the Traffic Manager profile.

dnsConfig TrafficManagerProfileDnsConfigArgs

This block specifies the DNS configuration of the Profile, it supports the fields documented below.

monitorConfig TrafficManagerProfileMonitorConfigArgs

This block specifies the Endpoint monitoring configuration for the Profile, it supports the fields documented below.

resourceGroupName String

The name of the resource group in which to create the Traffic Manager profile. Changing this forces a new resource to be created.

trafficRoutingMethod String

Specifies the algorithm used to route traffic. Possible values are Geographic, Weighted, Performance, Priority, Subnet and MultiValue.

maxReturn Integer

The amount of endpoints to return for DNS queries to this Profile. Possible values range from 1 to 8.

name String

The name of the Traffic Manager profile. Changing this forces a new resource to be created.

profileStatus String

The status of the profile, can be set to either Enabled or Disabled. Defaults to Enabled.

tags Map<String,String>

A mapping of tags to assign to the resource.

trafficViewEnabled Boolean

Indicates whether Traffic View is enabled for the Traffic Manager profile.

dnsConfig TrafficManagerProfileDnsConfigArgs

This block specifies the DNS configuration of the Profile, it supports the fields documented below.

monitorConfig TrafficManagerProfileMonitorConfigArgs

This block specifies the Endpoint monitoring configuration for the Profile, it supports the fields documented below.

resourceGroupName string

The name of the resource group in which to create the Traffic Manager profile. Changing this forces a new resource to be created.

trafficRoutingMethod string

Specifies the algorithm used to route traffic. Possible values are Geographic, Weighted, Performance, Priority, Subnet and MultiValue.

maxReturn number

The amount of endpoints to return for DNS queries to this Profile. Possible values range from 1 to 8.

name string

The name of the Traffic Manager profile. Changing this forces a new resource to be created.

profileStatus string

The status of the profile, can be set to either Enabled or Disabled. Defaults to Enabled.

tags {[key: string]: string}

A mapping of tags to assign to the resource.

trafficViewEnabled boolean

Indicates whether Traffic View is enabled for the Traffic Manager profile.

dns_config TrafficManagerProfileDnsConfigArgs

This block specifies the DNS configuration of the Profile, it supports the fields documented below.

monitor_config TrafficManagerProfileMonitorConfigArgs

This block specifies the Endpoint monitoring configuration for the Profile, it supports the fields documented below.

resource_group_name str

The name of the resource group in which to create the Traffic Manager profile. Changing this forces a new resource to be created.

traffic_routing_method str

Specifies the algorithm used to route traffic. Possible values are Geographic, Weighted, Performance, Priority, Subnet and MultiValue.

max_return int

The amount of endpoints to return for DNS queries to this Profile. Possible values range from 1 to 8.

name str

The name of the Traffic Manager profile. Changing this forces a new resource to be created.

profile_status str

The status of the profile, can be set to either Enabled or Disabled. Defaults to Enabled.

tags Mapping[str, str]

A mapping of tags to assign to the resource.

traffic_view_enabled bool

Indicates whether Traffic View is enabled for the Traffic Manager profile.

dnsConfig Property Map

This block specifies the DNS configuration of the Profile, it supports the fields documented below.

monitorConfig Property Map

This block specifies the Endpoint monitoring configuration for the Profile, it supports the fields documented below.

resourceGroupName String

The name of the resource group in which to create the Traffic Manager profile. Changing this forces a new resource to be created.

trafficRoutingMethod String

Specifies the algorithm used to route traffic. Possible values are Geographic, Weighted, Performance, Priority, Subnet and MultiValue.

maxReturn Number

The amount of endpoints to return for DNS queries to this Profile. Possible values range from 1 to 8.

name String

The name of the Traffic Manager profile. Changing this forces a new resource to be created.

profileStatus String

The status of the profile, can be set to either Enabled or Disabled. Defaults to Enabled.

tags Map<String>

A mapping of tags to assign to the resource.

trafficViewEnabled Boolean

Indicates whether Traffic View is enabled for the Traffic Manager profile.

Outputs

All input properties are implicitly available as output properties. Additionally, the TrafficManagerProfile resource produces the following output properties:

Fqdn string

The FQDN of the created Profile.

Id string

The provider-assigned unique ID for this managed resource.

Fqdn string

The FQDN of the created Profile.

Id string

The provider-assigned unique ID for this managed resource.

fqdn String

The FQDN of the created Profile.

id String

The provider-assigned unique ID for this managed resource.

fqdn string

The FQDN of the created Profile.

id string

The provider-assigned unique ID for this managed resource.

fqdn str

The FQDN of the created Profile.

id str

The provider-assigned unique ID for this managed resource.

fqdn String

The FQDN of the created Profile.

id String

The provider-assigned unique ID for this managed resource.

Look up Existing TrafficManagerProfile Resource

Get an existing TrafficManagerProfile resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: TrafficManagerProfileState, opts?: CustomResourceOptions): TrafficManagerProfile
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        dns_config: Optional[TrafficManagerProfileDnsConfigArgs] = None,
        fqdn: Optional[str] = None,
        max_return: Optional[int] = None,
        monitor_config: Optional[TrafficManagerProfileMonitorConfigArgs] = None,
        name: Optional[str] = None,
        profile_status: Optional[str] = None,
        resource_group_name: Optional[str] = None,
        tags: Optional[Mapping[str, str]] = None,
        traffic_routing_method: Optional[str] = None,
        traffic_view_enabled: Optional[bool] = None) -> TrafficManagerProfile
func GetTrafficManagerProfile(ctx *Context, name string, id IDInput, state *TrafficManagerProfileState, opts ...ResourceOption) (*TrafficManagerProfile, error)
public static TrafficManagerProfile Get(string name, Input<string> id, TrafficManagerProfileState? state, CustomResourceOptions? opts = null)
public static TrafficManagerProfile get(String name, Output<String> id, TrafficManagerProfileState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
DnsConfig TrafficManagerProfileDnsConfigArgs

This block specifies the DNS configuration of the Profile, it supports the fields documented below.

Fqdn string

The FQDN of the created Profile.

MaxReturn int

The amount of endpoints to return for DNS queries to this Profile. Possible values range from 1 to 8.

MonitorConfig TrafficManagerProfileMonitorConfigArgs

This block specifies the Endpoint monitoring configuration for the Profile, it supports the fields documented below.

Name string

The name of the Traffic Manager profile. Changing this forces a new resource to be created.

ProfileStatus string

The status of the profile, can be set to either Enabled or Disabled. Defaults to Enabled.

ResourceGroupName string

The name of the resource group in which to create the Traffic Manager profile. Changing this forces a new resource to be created.

Tags Dictionary<string, string>

A mapping of tags to assign to the resource.

TrafficRoutingMethod string

Specifies the algorithm used to route traffic. Possible values are Geographic, Weighted, Performance, Priority, Subnet and MultiValue.

TrafficViewEnabled bool

Indicates whether Traffic View is enabled for the Traffic Manager profile.

DnsConfig TrafficManagerProfileDnsConfigArgs

This block specifies the DNS configuration of the Profile, it supports the fields documented below.

Fqdn string

The FQDN of the created Profile.

MaxReturn int

The amount of endpoints to return for DNS queries to this Profile. Possible values range from 1 to 8.

MonitorConfig TrafficManagerProfileMonitorConfigArgs

This block specifies the Endpoint monitoring configuration for the Profile, it supports the fields documented below.

Name string

The name of the Traffic Manager profile. Changing this forces a new resource to be created.

ProfileStatus string

The status of the profile, can be set to either Enabled or Disabled. Defaults to Enabled.

ResourceGroupName string

The name of the resource group in which to create the Traffic Manager profile. Changing this forces a new resource to be created.

Tags map[string]string

A mapping of tags to assign to the resource.

TrafficRoutingMethod string

Specifies the algorithm used to route traffic. Possible values are Geographic, Weighted, Performance, Priority, Subnet and MultiValue.

TrafficViewEnabled bool

Indicates whether Traffic View is enabled for the Traffic Manager profile.

dnsConfig TrafficManagerProfileDnsConfigArgs

This block specifies the DNS configuration of the Profile, it supports the fields documented below.

fqdn String

The FQDN of the created Profile.

maxReturn Integer

The amount of endpoints to return for DNS queries to this Profile. Possible values range from 1 to 8.

monitorConfig TrafficManagerProfileMonitorConfigArgs

This block specifies the Endpoint monitoring configuration for the Profile, it supports the fields documented below.

name String

The name of the Traffic Manager profile. Changing this forces a new resource to be created.

profileStatus String

The status of the profile, can be set to either Enabled or Disabled. Defaults to Enabled.

resourceGroupName String

The name of the resource group in which to create the Traffic Manager profile. Changing this forces a new resource to be created.

tags Map<String,String>

A mapping of tags to assign to the resource.

trafficRoutingMethod String

Specifies the algorithm used to route traffic. Possible values are Geographic, Weighted, Performance, Priority, Subnet and MultiValue.

trafficViewEnabled Boolean

Indicates whether Traffic View is enabled for the Traffic Manager profile.

dnsConfig TrafficManagerProfileDnsConfigArgs

This block specifies the DNS configuration of the Profile, it supports the fields documented below.

fqdn string

The FQDN of the created Profile.

maxReturn number

The amount of endpoints to return for DNS queries to this Profile. Possible values range from 1 to 8.

monitorConfig TrafficManagerProfileMonitorConfigArgs

This block specifies the Endpoint monitoring configuration for the Profile, it supports the fields documented below.

name string

The name of the Traffic Manager profile. Changing this forces a new resource to be created.

profileStatus string

The status of the profile, can be set to either Enabled or Disabled. Defaults to Enabled.

resourceGroupName string

The name of the resource group in which to create the Traffic Manager profile. Changing this forces a new resource to be created.

tags {[key: string]: string}

A mapping of tags to assign to the resource.

trafficRoutingMethod string

Specifies the algorithm used to route traffic. Possible values are Geographic, Weighted, Performance, Priority, Subnet and MultiValue.

trafficViewEnabled boolean

Indicates whether Traffic View is enabled for the Traffic Manager profile.

dns_config TrafficManagerProfileDnsConfigArgs

This block specifies the DNS configuration of the Profile, it supports the fields documented below.

fqdn str

The FQDN of the created Profile.

max_return int

The amount of endpoints to return for DNS queries to this Profile. Possible values range from 1 to 8.

monitor_config TrafficManagerProfileMonitorConfigArgs

This block specifies the Endpoint monitoring configuration for the Profile, it supports the fields documented below.

name str

The name of the Traffic Manager profile. Changing this forces a new resource to be created.

profile_status str

The status of the profile, can be set to either Enabled or Disabled. Defaults to Enabled.

resource_group_name str

The name of the resource group in which to create the Traffic Manager profile. Changing this forces a new resource to be created.

tags Mapping[str, str]

A mapping of tags to assign to the resource.

traffic_routing_method str

Specifies the algorithm used to route traffic. Possible values are Geographic, Weighted, Performance, Priority, Subnet and MultiValue.

traffic_view_enabled bool

Indicates whether Traffic View is enabled for the Traffic Manager profile.

dnsConfig Property Map

This block specifies the DNS configuration of the Profile, it supports the fields documented below.

fqdn String

The FQDN of the created Profile.

maxReturn Number

The amount of endpoints to return for DNS queries to this Profile. Possible values range from 1 to 8.

monitorConfig Property Map

This block specifies the Endpoint monitoring configuration for the Profile, it supports the fields documented below.

name String

The name of the Traffic Manager profile. Changing this forces a new resource to be created.

profileStatus String

The status of the profile, can be set to either Enabled or Disabled. Defaults to Enabled.

resourceGroupName String

The name of the resource group in which to create the Traffic Manager profile. Changing this forces a new resource to be created.

tags Map<String>

A mapping of tags to assign to the resource.

trafficRoutingMethod String

Specifies the algorithm used to route traffic. Possible values are Geographic, Weighted, Performance, Priority, Subnet and MultiValue.

trafficViewEnabled Boolean

Indicates whether Traffic View is enabled for the Traffic Manager profile.

Supporting Types

TrafficManagerProfileDnsConfig

RelativeName string

The relative domain name, this is combined with the domain name used by Traffic Manager to form the FQDN which is exported as documented below. Changing this forces a new resource to be created.

Ttl int

The TTL value of the Profile used by Local DNS resolvers and clients.

RelativeName string

The relative domain name, this is combined with the domain name used by Traffic Manager to form the FQDN which is exported as documented below. Changing this forces a new resource to be created.

Ttl int

The TTL value of the Profile used by Local DNS resolvers and clients.

relativeName String

The relative domain name, this is combined with the domain name used by Traffic Manager to form the FQDN which is exported as documented below. Changing this forces a new resource to be created.

ttl Integer

The TTL value of the Profile used by Local DNS resolvers and clients.

relativeName string

The relative domain name, this is combined with the domain name used by Traffic Manager to form the FQDN which is exported as documented below. Changing this forces a new resource to be created.

ttl number

The TTL value of the Profile used by Local DNS resolvers and clients.

relative_name str

The relative domain name, this is combined with the domain name used by Traffic Manager to form the FQDN which is exported as documented below. Changing this forces a new resource to be created.

ttl int

The TTL value of the Profile used by Local DNS resolvers and clients.

relativeName String

The relative domain name, this is combined with the domain name used by Traffic Manager to form the FQDN which is exported as documented below. Changing this forces a new resource to be created.

ttl Number

The TTL value of the Profile used by Local DNS resolvers and clients.

TrafficManagerProfileMonitorConfig

Port int

The port number used by the monitoring checks.

Protocol string

The protocol used by the monitoring checks, supported values are HTTP, HTTPS and TCP.

CustomHeaders List<TrafficManagerProfileMonitorConfigCustomHeader>

One or more custom_header blocks as defined below.

ExpectedStatusCodeRanges List<string>

A list of status code ranges in the format of 100-101.

IntervalInSeconds int

The interval used to check the endpoint health from a Traffic Manager probing agent. You can specify two values here: 30 (normal probing) and 10 (fast probing). The default value is 30.

Path string

The path used by the monitoring checks. Required when protocol is set to HTTP or HTTPS - cannot be set when protocol is set to TCP.

TimeoutInSeconds int

The amount of time the Traffic Manager probing agent should wait before considering that check a failure when a health check probe is sent to the endpoint. If interval_in_seconds is set to 30, then timeout_in_seconds can be between 5 and 10. The default value is 10. If interval_in_seconds is set to 10, then valid values are between 5 and 9 and timeout_in_seconds is required.

ToleratedNumberOfFailures int

The number of failures a Traffic Manager probing agent tolerates before marking that endpoint as unhealthy. Valid values are between 0 and 9. The default value is 3

Port int

The port number used by the monitoring checks.

Protocol string

The protocol used by the monitoring checks, supported values are HTTP, HTTPS and TCP.

CustomHeaders []TrafficManagerProfileMonitorConfigCustomHeader

One or more custom_header blocks as defined below.

ExpectedStatusCodeRanges []string

A list of status code ranges in the format of 100-101.

IntervalInSeconds int

The interval used to check the endpoint health from a Traffic Manager probing agent. You can specify two values here: 30 (normal probing) and 10 (fast probing). The default value is 30.

Path string

The path used by the monitoring checks. Required when protocol is set to HTTP or HTTPS - cannot be set when protocol is set to TCP.

TimeoutInSeconds int

The amount of time the Traffic Manager probing agent should wait before considering that check a failure when a health check probe is sent to the endpoint. If interval_in_seconds is set to 30, then timeout_in_seconds can be between 5 and 10. The default value is 10. If interval_in_seconds is set to 10, then valid values are between 5 and 9 and timeout_in_seconds is required.

ToleratedNumberOfFailures int

The number of failures a Traffic Manager probing agent tolerates before marking that endpoint as unhealthy. Valid values are between 0 and 9. The default value is 3

port Integer

The port number used by the monitoring checks.

protocol String

The protocol used by the monitoring checks, supported values are HTTP, HTTPS and TCP.

customHeaders List<TrafficManagerProfileMonitorConfigCustomHeader>

One or more custom_header blocks as defined below.

expectedStatusCodeRanges List<String>

A list of status code ranges in the format of 100-101.

intervalInSeconds Integer

The interval used to check the endpoint health from a Traffic Manager probing agent. You can specify two values here: 30 (normal probing) and 10 (fast probing). The default value is 30.

path String

The path used by the monitoring checks. Required when protocol is set to HTTP or HTTPS - cannot be set when protocol is set to TCP.

timeoutInSeconds Integer

The amount of time the Traffic Manager probing agent should wait before considering that check a failure when a health check probe is sent to the endpoint. If interval_in_seconds is set to 30, then timeout_in_seconds can be between 5 and 10. The default value is 10. If interval_in_seconds is set to 10, then valid values are between 5 and 9 and timeout_in_seconds is required.

toleratedNumberOfFailures Integer

The number of failures a Traffic Manager probing agent tolerates before marking that endpoint as unhealthy. Valid values are between 0 and 9. The default value is 3

port number

The port number used by the monitoring checks.

protocol string

The protocol used by the monitoring checks, supported values are HTTP, HTTPS and TCP.

customHeaders TrafficManagerProfileMonitorConfigCustomHeader[]

One or more custom_header blocks as defined below.

expectedStatusCodeRanges string[]

A list of status code ranges in the format of 100-101.

intervalInSeconds number

The interval used to check the endpoint health from a Traffic Manager probing agent. You can specify two values here: 30 (normal probing) and 10 (fast probing). The default value is 30.

path string

The path used by the monitoring checks. Required when protocol is set to HTTP or HTTPS - cannot be set when protocol is set to TCP.

timeoutInSeconds number

The amount of time the Traffic Manager probing agent should wait before considering that check a failure when a health check probe is sent to the endpoint. If interval_in_seconds is set to 30, then timeout_in_seconds can be between 5 and 10. The default value is 10. If interval_in_seconds is set to 10, then valid values are between 5 and 9 and timeout_in_seconds is required.

toleratedNumberOfFailures number

The number of failures a Traffic Manager probing agent tolerates before marking that endpoint as unhealthy. Valid values are between 0 and 9. The default value is 3

port int

The port number used by the monitoring checks.

protocol str

The protocol used by the monitoring checks, supported values are HTTP, HTTPS and TCP.

custom_headers Sequence[TrafficManagerProfileMonitorConfigCustomHeader]

One or more custom_header blocks as defined below.

expected_status_code_ranges Sequence[str]

A list of status code ranges in the format of 100-101.

interval_in_seconds int

The interval used to check the endpoint health from a Traffic Manager probing agent. You can specify two values here: 30 (normal probing) and 10 (fast probing). The default value is 30.

path str

The path used by the monitoring checks. Required when protocol is set to HTTP or HTTPS - cannot be set when protocol is set to TCP.

timeout_in_seconds int

The amount of time the Traffic Manager probing agent should wait before considering that check a failure when a health check probe is sent to the endpoint. If interval_in_seconds is set to 30, then timeout_in_seconds can be between 5 and 10. The default value is 10. If interval_in_seconds is set to 10, then valid values are between 5 and 9 and timeout_in_seconds is required.

tolerated_number_of_failures int

The number of failures a Traffic Manager probing agent tolerates before marking that endpoint as unhealthy. Valid values are between 0 and 9. The default value is 3

port Number

The port number used by the monitoring checks.

protocol String

The protocol used by the monitoring checks, supported values are HTTP, HTTPS and TCP.

customHeaders List<Property Map>

One or more custom_header blocks as defined below.

expectedStatusCodeRanges List<String>

A list of status code ranges in the format of 100-101.

intervalInSeconds Number

The interval used to check the endpoint health from a Traffic Manager probing agent. You can specify two values here: 30 (normal probing) and 10 (fast probing). The default value is 30.

path String

The path used by the monitoring checks. Required when protocol is set to HTTP or HTTPS - cannot be set when protocol is set to TCP.

timeoutInSeconds Number

The amount of time the Traffic Manager probing agent should wait before considering that check a failure when a health check probe is sent to the endpoint. If interval_in_seconds is set to 30, then timeout_in_seconds can be between 5 and 10. The default value is 10. If interval_in_seconds is set to 10, then valid values are between 5 and 9 and timeout_in_seconds is required.

toleratedNumberOfFailures Number

The number of failures a Traffic Manager probing agent tolerates before marking that endpoint as unhealthy. Valid values are between 0 and 9. The default value is 3

TrafficManagerProfileMonitorConfigCustomHeader

Name string

The name of the custom header.

Value string

The value of custom header. Applicable for HTTP and HTTPS protocol.

Name string

The name of the custom header.

Value string

The value of custom header. Applicable for HTTP and HTTPS protocol.

name String

The name of the custom header.

value String

The value of custom header. Applicable for HTTP and HTTPS protocol.

name string

The name of the custom header.

value string

The value of custom header. Applicable for HTTP and HTTPS protocol.

name str

The name of the custom header.

value str

The value of custom header. Applicable for HTTP and HTTPS protocol.

name String

The name of the custom header.

value String

The value of custom header. Applicable for HTTP and HTTPS protocol.

Import

Traffic Manager Profiles can be imported using the resource id, e.g.

 $ pulumi import azure:network/trafficManagerProfile:TrafficManagerProfile exampleProfile /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Network/trafficManagerProfiles/mytrafficmanagerprofile1

Package Details

Repository
Azure Classic pulumi/pulumi-azure
License
Apache-2.0
Notes

This Pulumi package is based on the azurerm Terraform Provider.