CustomRoutingEndpointArgs

data class CustomRoutingEndpointArgs(val endpoint: Output<String>? = null, val endpointGroupId: Output<String>? = null, val trafficToEndpointPolicy: Output<String>? = null, val type: Output<String>? = null) : ConvertibleToJava<CustomRoutingEndpointArgs>

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

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 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("DenyAll")
.build());
}
}

Import

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

$ pulumi import alicloud:ga/customRoutingEndpoint:CustomRoutingEndpoint example <endpoint_group_id>:<custom_routing_endpoint_id>

Constructors

Link copied to clipboard
fun CustomRoutingEndpointArgs(endpoint: Output<String>? = null, endpointGroupId: Output<String>? = null, trafficToEndpointPolicy: Output<String>? = null, type: Output<String>? = null)

Functions

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

Properties

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

The ID of the endpoint (vSwitch).

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

The ID of the endpoint group in which to create endpoints.

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

The access policy of traffic to the endpoint. Default value: DenyAll. Valid values:

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

The backend service type of the endpoint. Valid values: PrivateSubNet.