ForwardEntryArgs

data class ForwardEntryArgs(val externalIp: Output<String>? = null, val externalPort: Output<String>? = null, val forwardEntryName: Output<String>? = null, val forwardTableId: Output<String>? = null, val internalIp: Output<String>? = null, val internalPort: Output<String>? = null, val ipProtocol: Output<String>? = null, val name: Output<String>? = null, val portBreak: Output<Boolean>? = null) : ConvertibleToJava<ForwardEntryArgs>

Provides a forward resource.

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.vpc.NatGateway;
import com.pulumi.alicloud.vpc.NatGatewayArgs;
import com.pulumi.alicloud.ecs.EipAddress;
import com.pulumi.alicloud.ecs.EipAddressArgs;
import com.pulumi.alicloud.ecs.EipAssociation;
import com.pulumi.alicloud.ecs.EipAssociationArgs;
import com.pulumi.alicloud.vpc.ForwardEntry;
import com.pulumi.alicloud.vpc.ForwardEntryArgs;
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("forward-entry-example-name");
final var defaultZones = AlicloudFunctions.getZones(GetZonesArgs.builder()
.availableResourceCreation("VSwitch")
.build());
var defaultNetwork = new Network("defaultNetwork", NetworkArgs.builder()
.vpcName(name)
.cidrBlock("172.16.0.0/12")
.build());
var defaultSwitch = new Switch("defaultSwitch", SwitchArgs.builder()
.vpcId(defaultNetwork.id())
.cidrBlock("172.16.0.0/21")
.zoneId(defaultZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
.vswitchName(name)
.build());
var defaultNatGateway = new NatGateway("defaultNatGateway", NatGatewayArgs.builder()
.vpcId(defaultNetwork.id())
.internetChargeType("PayByLcu")
.natGatewayName(name)
.natType("Enhanced")
.vswitchId(defaultSwitch.id())
.build());
var defaultEipAddress = new EipAddress("defaultEipAddress", EipAddressArgs.builder()
.addressName(name)
.build());
var defaultEipAssociation = new EipAssociation("defaultEipAssociation", EipAssociationArgs.builder()
.allocationId(defaultEipAddress.id())
.instanceId(defaultNatGateway.id())
.build());
var defaultForwardEntry = new ForwardEntry("defaultForwardEntry", ForwardEntryArgs.builder()
.forwardTableId(defaultNatGateway.forwardTableIds())
.externalIp(defaultEipAddress.ipAddress())
.externalPort("80")
.ipProtocol("tcp")
.internalIp("172.16.0.3")
.internalPort("8080")
.build());
}
}

Import

Forward Entry can be imported using the id, e.g.

$ pulumi import alicloud:vpc/forwardEntry:ForwardEntry foo ftb-1aece3:fwd-232ce2

Constructors

Link copied to clipboard
fun ForwardEntryArgs(externalIp: Output<String>? = null, externalPort: Output<String>? = null, forwardEntryName: Output<String>? = null, forwardTableId: Output<String>? = null, internalIp: Output<String>? = null, internalPort: Output<String>? = null, ipProtocol: Output<String>? = null, name: Output<String>? = null, portBreak: Output<Boolean>? = null)

Functions

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

Properties

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

The external ip address, the ip must along bandwidth package public ip which alicloud.vpc.NatGateway argument bandwidth_packages.

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

The external port, valid value is 1~65535|any.

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

The name of forward entry.

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

The value can get from alicloud.vpc.NatGateway Attributes "forward_table_ids".

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

The internal ip, must a private ip.

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

The internal port, valid value is 1~65535|any.

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

The ip protocol, valid value is tcp|udp|any.

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

Field name has been deprecated from provider version 1.119.1. New field forward_entry_name instead.

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

Specifies whether to remove limits on the port range. Default value is false.