RouterInterfaceArgs

data class RouterInterfaceArgs(val accessPointId: Output<String>? = null, val autoPay: Output<Boolean>? = null, val deleteHealthCheckIp: Output<Boolean>? = null, val description: Output<String>? = null, val hcRate: Output<Int>? = null, val hcThreshold: Output<String>? = null, val healthCheckSourceIp: Output<String>? = null, val healthCheckTargetIp: Output<String>? = null, val oppositeAccessPointId: Output<String>? = null, val oppositeInterfaceId: Output<String>? = null, val oppositeInterfaceOwnerId: Output<String>? = null, val oppositeRegionId: Output<String>? = null, val oppositeRouterId: Output<String>? = null, val oppositeRouterType: Output<String>? = null, val paymentType: Output<String>? = null, val period: Output<Int>? = null, val pricingCycle: Output<String>? = null, val role: Output<String>? = null, val routerId: Output<String>? = null, val routerInterfaceId: Output<String>? = null, val routerInterfaceName: Output<String>? = null, val routerType: Output<String>? = null, val spec: Output<String>? = null, val status: Output<String>? = null) : ConvertibleToJava<RouterInterfaceArgs>

Provides a Express Connect Router Interface resource. For information about Express Connect Router Interface and how to use it, see What is Router Interface.

NOTE: Available since v1.199.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.vpc.Network;
import com.pulumi.alicloud.vpc.NetworkArgs;
import com.pulumi.alicloud.AlicloudFunctions;
import com.pulumi.alicloud.inputs.GetRegionsArgs;
import com.pulumi.alicloud.expressconnect.RouterInterface;
import com.pulumi.alicloud.expressconnect.RouterInterfaceArgs;
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 name = config.get("name").orElse("tf_example");
var defaultNetwork = new Network("defaultNetwork", NetworkArgs.builder()
.vpcName(name)
.cidrBlock("172.16.0.0/12")
.build());
final var defaultRegions = AlicloudFunctions.getRegions(GetRegionsArgs.builder()
.current(true)
.build());
var defaultRouterInterface = new RouterInterface("defaultRouterInterface", RouterInterfaceArgs.builder()
.description(name)
.oppositeRegionId(defaultRegions.applyValue(getRegionsResult -> getRegionsResult.regions()[0].id()))
.routerId(defaultNetwork.routerId())
.role("InitiatingSide")
.routerType("VRouter")
.paymentType("PayAsYouGo")
.routerInterfaceName(name)
.spec("Mini.2")
.build());
}
}

Import

Express Connect Router Interface can be imported using the id, e.g.

$ pulumi import alicloud:expressconnect/routerInterface:RouterInterface example <id>

Constructors

Link copied to clipboard
fun RouterInterfaceArgs(accessPointId: Output<String>? = null, autoPay: Output<Boolean>? = null, deleteHealthCheckIp: Output<Boolean>? = null, description: Output<String>? = null, hcRate: Output<Int>? = null, hcThreshold: Output<String>? = null, healthCheckSourceIp: Output<String>? = null, healthCheckTargetIp: Output<String>? = null, oppositeAccessPointId: Output<String>? = null, oppositeInterfaceId: Output<String>? = null, oppositeInterfaceOwnerId: Output<String>? = null, oppositeRegionId: Output<String>? = null, oppositeRouterId: Output<String>? = null, oppositeRouterType: Output<String>? = null, paymentType: Output<String>? = null, period: Output<Int>? = null, pricingCycle: Output<String>? = null, role: Output<String>? = null, routerId: Output<String>? = null, routerInterfaceId: Output<String>? = null, routerInterfaceName: Output<String>? = null, routerType: Output<String>? = null, spec: Output<String>? = null, status: Output<String>? = null)

Functions

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

Properties

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

The access point ID to which the VBR belongs.

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

Whether to pay automatically, value:-false (default): automatic payment is not enabled. After generating an order, you need to complete the payment at the order center.-true: Enable automatic payment to automatically pay for orders.>InstanceChargeType is required when the value of the parameter is **PrePaid.

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

Whether to delete the health check IP address configured on the router interface. Value:-true: deletes the health check IP address.-false (default): does not delete the health check IP address.

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

The description of the router interface. The description must be 2 to 256 characters in length and cannot start with http:// or https://.

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

The health check rate. Unit: seconds. The recommended value is 2. This indicates the interval between successive probe messages sent during the specified health check.

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

The health check thresholds. Unit: pcs. The recommended value is 8. This indicates the number of probe messages to be sent during the specified health check.

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

The health check source IP address, must be an unused IP within the local VPC.

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

The IP address for health screening purposes.

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

The Access point ID to which the other end belongs.

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

The Interface ID of the router at the other end.

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

The AliCloud account ID of the owner of the router interface on the other end.

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

The geographical ID of the location of the receiving end of the connection.

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

The id of the router at the other end.

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

The opposite router type of the router on the other side. Valid Values: VRouter, VBR.

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

The payment methods for router interfaces. Valid Values: PayAsYouGo, Subscription.

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

Purchase duration, value:-When you choose to pay on a monthly basis, the value range is **1 to 9 * *.-When you choose to pay per year, the value range is **1 to 3 * *.>InstanceChargeType is required when the value of the parameter is **PrePaid.

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

The billing cycle of the prepaid fee. Valid values:-Month (default): monthly payment.-Year: Pay per Year.>InstanceChargeType is required when the value of the parameter is **PrePaid.

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

The role of the router interface. Valid Values: InitiatingSide, AcceptingSide.

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

The router id associated with the router interface.

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

The first ID of the resource.

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

The name of the resource.

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

The type of router associated with the router interface. Valid Values: VRouter, VBR.

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

The specification of the router interface. Valid Values: Mini.2, Mini.5, Mini.5, Small.2, Small.5, Middle.1, Middle.2, Middle.5, Large.1, Large.2, Large.5, XLarge.1, Negative.

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

The status of the resource. Valid Values: Idle, AcceptingConnecting, Connecting, Activating, Active, Modifying, Deactivating, Inactive, Deleting.