Nat Rule Args
data class NatRuleArgs(val backendAddressPoolId: Output<String>? = null, val backendPort: Output<Int>? = null, val enableFloatingIp: Output<Boolean>? = null, val enableTcpReset: Output<Boolean>? = null, val frontendIpConfigurationName: Output<String>? = null, val frontendPort: Output<Int>? = null, val frontendPortEnd: Output<Int>? = null, val frontendPortStart: Output<Int>? = null, val idleTimeoutInMinutes: Output<Int>? = null, val loadbalancerId: Output<String>? = null, val name: Output<String>? = null, val protocol: Output<String>? = null, val resourceGroupName: Output<String>? = null) : ConvertibleToJava<NatRuleArgs>
Manages a Load Balancer NAT Rule.
NOTE: This resource cannot be used with with virtual machine scale sets, instead use the
azure.lb.NatPool
resource. NOTE When using this resource, the Load Balancer needs to have a FrontEnd IP Configuration Attached
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.lb.LoadBalancer;
import com.pulumi.azure.lb.LoadBalancerArgs;
import com.pulumi.azure.lb.inputs.LoadBalancerFrontendIpConfigurationArgs;
import com.pulumi.azure.lb.BackendAddressPool;
import com.pulumi.azure.lb.BackendAddressPoolArgs;
import com.pulumi.azure.lb.NatRule;
import com.pulumi.azure.lb.NatRuleArgs;
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("West US")
.resourceGroupName(exampleResourceGroup.name())
.allocationMethod("Static")
.build());
var exampleLoadBalancer = new LoadBalancer("exampleLoadBalancer", LoadBalancerArgs.builder()
.location("West US")
.resourceGroupName(exampleResourceGroup.name())
.frontendIpConfigurations(LoadBalancerFrontendIpConfigurationArgs.builder()
.name("PublicIPAddress")
.publicIpAddressId(examplePublicIp.id())
.build())
.build());
var exampleBackendAddressPool = new BackendAddressPool("exampleBackendAddressPool", BackendAddressPoolArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.loadbalancerId(exampleLoadBalancer.id())
.build());
var exampleNatRule = new NatRule("exampleNatRule", NatRuleArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.loadbalancerId(exampleLoadBalancer.id())
.protocol("Tcp")
.frontendPort(3389)
.backendPort(3389)
.frontendIpConfigurationName("PublicIPAddress")
.build());
var example1 = new NatRule("example1", NatRuleArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.loadbalancerId(exampleLoadBalancer.id())
.protocol("Tcp")
.frontendPortStart(3000)
.frontendPortEnd(3389)
.backendPort(3389)
.backendAddressPoolId(exampleBackendAddressPool.id())
.frontendIpConfigurationName("PublicIPAddress")
.build());
}
}
Content copied to clipboard
Import
Load Balancer NAT Rules can be imported using the resource id
, e.g.
$ pulumi import azure:lb/natRule:NatRule example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/rule1
Content copied to clipboard
Constructors
Link copied to clipboard
fun NatRuleArgs(backendAddressPoolId: Output<String>? = null, backendPort: Output<Int>? = null, enableFloatingIp: Output<Boolean>? = null, enableTcpReset: Output<Boolean>? = null, frontendIpConfigurationName: Output<String>? = null, frontendPort: Output<Int>? = null, frontendPortEnd: Output<Int>? = null, frontendPortStart: Output<Int>? = null, idleTimeoutInMinutes: Output<Int>? = null, loadbalancerId: Output<String>? = null, name: Output<String>? = null, protocol: Output<String>? = null, resourceGroupName: Output<String>? = null)