CustomRoutingEndpointTrafficPolicyArgs

data class CustomRoutingEndpointTrafficPolicyArgs(val address: Output<String>? = null, val endpointId: Output<String>? = null, val portRanges: Output<List<CustomRoutingEndpointTrafficPolicyPortRangeArgs>>? = null) : ConvertibleToJava<CustomRoutingEndpointTrafficPolicyArgs>

Provides a Global Accelerator (GA) Custom Routing Endpoint Traffic Policy resource. For information about Global Accelerator (GA) Custom Routing Endpoint Traffic Policy and how to use it, see What is Custom Routing Endpoint Traffic Policy.

NOTE: Available since v1.197.0.

Example Usage

Basic Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.AlicloudFunctions;
import com.pulumi.alicloud.inputs.GetZonesArgs;
import com.pulumi.alicloud.vpc.Network;
import com.pulumi.alicloud.vpc.NetworkArgs;
import com.pulumi.alicloud.vpc.Switch;
import com.pulumi.alicloud.vpc.SwitchArgs;
import com.pulumi.alicloud.ga.Accelerator;
import com.pulumi.alicloud.ga.AcceleratorArgs;
import com.pulumi.alicloud.ga.BandwidthPackage;
import com.pulumi.alicloud.ga.BandwidthPackageArgs;
import com.pulumi.alicloud.ga.BandwidthPackageAttachment;
import com.pulumi.alicloud.ga.BandwidthPackageAttachmentArgs;
import com.pulumi.alicloud.ga.Listener;
import com.pulumi.alicloud.ga.ListenerArgs;
import com.pulumi.alicloud.ga.inputs.ListenerPortRangeArgs;
import com.pulumi.alicloud.ga.CustomRoutingEndpointGroup;
import com.pulumi.alicloud.ga.CustomRoutingEndpointGroupArgs;
import com.pulumi.alicloud.ga.CustomRoutingEndpoint;
import com.pulumi.alicloud.ga.CustomRoutingEndpointArgs;
import com.pulumi.alicloud.ga.CustomRoutingEndpointGroupDestination;
import com.pulumi.alicloud.ga.CustomRoutingEndpointGroupDestinationArgs;
import com.pulumi.alicloud.ga.CustomRoutingEndpointTrafficPolicy;
import com.pulumi.alicloud.ga.CustomRoutingEndpointTrafficPolicyArgs;
import com.pulumi.alicloud.ga.inputs.CustomRoutingEndpointTrafficPolicyPortRangeArgs;
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) {
final var config = ctx.config();
final var region = config.get("region").orElse("cn-hangzhou");
final var defaultZones = AlicloudFunctions.getZones(GetZonesArgs.builder()
.availableResourceCreation("VSwitch")
.build());
var defaultNetwork = new Network("defaultNetwork", NetworkArgs.builder()
.vpcName("terraform-example")
.cidrBlock("172.17.3.0/24")
.build());
var defaultSwitch = new Switch("defaultSwitch", SwitchArgs.builder()
.vswitchName("terraform-example")
.cidrBlock("172.17.3.0/24")
.vpcId(defaultNetwork.id())
.zoneId(defaultZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
.build());
var defaultAccelerator = new Accelerator("defaultAccelerator", AcceleratorArgs.builder()
.duration(1)
.autoUseCoupon(true)
.spec("1")
.build());
var defaultBandwidthPackage = new BandwidthPackage("defaultBandwidthPackage", BandwidthPackageArgs.builder()
.bandwidth(100)
.type("Basic")
.bandwidthType("Basic")
.paymentType("PayAsYouGo")
.billingType("PayBy95")
.ratio(30)
.build());
var defaultBandwidthPackageAttachment = new BandwidthPackageAttachment("defaultBandwidthPackageAttachment", BandwidthPackageAttachmentArgs.builder()
.acceleratorId(defaultAccelerator.id())
.bandwidthPackageId(defaultBandwidthPackage.id())
.build());
var defaultListener = new Listener("defaultListener", ListenerArgs.builder()
.acceleratorId(defaultBandwidthPackageAttachment.acceleratorId())
.listenerType("CustomRouting")
.portRanges(ListenerPortRangeArgs.builder()
.fromPort(10000)
.toPort(16000)
.build())
.build());
var defaultCustomRoutingEndpointGroup = new CustomRoutingEndpointGroup("defaultCustomRoutingEndpointGroup", CustomRoutingEndpointGroupArgs.builder()
.acceleratorId(defaultListener.acceleratorId())
.listenerId(defaultListener.id())
.endpointGroupRegion(region)
.customRoutingEndpointGroupName("terraform-example")
.description("terraform-example")
.build());
var defaultCustomRoutingEndpoint = new CustomRoutingEndpoint("defaultCustomRoutingEndpoint", CustomRoutingEndpointArgs.builder()
.endpointGroupId(defaultCustomRoutingEndpointGroup.id())
.endpoint(defaultSwitch.id())
.type("PrivateSubNet")
.trafficToEndpointPolicy("AllowCustom")
.build());
var defaultCustomRoutingEndpointGroupDestination = new CustomRoutingEndpointGroupDestination("defaultCustomRoutingEndpointGroupDestination", CustomRoutingEndpointGroupDestinationArgs.builder()
.endpointGroupId(defaultCustomRoutingEndpointGroup.id())
.protocols("TCP")
.fromPort(1)
.toPort(10)
.build());
var defaultCustomRoutingEndpointTrafficPolicy = new CustomRoutingEndpointTrafficPolicy("defaultCustomRoutingEndpointTrafficPolicy", CustomRoutingEndpointTrafficPolicyArgs.builder()
.endpointId(defaultCustomRoutingEndpoint.customRoutingEndpointId())
.address("172.17.3.0")
.portRanges(CustomRoutingEndpointTrafficPolicyPortRangeArgs.builder()
.fromPort(1)
.toPort(10)
.build())
.build());
}
}

Import

Global Accelerator (GA) Custom Routing Endpoint Traffic Policy can be imported using the id, e.g.

$ pulumi import alicloud:ga/customRoutingEndpointTrafficPolicy:CustomRoutingEndpointTrafficPolicy example <endpoint_id>:<custom_routing_endpoint_traffic_policy_id>

Constructors

Link copied to clipboard
fun CustomRoutingEndpointTrafficPolicyArgs(address: Output<String>? = null, endpointId: Output<String>? = null, portRanges: Output<List<CustomRoutingEndpointTrafficPolicyPortRangeArgs>>? = null)

Functions

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

Properties

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

The IP address of the destination to which traffic is allowed.

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

The ID of the Custom Routing Endpoint.

Link copied to clipboard

Port rangeSee the following. See port_ranges below.