TrafficManagerNestedEndpointArgs

data class TrafficManagerNestedEndpointArgs(val customHeaders: Output<List<TrafficManagerNestedEndpointCustomHeaderArgs>>? = null, val enabled: Output<Boolean>? = null, val endpointLocation: Output<String>? = null, val geoMappings: Output<List<String>>? = null, val minimumChildEndpoints: Output<Int>? = null, val minimumRequiredChildEndpointsIpv4: Output<Int>? = null, val minimumRequiredChildEndpointsIpv6: Output<Int>? = null, val name: Output<String>? = null, val priority: Output<Int>? = null, val profileId: Output<String>? = null, val subnets: Output<List<TrafficManagerNestedEndpointSubnetArgs>>? = null, val targetResourceId: Output<String>? = null, val weight: Output<Int>? = null) : ConvertibleToJava<TrafficManagerNestedEndpointArgs>

Manages a Nested Endpoint within a Traffic Manager Profile.

Example Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.network.PublicIp;
import com.pulumi.azure.network.PublicIpArgs;
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 com.pulumi.azure.network.TrafficManagerNestedEndpoint;
import com.pulumi.azure.network.TrafficManagerNestedEndpointArgs;
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 exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()
.location("West Europe")
.build());
var examplePublicIp = new PublicIp("examplePublicIp", PublicIpArgs.builder()
.location(exampleResourceGroup.location())
.resourceGroupName(exampleResourceGroup.name())
.allocationMethod("Static")
.domainNameLabel("example-pip")
.build());
var parent = new TrafficManagerProfile("parent", TrafficManagerProfileArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.trafficRoutingMethod("Weighted")
.dnsConfig(TrafficManagerProfileDnsConfigArgs.builder()
.relativeName("parent-profile")
.ttl(100)
.build())
.monitorConfig(TrafficManagerProfileMonitorConfigArgs.builder()
.protocol("HTTP")
.port(80)
.path("/")
.intervalInSeconds(30)
.timeoutInSeconds(9)
.toleratedNumberOfFailures(3)
.build())
.tags(Map.of("environment", "Production"))
.build());
var nested = new TrafficManagerProfile("nested", TrafficManagerProfileArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.trafficRoutingMethod("Priority")
.dnsConfig(TrafficManagerProfileDnsConfigArgs.builder()
.relativeName("nested-profile")
.ttl(30)
.build())
.monitorConfig(TrafficManagerProfileMonitorConfigArgs.builder()
.protocol("HTTP")
.port(443)
.path("/")
.build())
.build());
var exampleTrafficManagerNestedEndpoint = new TrafficManagerNestedEndpoint("exampleTrafficManagerNestedEndpoint", TrafficManagerNestedEndpointArgs.builder()
.targetResourceId(nested.id())
.priority(1)
.profileId(parent.id())
.minimumChildEndpoints(9)
.weight(5)
.build());
}
}

Import

Nested Endpoints can be imported using the resource id, e.g.

$ pulumi import azure:network/trafficManagerNestedEndpoint:TrafficManagerNestedEndpoint example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/example-resources/providers/Microsoft.Network/trafficManagerProfiles/example-profile/NestedEndpoints/example-endpoint

Constructors

Link copied to clipboard
fun TrafficManagerNestedEndpointArgs(customHeaders: Output<List<TrafficManagerNestedEndpointCustomHeaderArgs>>? = null, enabled: Output<Boolean>? = null, endpointLocation: Output<String>? = null, geoMappings: Output<List<String>>? = null, minimumChildEndpoints: Output<Int>? = null, minimumRequiredChildEndpointsIpv4: Output<Int>? = null, minimumRequiredChildEndpointsIpv6: Output<Int>? = null, name: Output<String>? = null, priority: Output<Int>? = null, profileId: Output<String>? = null, subnets: Output<List<TrafficManagerNestedEndpointSubnetArgs>>? = null, targetResourceId: Output<String>? = null, weight: Output<Int>? = null)

Functions

Link copied to clipboard
open override fun toJava(): TrafficManagerNestedEndpointArgs

Properties

Link copied to clipboard

One or more custom_header blocks as defined below.

Link copied to clipboard
val enabled: Output<Boolean>? = null

Is the endpoint enabled? Defaults to true.

Link copied to clipboard
val endpointLocation: Output<String>? = null

Specifies the Azure location of the Endpoint, this must be specified for Profiles using the Performance routing method.

Link copied to clipboard
val geoMappings: Output<List<String>>? = null

A list of Geographic Regions used to distribute traffic, such as WORLD, UK or DE. The same location can't be specified in two endpoints. See the Geographic Hierarchies documentation for more information.

Link copied to clipboard
val minimumChildEndpoints: Output<Int>? = null

This argument specifies the minimum number of endpoints that must be ‘online’ in the child profile in order for the parent profile to direct traffic to any of the endpoints in that child profile. This value must be larger than 0. ~>NOTE: If min_child_endpoints is less than either minimum_required_child_endpoints_ipv4 or minimum_required_child_endpoints_ipv6, then it won't have any effect.

Link copied to clipboard

This argument specifies the minimum number of IPv4 (DNS record type A) endpoints that must be ‘online’ in the child profile in order for the parent profile to direct traffic to any of the endpoints in that child profile. This argument only applies to Endpoints of type nestedEndpoints and

Link copied to clipboard

This argument specifies the minimum number of IPv6 (DNS record type AAAA) endpoints that must be ‘online’ in the child profile in order for the parent profile to direct traffic to any of the endpoints in that child profile. This argument only applies to Endpoints of type nestedEndpoints and

Link copied to clipboard
val name: Output<String>? = null

The name of the External Endpoint. Changing this forces a new resource to be created.

Link copied to clipboard
val priority: Output<Int>? = null

Specifies the priority of this Endpoint, this must be specified for Profiles using the Priority traffic routing method. Supports values between 1 and 1000, with no Endpoints sharing the same value. If omitted the value will be computed in order of creation.

Link copied to clipboard
val profileId: Output<String>? = null

The ID of the Traffic Manager Profile that this External Endpoint should be created within. Changing this forces a new resource to be created.

Link copied to clipboard

One or more subnet blocks as defined below. Changing this forces a new resource to be created.

Link copied to clipboard
val targetResourceId: Output<String>? = null

The resource id of an Azure resource to target.

Link copied to clipboard
val weight: Output<Int>? = null

Specifies how much traffic should be distributed to this endpoint, this must be specified for Profiles using the Weighted traffic routing method. Valid values are between 1 and 1000.