This is the latest version of Azure Native. Use the Azure Native v1 docs if using the v1 version of this package.
Azure Native v2.86.0 published on Monday, Feb 3, 2025 by Pulumi
azure-native.network.LoadBalancer
Explore with Pulumi AI
This is the latest version of Azure Native. Use the Azure Native v1 docs if using the v1 version of this package.
Azure Native v2.86.0 published on Monday, Feb 3, 2025 by Pulumi
LoadBalancer resource. Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01.
Other available API versions: 2018-06-01, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01, 2024-05-01.
Example Usage
Create load balancer
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var loadBalancer = new AzureNative.Network.LoadBalancer("loadBalancer", new()
{
BackendAddressPools = new[]
{
new AzureNative.Network.Inputs.BackendAddressPoolArgs
{
Name = "be-lb",
},
},
FrontendIPConfigurations = new[]
{
new AzureNative.Network.Inputs.FrontendIPConfigurationArgs
{
Name = "fe-lb",
Subnet = new AzureNative.Network.Inputs.SubnetArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
},
},
InboundNatPools = new[] {},
InboundNatRules = new[]
{
new AzureNative.Network.Inputs.InboundNatRuleArgs
{
BackendPort = 3389,
EnableFloatingIP = true,
EnableTcpReset = false,
FrontendIPConfiguration = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
FrontendPort = 3389,
IdleTimeoutInMinutes = 15,
Name = "in-nat-rule",
Protocol = AzureNative.Network.TransportProtocol.Tcp,
},
},
LoadBalancerName = "lb",
LoadBalancingRules = new[]
{
new AzureNative.Network.Inputs.LoadBalancingRuleArgs
{
BackendAddressPool = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
BackendPort = 80,
EnableFloatingIP = true,
EnableTcpReset = false,
FrontendIPConfiguration = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
FrontendPort = 80,
IdleTimeoutInMinutes = 15,
LoadDistribution = AzureNative.Network.LoadDistribution.Default,
Name = "rulelb",
Probe = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
Protocol = AzureNative.Network.TransportProtocol.Tcp,
},
},
Location = "eastus",
Probes = new[]
{
new AzureNative.Network.Inputs.ProbeArgs
{
IntervalInSeconds = 15,
Name = "probe-lb",
NumberOfProbes = 2,
Port = 80,
ProbeThreshold = 1,
Protocol = AzureNative.Network.ProbeProtocol.Http,
RequestPath = "healthcheck.aspx",
},
},
ResourceGroupName = "rg1",
});
});
package main
import (
network "github.com/pulumi/pulumi-azure-native-sdk/network/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := network.NewLoadBalancer(ctx, "loadBalancer", &network.LoadBalancerArgs{
BackendAddressPools: network.BackendAddressPoolArray{
&network.BackendAddressPoolArgs{
Name: pulumi.String("be-lb"),
},
},
FrontendIPConfigurations: network.FrontendIPConfigurationArray{
&network.FrontendIPConfigurationArgs{
Name: pulumi.String("fe-lb"),
Subnet: &network.SubnetTypeArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"),
},
},
},
InboundNatPools: network.InboundNatPoolArray{},
InboundNatRules: network.InboundNatRuleTypeArray{
&network.InboundNatRuleTypeArgs{
BackendPort: pulumi.Int(3389),
EnableFloatingIP: pulumi.Bool(true),
EnableTcpReset: pulumi.Bool(false),
FrontendIPConfiguration: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"),
},
FrontendPort: pulumi.Int(3389),
IdleTimeoutInMinutes: pulumi.Int(15),
Name: pulumi.String("in-nat-rule"),
Protocol: pulumi.String(network.TransportProtocolTcp),
},
},
LoadBalancerName: pulumi.String("lb"),
LoadBalancingRules: network.LoadBalancingRuleArray{
&network.LoadBalancingRuleArgs{
BackendAddressPool: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb"),
},
BackendPort: pulumi.Int(80),
EnableFloatingIP: pulumi.Bool(true),
EnableTcpReset: pulumi.Bool(false),
FrontendIPConfiguration: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"),
},
FrontendPort: pulumi.Int(80),
IdleTimeoutInMinutes: pulumi.Int(15),
LoadDistribution: pulumi.String(network.LoadDistributionDefault),
Name: pulumi.String("rulelb"),
Probe: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb"),
},
Protocol: pulumi.String(network.TransportProtocolTcp),
},
},
Location: pulumi.String("eastus"),
Probes: network.ProbeArray{
&network.ProbeArgs{
IntervalInSeconds: pulumi.Int(15),
Name: pulumi.String("probe-lb"),
NumberOfProbes: pulumi.Int(2),
Port: pulumi.Int(80),
ProbeThreshold: pulumi.Int(1),
Protocol: pulumi.String(network.ProbeProtocolHttp),
RequestPath: pulumi.String("healthcheck.aspx"),
},
},
ResourceGroupName: pulumi.String("rg1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.network.LoadBalancer;
import com.pulumi.azurenative.network.LoadBalancerArgs;
import com.pulumi.azurenative.network.inputs.BackendAddressPoolArgs;
import com.pulumi.azurenative.network.inputs.FrontendIPConfigurationArgs;
import com.pulumi.azurenative.network.inputs.SubnetArgs;
import com.pulumi.azurenative.network.inputs.InboundNatRuleArgs;
import com.pulumi.azurenative.network.inputs.SubResourceArgs;
import com.pulumi.azurenative.network.inputs.LoadBalancingRuleArgs;
import com.pulumi.azurenative.network.inputs.ProbeArgs;
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 loadBalancer = new LoadBalancer("loadBalancer", LoadBalancerArgs.builder()
.backendAddressPools(BackendAddressPoolArgs.builder()
.name("be-lb")
.build())
.frontendIPConfigurations(FrontendIPConfigurationArgs.builder()
.name("fe-lb")
.subnet(SubnetArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb")
.build())
.build())
.inboundNatPools()
.inboundNatRules(InboundNatRuleArgs.builder()
.backendPort(3389)
.enableFloatingIP(true)
.enableTcpReset(false)
.frontendIPConfiguration(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb")
.build())
.frontendPort(3389)
.idleTimeoutInMinutes(15)
.name("in-nat-rule")
.protocol("Tcp")
.build())
.loadBalancerName("lb")
.loadBalancingRules(LoadBalancingRuleArgs.builder()
.backendAddressPool(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb")
.build())
.backendPort(80)
.enableFloatingIP(true)
.enableTcpReset(false)
.frontendIPConfiguration(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb")
.build())
.frontendPort(80)
.idleTimeoutInMinutes(15)
.loadDistribution("Default")
.name("rulelb")
.probe(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb")
.build())
.protocol("Tcp")
.build())
.location("eastus")
.probes(ProbeArgs.builder()
.intervalInSeconds(15)
.name("probe-lb")
.numberOfProbes(2)
.port(80)
.probeThreshold(1)
.protocol("Http")
.requestPath("healthcheck.aspx")
.build())
.resourceGroupName("rg1")
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const loadBalancer = new azure_native.network.LoadBalancer("loadBalancer", {
backendAddressPools: [{
name: "be-lb",
}],
frontendIPConfigurations: [{
name: "fe-lb",
subnet: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
}],
inboundNatPools: [],
inboundNatRules: [{
backendPort: 3389,
enableFloatingIP: true,
enableTcpReset: false,
frontendIPConfiguration: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
frontendPort: 3389,
idleTimeoutInMinutes: 15,
name: "in-nat-rule",
protocol: azure_native.network.TransportProtocol.Tcp,
}],
loadBalancerName: "lb",
loadBalancingRules: [{
backendAddressPool: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
backendPort: 80,
enableFloatingIP: true,
enableTcpReset: false,
frontendIPConfiguration: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
frontendPort: 80,
idleTimeoutInMinutes: 15,
loadDistribution: azure_native.network.LoadDistribution.Default,
name: "rulelb",
probe: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
protocol: azure_native.network.TransportProtocol.Tcp,
}],
location: "eastus",
probes: [{
intervalInSeconds: 15,
name: "probe-lb",
numberOfProbes: 2,
port: 80,
probeThreshold: 1,
protocol: azure_native.network.ProbeProtocol.Http,
requestPath: "healthcheck.aspx",
}],
resourceGroupName: "rg1",
});
import pulumi
import pulumi_azure_native as azure_native
load_balancer = azure_native.network.LoadBalancer("loadBalancer",
backend_address_pools=[{
"name": "be-lb",
}],
frontend_ip_configurations=[{
"name": "fe-lb",
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
}],
inbound_nat_pools=[],
inbound_nat_rules=[{
"backend_port": 3389,
"enable_floating_ip": True,
"enable_tcp_reset": False,
"frontend_ip_configuration": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
"frontend_port": 3389,
"idle_timeout_in_minutes": 15,
"name": "in-nat-rule",
"protocol": azure_native.network.TransportProtocol.TCP,
}],
load_balancer_name="lb",
load_balancing_rules=[{
"backend_address_pool": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
"backend_port": 80,
"enable_floating_ip": True,
"enable_tcp_reset": False,
"frontend_ip_configuration": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
"frontend_port": 80,
"idle_timeout_in_minutes": 15,
"load_distribution": azure_native.network.LoadDistribution.DEFAULT,
"name": "rulelb",
"probe": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
"protocol": azure_native.network.TransportProtocol.TCP,
}],
location="eastus",
probes=[{
"interval_in_seconds": 15,
"name": "probe-lb",
"number_of_probes": 2,
"port": 80,
"probe_threshold": 1,
"protocol": azure_native.network.ProbeProtocol.HTTP,
"request_path": "healthcheck.aspx",
}],
resource_group_name="rg1")
resources:
loadBalancer:
type: azure-native:network:LoadBalancer
properties:
backendAddressPools:
- name: be-lb
frontendIPConfigurations:
- name: fe-lb
subnet:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb
inboundNatPools: []
inboundNatRules:
- backendPort: 3389
enableFloatingIP: true
enableTcpReset: false
frontendIPConfiguration:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb
frontendPort: 3389
idleTimeoutInMinutes: 15
name: in-nat-rule
protocol: Tcp
loadBalancerName: lb
loadBalancingRules:
- backendAddressPool:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb
backendPort: 80
enableFloatingIP: true
enableTcpReset: false
frontendIPConfiguration:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb
frontendPort: 80
idleTimeoutInMinutes: 15
loadDistribution: Default
name: rulelb
probe:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb
protocol: Tcp
location: eastus
probes:
- intervalInSeconds: 15
name: probe-lb
numberOfProbes: 2
port: 80
probeThreshold: 1
protocol: Http
requestPath: healthcheck.aspx
resourceGroupName: rg1
Create load balancer with Frontend IP in Zone 1
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var loadBalancer = new AzureNative.Network.LoadBalancer("loadBalancer", new()
{
BackendAddressPools = new[]
{
new AzureNative.Network.Inputs.BackendAddressPoolArgs
{
Name = "be-lb",
},
},
FrontendIPConfigurations = new[]
{
new AzureNative.Network.Inputs.FrontendIPConfigurationArgs
{
Name = "fe-lb",
Subnet = new AzureNative.Network.Inputs.SubnetArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
Zones = new[]
{
"1",
},
},
},
InboundNatPools = new[] {},
InboundNatRules = new[]
{
new AzureNative.Network.Inputs.InboundNatRuleArgs
{
BackendPort = 3389,
EnableFloatingIP = true,
FrontendIPConfiguration = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
FrontendPort = 3389,
IdleTimeoutInMinutes = 15,
Name = "in-nat-rule",
Protocol = AzureNative.Network.TransportProtocol.Tcp,
},
},
LoadBalancerName = "lb",
LoadBalancingRules = new[]
{
new AzureNative.Network.Inputs.LoadBalancingRuleArgs
{
BackendAddressPool = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
BackendPort = 80,
EnableFloatingIP = true,
FrontendIPConfiguration = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
FrontendPort = 80,
IdleTimeoutInMinutes = 15,
LoadDistribution = AzureNative.Network.LoadDistribution.Default,
Name = "rulelb",
Probe = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
Protocol = AzureNative.Network.TransportProtocol.Tcp,
},
},
Location = "eastus",
OutboundRules = new[] {},
Probes = new[]
{
new AzureNative.Network.Inputs.ProbeArgs
{
IntervalInSeconds = 15,
Name = "probe-lb",
NumberOfProbes = 2,
Port = 80,
ProbeThreshold = 1,
Protocol = AzureNative.Network.ProbeProtocol.Http,
RequestPath = "healthcheck.aspx",
},
},
ResourceGroupName = "rg1",
Sku = new AzureNative.Network.Inputs.LoadBalancerSkuArgs
{
Name = AzureNative.Network.LoadBalancerSkuName.Standard,
},
});
});
package main
import (
network "github.com/pulumi/pulumi-azure-native-sdk/network/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := network.NewLoadBalancer(ctx, "loadBalancer", &network.LoadBalancerArgs{
BackendAddressPools: network.BackendAddressPoolArray{
&network.BackendAddressPoolArgs{
Name: pulumi.String("be-lb"),
},
},
FrontendIPConfigurations: network.FrontendIPConfigurationArray{
&network.FrontendIPConfigurationArgs{
Name: pulumi.String("fe-lb"),
Subnet: &network.SubnetTypeArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"),
},
Zones: pulumi.StringArray{
pulumi.String("1"),
},
},
},
InboundNatPools: network.InboundNatPoolArray{},
InboundNatRules: network.InboundNatRuleTypeArray{
&network.InboundNatRuleTypeArgs{
BackendPort: pulumi.Int(3389),
EnableFloatingIP: pulumi.Bool(true),
FrontendIPConfiguration: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"),
},
FrontendPort: pulumi.Int(3389),
IdleTimeoutInMinutes: pulumi.Int(15),
Name: pulumi.String("in-nat-rule"),
Protocol: pulumi.String(network.TransportProtocolTcp),
},
},
LoadBalancerName: pulumi.String("lb"),
LoadBalancingRules: network.LoadBalancingRuleArray{
&network.LoadBalancingRuleArgs{
BackendAddressPool: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb"),
},
BackendPort: pulumi.Int(80),
EnableFloatingIP: pulumi.Bool(true),
FrontendIPConfiguration: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"),
},
FrontendPort: pulumi.Int(80),
IdleTimeoutInMinutes: pulumi.Int(15),
LoadDistribution: pulumi.String(network.LoadDistributionDefault),
Name: pulumi.String("rulelb"),
Probe: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb"),
},
Protocol: pulumi.String(network.TransportProtocolTcp),
},
},
Location: pulumi.String("eastus"),
OutboundRules: network.OutboundRuleArray{},
Probes: network.ProbeArray{
&network.ProbeArgs{
IntervalInSeconds: pulumi.Int(15),
Name: pulumi.String("probe-lb"),
NumberOfProbes: pulumi.Int(2),
Port: pulumi.Int(80),
ProbeThreshold: pulumi.Int(1),
Protocol: pulumi.String(network.ProbeProtocolHttp),
RequestPath: pulumi.String("healthcheck.aspx"),
},
},
ResourceGroupName: pulumi.String("rg1"),
Sku: &network.LoadBalancerSkuArgs{
Name: pulumi.String(network.LoadBalancerSkuNameStandard),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.network.LoadBalancer;
import com.pulumi.azurenative.network.LoadBalancerArgs;
import com.pulumi.azurenative.network.inputs.BackendAddressPoolArgs;
import com.pulumi.azurenative.network.inputs.FrontendIPConfigurationArgs;
import com.pulumi.azurenative.network.inputs.SubnetArgs;
import com.pulumi.azurenative.network.inputs.InboundNatRuleArgs;
import com.pulumi.azurenative.network.inputs.SubResourceArgs;
import com.pulumi.azurenative.network.inputs.LoadBalancingRuleArgs;
import com.pulumi.azurenative.network.inputs.ProbeArgs;
import com.pulumi.azurenative.network.inputs.LoadBalancerSkuArgs;
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 loadBalancer = new LoadBalancer("loadBalancer", LoadBalancerArgs.builder()
.backendAddressPools(BackendAddressPoolArgs.builder()
.name("be-lb")
.build())
.frontendIPConfigurations(FrontendIPConfigurationArgs.builder()
.name("fe-lb")
.subnet(SubnetArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb")
.build())
.zones("1")
.build())
.inboundNatPools()
.inboundNatRules(InboundNatRuleArgs.builder()
.backendPort(3389)
.enableFloatingIP(true)
.frontendIPConfiguration(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb")
.build())
.frontendPort(3389)
.idleTimeoutInMinutes(15)
.name("in-nat-rule")
.protocol("Tcp")
.build())
.loadBalancerName("lb")
.loadBalancingRules(LoadBalancingRuleArgs.builder()
.backendAddressPool(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb")
.build())
.backendPort(80)
.enableFloatingIP(true)
.frontendIPConfiguration(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb")
.build())
.frontendPort(80)
.idleTimeoutInMinutes(15)
.loadDistribution("Default")
.name("rulelb")
.probe(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb")
.build())
.protocol("Tcp")
.build())
.location("eastus")
.outboundRules()
.probes(ProbeArgs.builder()
.intervalInSeconds(15)
.name("probe-lb")
.numberOfProbes(2)
.port(80)
.probeThreshold(1)
.protocol("Http")
.requestPath("healthcheck.aspx")
.build())
.resourceGroupName("rg1")
.sku(LoadBalancerSkuArgs.builder()
.name("Standard")
.build())
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const loadBalancer = new azure_native.network.LoadBalancer("loadBalancer", {
backendAddressPools: [{
name: "be-lb",
}],
frontendIPConfigurations: [{
name: "fe-lb",
subnet: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
zones: ["1"],
}],
inboundNatPools: [],
inboundNatRules: [{
backendPort: 3389,
enableFloatingIP: true,
frontendIPConfiguration: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
frontendPort: 3389,
idleTimeoutInMinutes: 15,
name: "in-nat-rule",
protocol: azure_native.network.TransportProtocol.Tcp,
}],
loadBalancerName: "lb",
loadBalancingRules: [{
backendAddressPool: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
backendPort: 80,
enableFloatingIP: true,
frontendIPConfiguration: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
frontendPort: 80,
idleTimeoutInMinutes: 15,
loadDistribution: azure_native.network.LoadDistribution.Default,
name: "rulelb",
probe: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
protocol: azure_native.network.TransportProtocol.Tcp,
}],
location: "eastus",
outboundRules: [],
probes: [{
intervalInSeconds: 15,
name: "probe-lb",
numberOfProbes: 2,
port: 80,
probeThreshold: 1,
protocol: azure_native.network.ProbeProtocol.Http,
requestPath: "healthcheck.aspx",
}],
resourceGroupName: "rg1",
sku: {
name: azure_native.network.LoadBalancerSkuName.Standard,
},
});
import pulumi
import pulumi_azure_native as azure_native
load_balancer = azure_native.network.LoadBalancer("loadBalancer",
backend_address_pools=[{
"name": "be-lb",
}],
frontend_ip_configurations=[{
"name": "fe-lb",
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
"zones": ["1"],
}],
inbound_nat_pools=[],
inbound_nat_rules=[{
"backend_port": 3389,
"enable_floating_ip": True,
"frontend_ip_configuration": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
"frontend_port": 3389,
"idle_timeout_in_minutes": 15,
"name": "in-nat-rule",
"protocol": azure_native.network.TransportProtocol.TCP,
}],
load_balancer_name="lb",
load_balancing_rules=[{
"backend_address_pool": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
"backend_port": 80,
"enable_floating_ip": True,
"frontend_ip_configuration": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
"frontend_port": 80,
"idle_timeout_in_minutes": 15,
"load_distribution": azure_native.network.LoadDistribution.DEFAULT,
"name": "rulelb",
"probe": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
"protocol": azure_native.network.TransportProtocol.TCP,
}],
location="eastus",
outbound_rules=[],
probes=[{
"interval_in_seconds": 15,
"name": "probe-lb",
"number_of_probes": 2,
"port": 80,
"probe_threshold": 1,
"protocol": azure_native.network.ProbeProtocol.HTTP,
"request_path": "healthcheck.aspx",
}],
resource_group_name="rg1",
sku={
"name": azure_native.network.LoadBalancerSkuName.STANDARD,
})
resources:
loadBalancer:
type: azure-native:network:LoadBalancer
properties:
backendAddressPools:
- name: be-lb
frontendIPConfigurations:
- name: fe-lb
subnet:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb
zones:
- '1'
inboundNatPools: []
inboundNatRules:
- backendPort: 3389
enableFloatingIP: true
frontendIPConfiguration:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb
frontendPort: 3389
idleTimeoutInMinutes: 15
name: in-nat-rule
protocol: Tcp
loadBalancerName: lb
loadBalancingRules:
- backendAddressPool:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb
backendPort: 80
enableFloatingIP: true
frontendIPConfiguration:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb
frontendPort: 80
idleTimeoutInMinutes: 15
loadDistribution: Default
name: rulelb
probe:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb
protocol: Tcp
location: eastus
outboundRules: []
probes:
- intervalInSeconds: 15
name: probe-lb
numberOfProbes: 2
port: 80
probeThreshold: 1
protocol: Http
requestPath: healthcheck.aspx
resourceGroupName: rg1
sku:
name: Standard
Create load balancer with Gateway Load Balancer Consumer configured
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var loadBalancer = new AzureNative.Network.LoadBalancer("loadBalancer", new()
{
BackendAddressPools = new[]
{
new AzureNative.Network.Inputs.BackendAddressPoolArgs
{
Name = "be-lb",
},
},
FrontendIPConfigurations = new[]
{
new AzureNative.Network.Inputs.FrontendIPConfigurationArgs
{
GatewayLoadBalancer = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb-provider",
},
Name = "fe-lb",
Subnet = new AzureNative.Network.Inputs.SubnetArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
},
},
InboundNatPools = new[] {},
InboundNatRules = new[]
{
new AzureNative.Network.Inputs.InboundNatRuleArgs
{
BackendPort = 3389,
EnableFloatingIP = true,
FrontendIPConfiguration = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
FrontendPort = 3389,
IdleTimeoutInMinutes = 15,
Name = "in-nat-rule",
Protocol = AzureNative.Network.TransportProtocol.Tcp,
},
},
LoadBalancerName = "lb",
LoadBalancingRules = new[]
{
new AzureNative.Network.Inputs.LoadBalancingRuleArgs
{
BackendAddressPool = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
BackendPort = 80,
EnableFloatingIP = true,
FrontendIPConfiguration = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
FrontendPort = 80,
IdleTimeoutInMinutes = 15,
LoadDistribution = AzureNative.Network.LoadDistribution.Default,
Name = "rulelb",
Probe = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
Protocol = AzureNative.Network.TransportProtocol.Tcp,
},
},
Location = "eastus",
OutboundRules = new[] {},
Probes = new[]
{
new AzureNative.Network.Inputs.ProbeArgs
{
IntervalInSeconds = 15,
Name = "probe-lb",
NumberOfProbes = 2,
Port = 80,
ProbeThreshold = 1,
Protocol = AzureNative.Network.ProbeProtocol.Http,
RequestPath = "healthcheck.aspx",
},
},
ResourceGroupName = "rg1",
Sku = new AzureNative.Network.Inputs.LoadBalancerSkuArgs
{
Name = AzureNative.Network.LoadBalancerSkuName.Standard,
},
});
});
package main
import (
network "github.com/pulumi/pulumi-azure-native-sdk/network/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := network.NewLoadBalancer(ctx, "loadBalancer", &network.LoadBalancerArgs{
BackendAddressPools: network.BackendAddressPoolArray{
&network.BackendAddressPoolArgs{
Name: pulumi.String("be-lb"),
},
},
FrontendIPConfigurations: network.FrontendIPConfigurationArray{
&network.FrontendIPConfigurationArgs{
GatewayLoadBalancer: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb-provider"),
},
Name: pulumi.String("fe-lb"),
Subnet: &network.SubnetTypeArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"),
},
},
},
InboundNatPools: network.InboundNatPoolArray{},
InboundNatRules: network.InboundNatRuleTypeArray{
&network.InboundNatRuleTypeArgs{
BackendPort: pulumi.Int(3389),
EnableFloatingIP: pulumi.Bool(true),
FrontendIPConfiguration: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"),
},
FrontendPort: pulumi.Int(3389),
IdleTimeoutInMinutes: pulumi.Int(15),
Name: pulumi.String("in-nat-rule"),
Protocol: pulumi.String(network.TransportProtocolTcp),
},
},
LoadBalancerName: pulumi.String("lb"),
LoadBalancingRules: network.LoadBalancingRuleArray{
&network.LoadBalancingRuleArgs{
BackendAddressPool: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb"),
},
BackendPort: pulumi.Int(80),
EnableFloatingIP: pulumi.Bool(true),
FrontendIPConfiguration: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"),
},
FrontendPort: pulumi.Int(80),
IdleTimeoutInMinutes: pulumi.Int(15),
LoadDistribution: pulumi.String(network.LoadDistributionDefault),
Name: pulumi.String("rulelb"),
Probe: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb"),
},
Protocol: pulumi.String(network.TransportProtocolTcp),
},
},
Location: pulumi.String("eastus"),
OutboundRules: network.OutboundRuleArray{},
Probes: network.ProbeArray{
&network.ProbeArgs{
IntervalInSeconds: pulumi.Int(15),
Name: pulumi.String("probe-lb"),
NumberOfProbes: pulumi.Int(2),
Port: pulumi.Int(80),
ProbeThreshold: pulumi.Int(1),
Protocol: pulumi.String(network.ProbeProtocolHttp),
RequestPath: pulumi.String("healthcheck.aspx"),
},
},
ResourceGroupName: pulumi.String("rg1"),
Sku: &network.LoadBalancerSkuArgs{
Name: pulumi.String(network.LoadBalancerSkuNameStandard),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.network.LoadBalancer;
import com.pulumi.azurenative.network.LoadBalancerArgs;
import com.pulumi.azurenative.network.inputs.BackendAddressPoolArgs;
import com.pulumi.azurenative.network.inputs.FrontendIPConfigurationArgs;
import com.pulumi.azurenative.network.inputs.SubResourceArgs;
import com.pulumi.azurenative.network.inputs.SubnetArgs;
import com.pulumi.azurenative.network.inputs.InboundNatRuleArgs;
import com.pulumi.azurenative.network.inputs.LoadBalancingRuleArgs;
import com.pulumi.azurenative.network.inputs.ProbeArgs;
import com.pulumi.azurenative.network.inputs.LoadBalancerSkuArgs;
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 loadBalancer = new LoadBalancer("loadBalancer", LoadBalancerArgs.builder()
.backendAddressPools(BackendAddressPoolArgs.builder()
.name("be-lb")
.build())
.frontendIPConfigurations(FrontendIPConfigurationArgs.builder()
.gatewayLoadBalancer(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb-provider")
.build())
.name("fe-lb")
.subnet(SubnetArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb")
.build())
.build())
.inboundNatPools()
.inboundNatRules(InboundNatRuleArgs.builder()
.backendPort(3389)
.enableFloatingIP(true)
.frontendIPConfiguration(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb")
.build())
.frontendPort(3389)
.idleTimeoutInMinutes(15)
.name("in-nat-rule")
.protocol("Tcp")
.build())
.loadBalancerName("lb")
.loadBalancingRules(LoadBalancingRuleArgs.builder()
.backendAddressPool(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb")
.build())
.backendPort(80)
.enableFloatingIP(true)
.frontendIPConfiguration(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb")
.build())
.frontendPort(80)
.idleTimeoutInMinutes(15)
.loadDistribution("Default")
.name("rulelb")
.probe(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb")
.build())
.protocol("Tcp")
.build())
.location("eastus")
.outboundRules()
.probes(ProbeArgs.builder()
.intervalInSeconds(15)
.name("probe-lb")
.numberOfProbes(2)
.port(80)
.probeThreshold(1)
.protocol("Http")
.requestPath("healthcheck.aspx")
.build())
.resourceGroupName("rg1")
.sku(LoadBalancerSkuArgs.builder()
.name("Standard")
.build())
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const loadBalancer = new azure_native.network.LoadBalancer("loadBalancer", {
backendAddressPools: [{
name: "be-lb",
}],
frontendIPConfigurations: [{
gatewayLoadBalancer: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb-provider",
},
name: "fe-lb",
subnet: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
}],
inboundNatPools: [],
inboundNatRules: [{
backendPort: 3389,
enableFloatingIP: true,
frontendIPConfiguration: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
frontendPort: 3389,
idleTimeoutInMinutes: 15,
name: "in-nat-rule",
protocol: azure_native.network.TransportProtocol.Tcp,
}],
loadBalancerName: "lb",
loadBalancingRules: [{
backendAddressPool: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
backendPort: 80,
enableFloatingIP: true,
frontendIPConfiguration: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
frontendPort: 80,
idleTimeoutInMinutes: 15,
loadDistribution: azure_native.network.LoadDistribution.Default,
name: "rulelb",
probe: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
protocol: azure_native.network.TransportProtocol.Tcp,
}],
location: "eastus",
outboundRules: [],
probes: [{
intervalInSeconds: 15,
name: "probe-lb",
numberOfProbes: 2,
port: 80,
probeThreshold: 1,
protocol: azure_native.network.ProbeProtocol.Http,
requestPath: "healthcheck.aspx",
}],
resourceGroupName: "rg1",
sku: {
name: azure_native.network.LoadBalancerSkuName.Standard,
},
});
import pulumi
import pulumi_azure_native as azure_native
load_balancer = azure_native.network.LoadBalancer("loadBalancer",
backend_address_pools=[{
"name": "be-lb",
}],
frontend_ip_configurations=[{
"gateway_load_balancer": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb-provider",
},
"name": "fe-lb",
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
}],
inbound_nat_pools=[],
inbound_nat_rules=[{
"backend_port": 3389,
"enable_floating_ip": True,
"frontend_ip_configuration": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
"frontend_port": 3389,
"idle_timeout_in_minutes": 15,
"name": "in-nat-rule",
"protocol": azure_native.network.TransportProtocol.TCP,
}],
load_balancer_name="lb",
load_balancing_rules=[{
"backend_address_pool": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
"backend_port": 80,
"enable_floating_ip": True,
"frontend_ip_configuration": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
"frontend_port": 80,
"idle_timeout_in_minutes": 15,
"load_distribution": azure_native.network.LoadDistribution.DEFAULT,
"name": "rulelb",
"probe": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
"protocol": azure_native.network.TransportProtocol.TCP,
}],
location="eastus",
outbound_rules=[],
probes=[{
"interval_in_seconds": 15,
"name": "probe-lb",
"number_of_probes": 2,
"port": 80,
"probe_threshold": 1,
"protocol": azure_native.network.ProbeProtocol.HTTP,
"request_path": "healthcheck.aspx",
}],
resource_group_name="rg1",
sku={
"name": azure_native.network.LoadBalancerSkuName.STANDARD,
})
resources:
loadBalancer:
type: azure-native:network:LoadBalancer
properties:
backendAddressPools:
- name: be-lb
frontendIPConfigurations:
- gatewayLoadBalancer:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb-provider
name: fe-lb
subnet:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb
inboundNatPools: []
inboundNatRules:
- backendPort: 3389
enableFloatingIP: true
frontendIPConfiguration:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb
frontendPort: 3389
idleTimeoutInMinutes: 15
name: in-nat-rule
protocol: Tcp
loadBalancerName: lb
loadBalancingRules:
- backendAddressPool:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb
backendPort: 80
enableFloatingIP: true
frontendIPConfiguration:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb
frontendPort: 80
idleTimeoutInMinutes: 15
loadDistribution: Default
name: rulelb
probe:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb
protocol: Tcp
location: eastus
outboundRules: []
probes:
- intervalInSeconds: 15
name: probe-lb
numberOfProbes: 2
port: 80
probeThreshold: 1
protocol: Http
requestPath: healthcheck.aspx
resourceGroupName: rg1
sku:
name: Standard
Create load balancer with Gateway Load Balancer Provider configured with one Backend Pool
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var loadBalancer = new AzureNative.Network.LoadBalancer("loadBalancer", new()
{
BackendAddressPools = new[]
{
new AzureNative.Network.Inputs.BackendAddressPoolArgs
{
Name = "be-lb",
TunnelInterfaces = new[]
{
new AzureNative.Network.Inputs.GatewayLoadBalancerTunnelInterfaceArgs
{
Identifier = 900,
Port = 15000,
Protocol = AzureNative.Network.GatewayLoadBalancerTunnelProtocol.VXLAN,
Type = AzureNative.Network.GatewayLoadBalancerTunnelInterfaceType.Internal,
},
new AzureNative.Network.Inputs.GatewayLoadBalancerTunnelInterfaceArgs
{
Identifier = 901,
Port = 15001,
Protocol = AzureNative.Network.GatewayLoadBalancerTunnelProtocol.VXLAN,
Type = AzureNative.Network.GatewayLoadBalancerTunnelInterfaceType.Internal,
},
},
},
},
FrontendIPConfigurations = new[]
{
new AzureNative.Network.Inputs.FrontendIPConfigurationArgs
{
Name = "fe-lb",
Subnet = new AzureNative.Network.Inputs.SubnetArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
},
},
InboundNatPools = new[] {},
LoadBalancerName = "lb",
LoadBalancingRules = new[]
{
new AzureNative.Network.Inputs.LoadBalancingRuleArgs
{
BackendAddressPools = new[]
{
new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
},
BackendPort = 0,
EnableFloatingIP = true,
FrontendIPConfiguration = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
FrontendPort = 0,
IdleTimeoutInMinutes = 15,
LoadDistribution = AzureNative.Network.LoadDistribution.Default,
Name = "rulelb",
Probe = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
Protocol = AzureNative.Network.TransportProtocol.All,
},
},
Location = "eastus",
OutboundRules = new[] {},
Probes = new[]
{
new AzureNative.Network.Inputs.ProbeArgs
{
IntervalInSeconds = 15,
Name = "probe-lb",
NumberOfProbes = 2,
Port = 80,
ProbeThreshold = 1,
Protocol = AzureNative.Network.ProbeProtocol.Http,
RequestPath = "healthcheck.aspx",
},
},
ResourceGroupName = "rg1",
Sku = new AzureNative.Network.Inputs.LoadBalancerSkuArgs
{
Name = "Premium",
},
});
});
package main
import (
network "github.com/pulumi/pulumi-azure-native-sdk/network/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := network.NewLoadBalancer(ctx, "loadBalancer", &network.LoadBalancerArgs{
BackendAddressPools: network.BackendAddressPoolArray{
&network.BackendAddressPoolArgs{
Name: pulumi.String("be-lb"),
TunnelInterfaces: network.GatewayLoadBalancerTunnelInterfaceArray{
&network.GatewayLoadBalancerTunnelInterfaceArgs{
Identifier: pulumi.Int(900),
Port: pulumi.Int(15000),
Protocol: pulumi.String(network.GatewayLoadBalancerTunnelProtocolVXLAN),
Type: pulumi.String(network.GatewayLoadBalancerTunnelInterfaceTypeInternal),
},
&network.GatewayLoadBalancerTunnelInterfaceArgs{
Identifier: pulumi.Int(901),
Port: pulumi.Int(15001),
Protocol: pulumi.String(network.GatewayLoadBalancerTunnelProtocolVXLAN),
Type: pulumi.String(network.GatewayLoadBalancerTunnelInterfaceTypeInternal),
},
},
},
},
FrontendIPConfigurations: network.FrontendIPConfigurationArray{
&network.FrontendIPConfigurationArgs{
Name: pulumi.String("fe-lb"),
Subnet: &network.SubnetTypeArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"),
},
},
},
InboundNatPools: network.InboundNatPoolArray{},
LoadBalancerName: pulumi.String("lb"),
LoadBalancingRules: network.LoadBalancingRuleArray{
&network.LoadBalancingRuleArgs{
BackendAddressPools: network.SubResourceArray{
&network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb"),
},
},
BackendPort: pulumi.Int(0),
EnableFloatingIP: pulumi.Bool(true),
FrontendIPConfiguration: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"),
},
FrontendPort: pulumi.Int(0),
IdleTimeoutInMinutes: pulumi.Int(15),
LoadDistribution: pulumi.String(network.LoadDistributionDefault),
Name: pulumi.String("rulelb"),
Probe: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb"),
},
Protocol: pulumi.String(network.TransportProtocolAll),
},
},
Location: pulumi.String("eastus"),
OutboundRules: network.OutboundRuleArray{},
Probes: network.ProbeArray{
&network.ProbeArgs{
IntervalInSeconds: pulumi.Int(15),
Name: pulumi.String("probe-lb"),
NumberOfProbes: pulumi.Int(2),
Port: pulumi.Int(80),
ProbeThreshold: pulumi.Int(1),
Protocol: pulumi.String(network.ProbeProtocolHttp),
RequestPath: pulumi.String("healthcheck.aspx"),
},
},
ResourceGroupName: pulumi.String("rg1"),
Sku: &network.LoadBalancerSkuArgs{
Name: pulumi.String("Premium"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.network.LoadBalancer;
import com.pulumi.azurenative.network.LoadBalancerArgs;
import com.pulumi.azurenative.network.inputs.BackendAddressPoolArgs;
import com.pulumi.azurenative.network.inputs.FrontendIPConfigurationArgs;
import com.pulumi.azurenative.network.inputs.SubnetArgs;
import com.pulumi.azurenative.network.inputs.LoadBalancingRuleArgs;
import com.pulumi.azurenative.network.inputs.SubResourceArgs;
import com.pulumi.azurenative.network.inputs.ProbeArgs;
import com.pulumi.azurenative.network.inputs.LoadBalancerSkuArgs;
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 loadBalancer = new LoadBalancer("loadBalancer", LoadBalancerArgs.builder()
.backendAddressPools(BackendAddressPoolArgs.builder()
.name("be-lb")
.tunnelInterfaces(
GatewayLoadBalancerTunnelInterfaceArgs.builder()
.identifier(900)
.port(15000)
.protocol("VXLAN")
.type("Internal")
.build(),
GatewayLoadBalancerTunnelInterfaceArgs.builder()
.identifier(901)
.port(15001)
.protocol("VXLAN")
.type("Internal")
.build())
.build())
.frontendIPConfigurations(FrontendIPConfigurationArgs.builder()
.name("fe-lb")
.subnet(SubnetArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb")
.build())
.build())
.inboundNatPools()
.loadBalancerName("lb")
.loadBalancingRules(LoadBalancingRuleArgs.builder()
.backendAddressPools(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb")
.build())
.backendPort(0)
.enableFloatingIP(true)
.frontendIPConfiguration(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb")
.build())
.frontendPort(0)
.idleTimeoutInMinutes(15)
.loadDistribution("Default")
.name("rulelb")
.probe(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb")
.build())
.protocol("All")
.build())
.location("eastus")
.outboundRules()
.probes(ProbeArgs.builder()
.intervalInSeconds(15)
.name("probe-lb")
.numberOfProbes(2)
.port(80)
.probeThreshold(1)
.protocol("Http")
.requestPath("healthcheck.aspx")
.build())
.resourceGroupName("rg1")
.sku(LoadBalancerSkuArgs.builder()
.name("Premium")
.build())
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const loadBalancer = new azure_native.network.LoadBalancer("loadBalancer", {
backendAddressPools: [{
name: "be-lb",
tunnelInterfaces: [
{
identifier: 900,
port: 15000,
protocol: azure_native.network.GatewayLoadBalancerTunnelProtocol.VXLAN,
type: azure_native.network.GatewayLoadBalancerTunnelInterfaceType.Internal,
},
{
identifier: 901,
port: 15001,
protocol: azure_native.network.GatewayLoadBalancerTunnelProtocol.VXLAN,
type: azure_native.network.GatewayLoadBalancerTunnelInterfaceType.Internal,
},
],
}],
frontendIPConfigurations: [{
name: "fe-lb",
subnet: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
}],
inboundNatPools: [],
loadBalancerName: "lb",
loadBalancingRules: [{
backendAddressPools: [{
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
}],
backendPort: 0,
enableFloatingIP: true,
frontendIPConfiguration: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
frontendPort: 0,
idleTimeoutInMinutes: 15,
loadDistribution: azure_native.network.LoadDistribution.Default,
name: "rulelb",
probe: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
protocol: azure_native.network.TransportProtocol.All,
}],
location: "eastus",
outboundRules: [],
probes: [{
intervalInSeconds: 15,
name: "probe-lb",
numberOfProbes: 2,
port: 80,
probeThreshold: 1,
protocol: azure_native.network.ProbeProtocol.Http,
requestPath: "healthcheck.aspx",
}],
resourceGroupName: "rg1",
sku: {
name: "Premium",
},
});
import pulumi
import pulumi_azure_native as azure_native
load_balancer = azure_native.network.LoadBalancer("loadBalancer",
backend_address_pools=[{
"name": "be-lb",
"tunnel_interfaces": [
{
"identifier": 900,
"port": 15000,
"protocol": azure_native.network.GatewayLoadBalancerTunnelProtocol.VXLAN,
"type": azure_native.network.GatewayLoadBalancerTunnelInterfaceType.INTERNAL,
},
{
"identifier": 901,
"port": 15001,
"protocol": azure_native.network.GatewayLoadBalancerTunnelProtocol.VXLAN,
"type": azure_native.network.GatewayLoadBalancerTunnelInterfaceType.INTERNAL,
},
],
}],
frontend_ip_configurations=[{
"name": "fe-lb",
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
}],
inbound_nat_pools=[],
load_balancer_name="lb",
load_balancing_rules=[{
"backend_address_pools": [{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
}],
"backend_port": 0,
"enable_floating_ip": True,
"frontend_ip_configuration": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
"frontend_port": 0,
"idle_timeout_in_minutes": 15,
"load_distribution": azure_native.network.LoadDistribution.DEFAULT,
"name": "rulelb",
"probe": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
"protocol": azure_native.network.TransportProtocol.ALL,
}],
location="eastus",
outbound_rules=[],
probes=[{
"interval_in_seconds": 15,
"name": "probe-lb",
"number_of_probes": 2,
"port": 80,
"probe_threshold": 1,
"protocol": azure_native.network.ProbeProtocol.HTTP,
"request_path": "healthcheck.aspx",
}],
resource_group_name="rg1",
sku={
"name": "Premium",
})
resources:
loadBalancer:
type: azure-native:network:LoadBalancer
properties:
backendAddressPools:
- name: be-lb
tunnelInterfaces:
- identifier: 900
port: 15000
protocol: VXLAN
type: Internal
- identifier: 901
port: 15001
protocol: VXLAN
type: Internal
frontendIPConfigurations:
- name: fe-lb
subnet:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb
inboundNatPools: []
loadBalancerName: lb
loadBalancingRules:
- backendAddressPools:
- id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb
backendPort: 0
enableFloatingIP: true
frontendIPConfiguration:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb
frontendPort: 0
idleTimeoutInMinutes: 15
loadDistribution: Default
name: rulelb
probe:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb
protocol: All
location: eastus
outboundRules: []
probes:
- intervalInSeconds: 15
name: probe-lb
numberOfProbes: 2
port: 80
probeThreshold: 1
protocol: Http
requestPath: healthcheck.aspx
resourceGroupName: rg1
sku:
name: Premium
Create load balancer with Gateway Load Balancer Provider configured with two Backend Pool
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var loadBalancer = new AzureNative.Network.LoadBalancer("loadBalancer", new()
{
BackendAddressPools = new[]
{
new AzureNative.Network.Inputs.BackendAddressPoolArgs
{
Name = "be-lb1",
},
new AzureNative.Network.Inputs.BackendAddressPoolArgs
{
Name = "be-lb2",
},
},
FrontendIPConfigurations = new[]
{
new AzureNative.Network.Inputs.FrontendIPConfigurationArgs
{
Name = "fe-lb",
Subnet = new AzureNative.Network.Inputs.SubnetArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
},
},
InboundNatPools = new[] {},
LoadBalancerName = "lb",
LoadBalancingRules = new[]
{
new AzureNative.Network.Inputs.LoadBalancingRuleArgs
{
BackendAddressPool = null,
BackendAddressPools = new[]
{
new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb1",
},
new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb2",
},
},
BackendPort = 0,
EnableFloatingIP = true,
FrontendIPConfiguration = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
FrontendPort = 0,
IdleTimeoutInMinutes = 15,
LoadDistribution = AzureNative.Network.LoadDistribution.Default,
Name = "rulelb",
Probe = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
Protocol = AzureNative.Network.TransportProtocol.All,
},
},
Location = "eastus",
OutboundRules = new[] {},
Probes = new[]
{
new AzureNative.Network.Inputs.ProbeArgs
{
IntervalInSeconds = 15,
Name = "probe-lb",
NumberOfProbes = 2,
Port = 80,
ProbeThreshold = 1,
Protocol = AzureNative.Network.ProbeProtocol.Http,
RequestPath = "healthcheck.aspx",
},
},
ResourceGroupName = "rg1",
Sku = new AzureNative.Network.Inputs.LoadBalancerSkuArgs
{
Name = "Premium",
},
});
});
package main
import (
network "github.com/pulumi/pulumi-azure-native-sdk/network/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := network.NewLoadBalancer(ctx, "loadBalancer", &network.LoadBalancerArgs{
BackendAddressPools: network.BackendAddressPoolArray{
&network.BackendAddressPoolArgs{
Name: pulumi.String("be-lb1"),
},
&network.BackendAddressPoolArgs{
Name: pulumi.String("be-lb2"),
},
},
FrontendIPConfigurations: network.FrontendIPConfigurationArray{
&network.FrontendIPConfigurationArgs{
Name: pulumi.String("fe-lb"),
Subnet: &network.SubnetTypeArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"),
},
},
},
InboundNatPools: network.InboundNatPoolArray{},
LoadBalancerName: pulumi.String("lb"),
LoadBalancingRules: network.LoadBalancingRuleArray{
&network.LoadBalancingRuleArgs{
BackendAddressPool: &network.SubResourceArgs{},
BackendAddressPools: network.SubResourceArray{
&network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb1"),
},
&network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb2"),
},
},
BackendPort: pulumi.Int(0),
EnableFloatingIP: pulumi.Bool(true),
FrontendIPConfiguration: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"),
},
FrontendPort: pulumi.Int(0),
IdleTimeoutInMinutes: pulumi.Int(15),
LoadDistribution: pulumi.String(network.LoadDistributionDefault),
Name: pulumi.String("rulelb"),
Probe: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb"),
},
Protocol: pulumi.String(network.TransportProtocolAll),
},
},
Location: pulumi.String("eastus"),
OutboundRules: network.OutboundRuleArray{},
Probes: network.ProbeArray{
&network.ProbeArgs{
IntervalInSeconds: pulumi.Int(15),
Name: pulumi.String("probe-lb"),
NumberOfProbes: pulumi.Int(2),
Port: pulumi.Int(80),
ProbeThreshold: pulumi.Int(1),
Protocol: pulumi.String(network.ProbeProtocolHttp),
RequestPath: pulumi.String("healthcheck.aspx"),
},
},
ResourceGroupName: pulumi.String("rg1"),
Sku: &network.LoadBalancerSkuArgs{
Name: pulumi.String("Premium"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.network.LoadBalancer;
import com.pulumi.azurenative.network.LoadBalancerArgs;
import com.pulumi.azurenative.network.inputs.BackendAddressPoolArgs;
import com.pulumi.azurenative.network.inputs.FrontendIPConfigurationArgs;
import com.pulumi.azurenative.network.inputs.SubnetArgs;
import com.pulumi.azurenative.network.inputs.LoadBalancingRuleArgs;
import com.pulumi.azurenative.network.inputs.SubResourceArgs;
import com.pulumi.azurenative.network.inputs.ProbeArgs;
import com.pulumi.azurenative.network.inputs.LoadBalancerSkuArgs;
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 loadBalancer = new LoadBalancer("loadBalancer", LoadBalancerArgs.builder()
.backendAddressPools(
BackendAddressPoolArgs.builder()
.name("be-lb1")
.build(),
BackendAddressPoolArgs.builder()
.name("be-lb2")
.build())
.frontendIPConfigurations(FrontendIPConfigurationArgs.builder()
.name("fe-lb")
.subnet(SubnetArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb")
.build())
.build())
.inboundNatPools()
.loadBalancerName("lb")
.loadBalancingRules(LoadBalancingRuleArgs.builder()
.backendAddressPool()
.backendAddressPools(
SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb1")
.build(),
SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb2")
.build())
.backendPort(0)
.enableFloatingIP(true)
.frontendIPConfiguration(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb")
.build())
.frontendPort(0)
.idleTimeoutInMinutes(15)
.loadDistribution("Default")
.name("rulelb")
.probe(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb")
.build())
.protocol("All")
.build())
.location("eastus")
.outboundRules()
.probes(ProbeArgs.builder()
.intervalInSeconds(15)
.name("probe-lb")
.numberOfProbes(2)
.port(80)
.probeThreshold(1)
.protocol("Http")
.requestPath("healthcheck.aspx")
.build())
.resourceGroupName("rg1")
.sku(LoadBalancerSkuArgs.builder()
.name("Premium")
.build())
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const loadBalancer = new azure_native.network.LoadBalancer("loadBalancer", {
backendAddressPools: [
{
name: "be-lb1",
},
{
name: "be-lb2",
},
],
frontendIPConfigurations: [{
name: "fe-lb",
subnet: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
}],
inboundNatPools: [],
loadBalancerName: "lb",
loadBalancingRules: [{
backendAddressPool: {},
backendAddressPools: [
{
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb1",
},
{
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb2",
},
],
backendPort: 0,
enableFloatingIP: true,
frontendIPConfiguration: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
frontendPort: 0,
idleTimeoutInMinutes: 15,
loadDistribution: azure_native.network.LoadDistribution.Default,
name: "rulelb",
probe: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
protocol: azure_native.network.TransportProtocol.All,
}],
location: "eastus",
outboundRules: [],
probes: [{
intervalInSeconds: 15,
name: "probe-lb",
numberOfProbes: 2,
port: 80,
probeThreshold: 1,
protocol: azure_native.network.ProbeProtocol.Http,
requestPath: "healthcheck.aspx",
}],
resourceGroupName: "rg1",
sku: {
name: "Premium",
},
});
import pulumi
import pulumi_azure_native as azure_native
load_balancer = azure_native.network.LoadBalancer("loadBalancer",
backend_address_pools=[
{
"name": "be-lb1",
},
{
"name": "be-lb2",
},
],
frontend_ip_configurations=[{
"name": "fe-lb",
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
}],
inbound_nat_pools=[],
load_balancer_name="lb",
load_balancing_rules=[{
"backend_address_pool": {},
"backend_address_pools": [
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb1",
},
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb2",
},
],
"backend_port": 0,
"enable_floating_ip": True,
"frontend_ip_configuration": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
"frontend_port": 0,
"idle_timeout_in_minutes": 15,
"load_distribution": azure_native.network.LoadDistribution.DEFAULT,
"name": "rulelb",
"probe": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
"protocol": azure_native.network.TransportProtocol.ALL,
}],
location="eastus",
outbound_rules=[],
probes=[{
"interval_in_seconds": 15,
"name": "probe-lb",
"number_of_probes": 2,
"port": 80,
"probe_threshold": 1,
"protocol": azure_native.network.ProbeProtocol.HTTP,
"request_path": "healthcheck.aspx",
}],
resource_group_name="rg1",
sku={
"name": "Premium",
})
resources:
loadBalancer:
type: azure-native:network:LoadBalancer
properties:
backendAddressPools:
- name: be-lb1
- name: be-lb2
frontendIPConfigurations:
- name: fe-lb
subnet:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb
inboundNatPools: []
loadBalancerName: lb
loadBalancingRules:
- backendAddressPool: {}
backendAddressPools:
- id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb1
- id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb2
backendPort: 0
enableFloatingIP: true
frontendIPConfiguration:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb
frontendPort: 0
idleTimeoutInMinutes: 15
loadDistribution: Default
name: rulelb
probe:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb
protocol: All
location: eastus
outboundRules: []
probes:
- intervalInSeconds: 15
name: probe-lb
numberOfProbes: 2
port: 80
probeThreshold: 1
protocol: Http
requestPath: healthcheck.aspx
resourceGroupName: rg1
sku:
name: Premium
Create load balancer with Global Tier and one regional load balancer in its backend pool
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var loadBalancer = new AzureNative.Network.LoadBalancer("loadBalancer", new()
{
BackendAddressPools = new[]
{
new AzureNative.Network.Inputs.BackendAddressPoolArgs
{
LoadBalancerBackendAddresses = new[]
{
new AzureNative.Network.Inputs.LoadBalancerBackendAddressArgs
{
LoadBalancerFrontendIPConfiguration = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/regional-lb-rg1/providers/Microsoft.Network/loadBalancers/regional-lb/frontendIPConfigurations/fe-rlb",
},
Name = "regional-lb1-address",
},
},
Name = "be-lb",
},
},
FrontendIPConfigurations = new[]
{
new AzureNative.Network.Inputs.FrontendIPConfigurationArgs
{
Name = "fe-lb",
Subnet = new AzureNative.Network.Inputs.SubnetArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
},
},
LoadBalancerName = "lb",
LoadBalancingRules = new[]
{
new AzureNative.Network.Inputs.LoadBalancingRuleArgs
{
BackendAddressPool = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
BackendPort = 80,
EnableFloatingIP = false,
FrontendIPConfiguration = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
FrontendPort = 80,
IdleTimeoutInMinutes = 15,
LoadDistribution = AzureNative.Network.LoadDistribution.Default,
Name = "rulelb",
Probe = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
Protocol = AzureNative.Network.TransportProtocol.Tcp,
},
},
Location = "eastus",
Probes = new[]
{
new AzureNative.Network.Inputs.ProbeArgs
{
IntervalInSeconds = 15,
Name = "probe-lb",
NumberOfProbes = 2,
Port = 80,
ProbeThreshold = 1,
Protocol = AzureNative.Network.ProbeProtocol.Http,
RequestPath = "healthcheck.aspx",
},
},
ResourceGroupName = "rg1",
Sku = new AzureNative.Network.Inputs.LoadBalancerSkuArgs
{
Name = AzureNative.Network.LoadBalancerSkuName.Standard,
Tier = AzureNative.Network.LoadBalancerSkuTier.Global,
},
});
});
package main
import (
network "github.com/pulumi/pulumi-azure-native-sdk/network/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := network.NewLoadBalancer(ctx, "loadBalancer", &network.LoadBalancerArgs{
BackendAddressPools: network.BackendAddressPoolArray{
&network.BackendAddressPoolArgs{
LoadBalancerBackendAddresses: network.LoadBalancerBackendAddressArray{
&network.LoadBalancerBackendAddressArgs{
LoadBalancerFrontendIPConfiguration: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/regional-lb-rg1/providers/Microsoft.Network/loadBalancers/regional-lb/frontendIPConfigurations/fe-rlb"),
},
Name: pulumi.String("regional-lb1-address"),
},
},
Name: pulumi.String("be-lb"),
},
},
FrontendIPConfigurations: network.FrontendIPConfigurationArray{
&network.FrontendIPConfigurationArgs{
Name: pulumi.String("fe-lb"),
Subnet: &network.SubnetTypeArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"),
},
},
},
LoadBalancerName: pulumi.String("lb"),
LoadBalancingRules: network.LoadBalancingRuleArray{
&network.LoadBalancingRuleArgs{
BackendAddressPool: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb"),
},
BackendPort: pulumi.Int(80),
EnableFloatingIP: pulumi.Bool(false),
FrontendIPConfiguration: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"),
},
FrontendPort: pulumi.Int(80),
IdleTimeoutInMinutes: pulumi.Int(15),
LoadDistribution: pulumi.String(network.LoadDistributionDefault),
Name: pulumi.String("rulelb"),
Probe: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb"),
},
Protocol: pulumi.String(network.TransportProtocolTcp),
},
},
Location: pulumi.String("eastus"),
Probes: network.ProbeArray{
&network.ProbeArgs{
IntervalInSeconds: pulumi.Int(15),
Name: pulumi.String("probe-lb"),
NumberOfProbes: pulumi.Int(2),
Port: pulumi.Int(80),
ProbeThreshold: pulumi.Int(1),
Protocol: pulumi.String(network.ProbeProtocolHttp),
RequestPath: pulumi.String("healthcheck.aspx"),
},
},
ResourceGroupName: pulumi.String("rg1"),
Sku: &network.LoadBalancerSkuArgs{
Name: pulumi.String(network.LoadBalancerSkuNameStandard),
Tier: pulumi.String(network.LoadBalancerSkuTierGlobal),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.network.LoadBalancer;
import com.pulumi.azurenative.network.LoadBalancerArgs;
import com.pulumi.azurenative.network.inputs.BackendAddressPoolArgs;
import com.pulumi.azurenative.network.inputs.FrontendIPConfigurationArgs;
import com.pulumi.azurenative.network.inputs.SubnetArgs;
import com.pulumi.azurenative.network.inputs.LoadBalancingRuleArgs;
import com.pulumi.azurenative.network.inputs.SubResourceArgs;
import com.pulumi.azurenative.network.inputs.ProbeArgs;
import com.pulumi.azurenative.network.inputs.LoadBalancerSkuArgs;
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 loadBalancer = new LoadBalancer("loadBalancer", LoadBalancerArgs.builder()
.backendAddressPools(BackendAddressPoolArgs.builder()
.loadBalancerBackendAddresses(LoadBalancerBackendAddressArgs.builder()
.loadBalancerFrontendIPConfiguration(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/regional-lb-rg1/providers/Microsoft.Network/loadBalancers/regional-lb/frontendIPConfigurations/fe-rlb")
.build())
.name("regional-lb1-address")
.build())
.name("be-lb")
.build())
.frontendIPConfigurations(FrontendIPConfigurationArgs.builder()
.name("fe-lb")
.subnet(SubnetArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb")
.build())
.build())
.loadBalancerName("lb")
.loadBalancingRules(LoadBalancingRuleArgs.builder()
.backendAddressPool(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb")
.build())
.backendPort(80)
.enableFloatingIP(false)
.frontendIPConfiguration(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb")
.build())
.frontendPort(80)
.idleTimeoutInMinutes(15)
.loadDistribution("Default")
.name("rulelb")
.probe(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb")
.build())
.protocol("Tcp")
.build())
.location("eastus")
.probes(ProbeArgs.builder()
.intervalInSeconds(15)
.name("probe-lb")
.numberOfProbes(2)
.port(80)
.probeThreshold(1)
.protocol("Http")
.requestPath("healthcheck.aspx")
.build())
.resourceGroupName("rg1")
.sku(LoadBalancerSkuArgs.builder()
.name("Standard")
.tier("Global")
.build())
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const loadBalancer = new azure_native.network.LoadBalancer("loadBalancer", {
backendAddressPools: [{
loadBalancerBackendAddresses: [{
loadBalancerFrontendIPConfiguration: {
id: "/subscriptions/subid/resourceGroups/regional-lb-rg1/providers/Microsoft.Network/loadBalancers/regional-lb/frontendIPConfigurations/fe-rlb",
},
name: "regional-lb1-address",
}],
name: "be-lb",
}],
frontendIPConfigurations: [{
name: "fe-lb",
subnet: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
}],
loadBalancerName: "lb",
loadBalancingRules: [{
backendAddressPool: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
backendPort: 80,
enableFloatingIP: false,
frontendIPConfiguration: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
frontendPort: 80,
idleTimeoutInMinutes: 15,
loadDistribution: azure_native.network.LoadDistribution.Default,
name: "rulelb",
probe: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
protocol: azure_native.network.TransportProtocol.Tcp,
}],
location: "eastus",
probes: [{
intervalInSeconds: 15,
name: "probe-lb",
numberOfProbes: 2,
port: 80,
probeThreshold: 1,
protocol: azure_native.network.ProbeProtocol.Http,
requestPath: "healthcheck.aspx",
}],
resourceGroupName: "rg1",
sku: {
name: azure_native.network.LoadBalancerSkuName.Standard,
tier: azure_native.network.LoadBalancerSkuTier.Global,
},
});
import pulumi
import pulumi_azure_native as azure_native
load_balancer = azure_native.network.LoadBalancer("loadBalancer",
backend_address_pools=[{
"load_balancer_backend_addresses": [{
"load_balancer_frontend_ip_configuration": {
"id": "/subscriptions/subid/resourceGroups/regional-lb-rg1/providers/Microsoft.Network/loadBalancers/regional-lb/frontendIPConfigurations/fe-rlb",
},
"name": "regional-lb1-address",
}],
"name": "be-lb",
}],
frontend_ip_configurations=[{
"name": "fe-lb",
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
}],
load_balancer_name="lb",
load_balancing_rules=[{
"backend_address_pool": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
"backend_port": 80,
"enable_floating_ip": False,
"frontend_ip_configuration": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
"frontend_port": 80,
"idle_timeout_in_minutes": 15,
"load_distribution": azure_native.network.LoadDistribution.DEFAULT,
"name": "rulelb",
"probe": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
"protocol": azure_native.network.TransportProtocol.TCP,
}],
location="eastus",
probes=[{
"interval_in_seconds": 15,
"name": "probe-lb",
"number_of_probes": 2,
"port": 80,
"probe_threshold": 1,
"protocol": azure_native.network.ProbeProtocol.HTTP,
"request_path": "healthcheck.aspx",
}],
resource_group_name="rg1",
sku={
"name": azure_native.network.LoadBalancerSkuName.STANDARD,
"tier": azure_native.network.LoadBalancerSkuTier.GLOBAL_,
})
resources:
loadBalancer:
type: azure-native:network:LoadBalancer
properties:
backendAddressPools:
- loadBalancerBackendAddresses:
- loadBalancerFrontendIPConfiguration:
id: /subscriptions/subid/resourceGroups/regional-lb-rg1/providers/Microsoft.Network/loadBalancers/regional-lb/frontendIPConfigurations/fe-rlb
name: regional-lb1-address
name: be-lb
frontendIPConfigurations:
- name: fe-lb
subnet:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb
loadBalancerName: lb
loadBalancingRules:
- backendAddressPool:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb
backendPort: 80
enableFloatingIP: false
frontendIPConfiguration:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb
frontendPort: 80
idleTimeoutInMinutes: 15
loadDistribution: Default
name: rulelb
probe:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb
protocol: Tcp
location: eastus
probes:
- intervalInSeconds: 15
name: probe-lb
numberOfProbes: 2
port: 80
probeThreshold: 1
protocol: Http
requestPath: healthcheck.aspx
resourceGroupName: rg1
sku:
name: Standard
tier: Global
Create load balancer with Standard SKU
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var loadBalancer = new AzureNative.Network.LoadBalancer("loadBalancer", new()
{
BackendAddressPools = new[]
{
new AzureNative.Network.Inputs.BackendAddressPoolArgs
{
Name = "be-lb",
},
},
FrontendIPConfigurations = new[]
{
new AzureNative.Network.Inputs.FrontendIPConfigurationArgs
{
Name = "fe-lb",
Subnet = new AzureNative.Network.Inputs.SubnetArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
},
},
InboundNatPools = new[] {},
InboundNatRules = new[]
{
new AzureNative.Network.Inputs.InboundNatRuleArgs
{
BackendPort = 3389,
EnableFloatingIP = true,
FrontendIPConfiguration = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
FrontendPort = 3389,
IdleTimeoutInMinutes = 15,
Name = "in-nat-rule",
Protocol = AzureNative.Network.TransportProtocol.Tcp,
},
},
LoadBalancerName = "lb",
LoadBalancingRules = new[]
{
new AzureNative.Network.Inputs.LoadBalancingRuleArgs
{
BackendAddressPool = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
BackendPort = 80,
EnableFloatingIP = true,
FrontendIPConfiguration = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
FrontendPort = 80,
IdleTimeoutInMinutes = 15,
LoadDistribution = AzureNative.Network.LoadDistribution.Default,
Name = "rulelb",
Probe = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
Protocol = AzureNative.Network.TransportProtocol.Tcp,
},
},
Location = "eastus",
OutboundRules = new[] {},
Probes = new[]
{
new AzureNative.Network.Inputs.ProbeArgs
{
IntervalInSeconds = 15,
Name = "probe-lb",
NumberOfProbes = 2,
Port = 80,
ProbeThreshold = 1,
Protocol = AzureNative.Network.ProbeProtocol.Http,
RequestPath = "healthcheck.aspx",
},
},
ResourceGroupName = "rg1",
Sku = new AzureNative.Network.Inputs.LoadBalancerSkuArgs
{
Name = AzureNative.Network.LoadBalancerSkuName.Standard,
},
});
});
package main
import (
network "github.com/pulumi/pulumi-azure-native-sdk/network/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := network.NewLoadBalancer(ctx, "loadBalancer", &network.LoadBalancerArgs{
BackendAddressPools: network.BackendAddressPoolArray{
&network.BackendAddressPoolArgs{
Name: pulumi.String("be-lb"),
},
},
FrontendIPConfigurations: network.FrontendIPConfigurationArray{
&network.FrontendIPConfigurationArgs{
Name: pulumi.String("fe-lb"),
Subnet: &network.SubnetTypeArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"),
},
},
},
InboundNatPools: network.InboundNatPoolArray{},
InboundNatRules: network.InboundNatRuleTypeArray{
&network.InboundNatRuleTypeArgs{
BackendPort: pulumi.Int(3389),
EnableFloatingIP: pulumi.Bool(true),
FrontendIPConfiguration: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"),
},
FrontendPort: pulumi.Int(3389),
IdleTimeoutInMinutes: pulumi.Int(15),
Name: pulumi.String("in-nat-rule"),
Protocol: pulumi.String(network.TransportProtocolTcp),
},
},
LoadBalancerName: pulumi.String("lb"),
LoadBalancingRules: network.LoadBalancingRuleArray{
&network.LoadBalancingRuleArgs{
BackendAddressPool: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb"),
},
BackendPort: pulumi.Int(80),
EnableFloatingIP: pulumi.Bool(true),
FrontendIPConfiguration: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"),
},
FrontendPort: pulumi.Int(80),
IdleTimeoutInMinutes: pulumi.Int(15),
LoadDistribution: pulumi.String(network.LoadDistributionDefault),
Name: pulumi.String("rulelb"),
Probe: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb"),
},
Protocol: pulumi.String(network.TransportProtocolTcp),
},
},
Location: pulumi.String("eastus"),
OutboundRules: network.OutboundRuleArray{},
Probes: network.ProbeArray{
&network.ProbeArgs{
IntervalInSeconds: pulumi.Int(15),
Name: pulumi.String("probe-lb"),
NumberOfProbes: pulumi.Int(2),
Port: pulumi.Int(80),
ProbeThreshold: pulumi.Int(1),
Protocol: pulumi.String(network.ProbeProtocolHttp),
RequestPath: pulumi.String("healthcheck.aspx"),
},
},
ResourceGroupName: pulumi.String("rg1"),
Sku: &network.LoadBalancerSkuArgs{
Name: pulumi.String(network.LoadBalancerSkuNameStandard),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.network.LoadBalancer;
import com.pulumi.azurenative.network.LoadBalancerArgs;
import com.pulumi.azurenative.network.inputs.BackendAddressPoolArgs;
import com.pulumi.azurenative.network.inputs.FrontendIPConfigurationArgs;
import com.pulumi.azurenative.network.inputs.SubnetArgs;
import com.pulumi.azurenative.network.inputs.InboundNatRuleArgs;
import com.pulumi.azurenative.network.inputs.SubResourceArgs;
import com.pulumi.azurenative.network.inputs.LoadBalancingRuleArgs;
import com.pulumi.azurenative.network.inputs.ProbeArgs;
import com.pulumi.azurenative.network.inputs.LoadBalancerSkuArgs;
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 loadBalancer = new LoadBalancer("loadBalancer", LoadBalancerArgs.builder()
.backendAddressPools(BackendAddressPoolArgs.builder()
.name("be-lb")
.build())
.frontendIPConfigurations(FrontendIPConfigurationArgs.builder()
.name("fe-lb")
.subnet(SubnetArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb")
.build())
.build())
.inboundNatPools()
.inboundNatRules(InboundNatRuleArgs.builder()
.backendPort(3389)
.enableFloatingIP(true)
.frontendIPConfiguration(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb")
.build())
.frontendPort(3389)
.idleTimeoutInMinutes(15)
.name("in-nat-rule")
.protocol("Tcp")
.build())
.loadBalancerName("lb")
.loadBalancingRules(LoadBalancingRuleArgs.builder()
.backendAddressPool(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb")
.build())
.backendPort(80)
.enableFloatingIP(true)
.frontendIPConfiguration(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb")
.build())
.frontendPort(80)
.idleTimeoutInMinutes(15)
.loadDistribution("Default")
.name("rulelb")
.probe(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb")
.build())
.protocol("Tcp")
.build())
.location("eastus")
.outboundRules()
.probes(ProbeArgs.builder()
.intervalInSeconds(15)
.name("probe-lb")
.numberOfProbes(2)
.port(80)
.probeThreshold(1)
.protocol("Http")
.requestPath("healthcheck.aspx")
.build())
.resourceGroupName("rg1")
.sku(LoadBalancerSkuArgs.builder()
.name("Standard")
.build())
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const loadBalancer = new azure_native.network.LoadBalancer("loadBalancer", {
backendAddressPools: [{
name: "be-lb",
}],
frontendIPConfigurations: [{
name: "fe-lb",
subnet: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
}],
inboundNatPools: [],
inboundNatRules: [{
backendPort: 3389,
enableFloatingIP: true,
frontendIPConfiguration: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
frontendPort: 3389,
idleTimeoutInMinutes: 15,
name: "in-nat-rule",
protocol: azure_native.network.TransportProtocol.Tcp,
}],
loadBalancerName: "lb",
loadBalancingRules: [{
backendAddressPool: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
backendPort: 80,
enableFloatingIP: true,
frontendIPConfiguration: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
frontendPort: 80,
idleTimeoutInMinutes: 15,
loadDistribution: azure_native.network.LoadDistribution.Default,
name: "rulelb",
probe: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
protocol: azure_native.network.TransportProtocol.Tcp,
}],
location: "eastus",
outboundRules: [],
probes: [{
intervalInSeconds: 15,
name: "probe-lb",
numberOfProbes: 2,
port: 80,
probeThreshold: 1,
protocol: azure_native.network.ProbeProtocol.Http,
requestPath: "healthcheck.aspx",
}],
resourceGroupName: "rg1",
sku: {
name: azure_native.network.LoadBalancerSkuName.Standard,
},
});
import pulumi
import pulumi_azure_native as azure_native
load_balancer = azure_native.network.LoadBalancer("loadBalancer",
backend_address_pools=[{
"name": "be-lb",
}],
frontend_ip_configurations=[{
"name": "fe-lb",
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb",
},
}],
inbound_nat_pools=[],
inbound_nat_rules=[{
"backend_port": 3389,
"enable_floating_ip": True,
"frontend_ip_configuration": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
"frontend_port": 3389,
"idle_timeout_in_minutes": 15,
"name": "in-nat-rule",
"protocol": azure_native.network.TransportProtocol.TCP,
}],
load_balancer_name="lb",
load_balancing_rules=[{
"backend_address_pool": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
"backend_port": 80,
"enable_floating_ip": True,
"frontend_ip_configuration": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
"frontend_port": 80,
"idle_timeout_in_minutes": 15,
"load_distribution": azure_native.network.LoadDistribution.DEFAULT,
"name": "rulelb",
"probe": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
"protocol": azure_native.network.TransportProtocol.TCP,
}],
location="eastus",
outbound_rules=[],
probes=[{
"interval_in_seconds": 15,
"name": "probe-lb",
"number_of_probes": 2,
"port": 80,
"probe_threshold": 1,
"protocol": azure_native.network.ProbeProtocol.HTTP,
"request_path": "healthcheck.aspx",
}],
resource_group_name="rg1",
sku={
"name": azure_native.network.LoadBalancerSkuName.STANDARD,
})
resources:
loadBalancer:
type: azure-native:network:LoadBalancer
properties:
backendAddressPools:
- name: be-lb
frontendIPConfigurations:
- name: fe-lb
subnet:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb
inboundNatPools: []
inboundNatRules:
- backendPort: 3389
enableFloatingIP: true
frontendIPConfiguration:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb
frontendPort: 3389
idleTimeoutInMinutes: 15
name: in-nat-rule
protocol: Tcp
loadBalancerName: lb
loadBalancingRules:
- backendAddressPool:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb
backendPort: 80
enableFloatingIP: true
frontendIPConfiguration:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb
frontendPort: 80
idleTimeoutInMinutes: 15
loadDistribution: Default
name: rulelb
probe:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb
protocol: Tcp
location: eastus
outboundRules: []
probes:
- intervalInSeconds: 15
name: probe-lb
numberOfProbes: 2
port: 80
probeThreshold: 1
protocol: Http
requestPath: healthcheck.aspx
resourceGroupName: rg1
sku:
name: Standard
Create load balancer with inbound nat pool
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var loadBalancer = new AzureNative.Network.LoadBalancer("loadBalancer", new()
{
BackendAddressPools = new[] {},
FrontendIPConfigurations = new[]
{
new AzureNative.Network.Inputs.FrontendIPConfigurationArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test",
Name = "test",
PrivateIPAllocationMethod = AzureNative.Network.IPAllocationMethod.Dynamic,
Subnet = new AzureNative.Network.Inputs.SubnetArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet",
},
Zones = new() { },
},
},
InboundNatPools = new[]
{
new AzureNative.Network.Inputs.InboundNatPoolArgs
{
BackendPort = 8888,
EnableFloatingIP = true,
EnableTcpReset = true,
FrontendIPConfiguration = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test",
},
FrontendPortRangeEnd = 8085,
FrontendPortRangeStart = 8080,
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test",
IdleTimeoutInMinutes = 10,
Name = "test",
Protocol = AzureNative.Network.TransportProtocol.Tcp,
},
},
InboundNatRules = new[] {},
LoadBalancerName = "lb",
LoadBalancingRules = new[] {},
Location = "eastus",
OutboundRules = new[] {},
Probes = new[] {},
ResourceGroupName = "rg1",
Sku = new AzureNative.Network.Inputs.LoadBalancerSkuArgs
{
Name = AzureNative.Network.LoadBalancerSkuName.Standard,
},
});
});
package main
import (
network "github.com/pulumi/pulumi-azure-native-sdk/network/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := network.NewLoadBalancer(ctx, "loadBalancer", &network.LoadBalancerArgs{
BackendAddressPools: network.BackendAddressPoolArray{},
FrontendIPConfigurations: network.FrontendIPConfigurationArray{
&network.FrontendIPConfigurationArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test"),
Name: pulumi.String("test"),
PrivateIPAllocationMethod: pulumi.String(network.IPAllocationMethodDynamic),
Subnet: &network.SubnetTypeArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet"),
},
Zones: pulumi.StringArray{},
},
},
InboundNatPools: network.InboundNatPoolArray{
&network.InboundNatPoolArgs{
BackendPort: pulumi.Int(8888),
EnableFloatingIP: pulumi.Bool(true),
EnableTcpReset: pulumi.Bool(true),
FrontendIPConfiguration: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test"),
},
FrontendPortRangeEnd: pulumi.Int(8085),
FrontendPortRangeStart: pulumi.Int(8080),
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test"),
IdleTimeoutInMinutes: pulumi.Int(10),
Name: pulumi.String("test"),
Protocol: pulumi.String(network.TransportProtocolTcp),
},
},
InboundNatRules: network.InboundNatRuleTypeArray{},
LoadBalancerName: pulumi.String("lb"),
LoadBalancingRules: network.LoadBalancingRuleArray{},
Location: pulumi.String("eastus"),
OutboundRules: network.OutboundRuleArray{},
Probes: network.ProbeArray{},
ResourceGroupName: pulumi.String("rg1"),
Sku: &network.LoadBalancerSkuArgs{
Name: pulumi.String(network.LoadBalancerSkuNameStandard),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.network.LoadBalancer;
import com.pulumi.azurenative.network.LoadBalancerArgs;
import com.pulumi.azurenative.network.inputs.FrontendIPConfigurationArgs;
import com.pulumi.azurenative.network.inputs.SubnetArgs;
import com.pulumi.azurenative.network.inputs.InboundNatPoolArgs;
import com.pulumi.azurenative.network.inputs.SubResourceArgs;
import com.pulumi.azurenative.network.inputs.LoadBalancerSkuArgs;
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 loadBalancer = new LoadBalancer("loadBalancer", LoadBalancerArgs.builder()
.backendAddressPools()
.frontendIPConfigurations(FrontendIPConfigurationArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test")
.name("test")
.privateIPAllocationMethod("Dynamic")
.subnet(SubnetArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet")
.build())
.zones()
.build())
.inboundNatPools(InboundNatPoolArgs.builder()
.backendPort(8888)
.enableFloatingIP(true)
.enableTcpReset(true)
.frontendIPConfiguration(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test")
.build())
.frontendPortRangeEnd(8085)
.frontendPortRangeStart(8080)
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test")
.idleTimeoutInMinutes(10)
.name("test")
.protocol("Tcp")
.build())
.inboundNatRules()
.loadBalancerName("lb")
.loadBalancingRules()
.location("eastus")
.outboundRules()
.probes()
.resourceGroupName("rg1")
.sku(LoadBalancerSkuArgs.builder()
.name("Standard")
.build())
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const loadBalancer = new azure_native.network.LoadBalancer("loadBalancer", {
backendAddressPools: [],
frontendIPConfigurations: [{
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test",
name: "test",
privateIPAllocationMethod: azure_native.network.IPAllocationMethod.Dynamic,
subnet: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet",
},
zones: [],
}],
inboundNatPools: [{
backendPort: 8888,
enableFloatingIP: true,
enableTcpReset: true,
frontendIPConfiguration: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test",
},
frontendPortRangeEnd: 8085,
frontendPortRangeStart: 8080,
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test",
idleTimeoutInMinutes: 10,
name: "test",
protocol: azure_native.network.TransportProtocol.Tcp,
}],
inboundNatRules: [],
loadBalancerName: "lb",
loadBalancingRules: [],
location: "eastus",
outboundRules: [],
probes: [],
resourceGroupName: "rg1",
sku: {
name: azure_native.network.LoadBalancerSkuName.Standard,
},
});
import pulumi
import pulumi_azure_native as azure_native
load_balancer = azure_native.network.LoadBalancer("loadBalancer",
backend_address_pools=[],
frontend_ip_configurations=[{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test",
"name": "test",
"private_ip_allocation_method": azure_native.network.IPAllocationMethod.DYNAMIC,
"subnet": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet",
},
"zones": [],
}],
inbound_nat_pools=[{
"backend_port": 8888,
"enable_floating_ip": True,
"enable_tcp_reset": True,
"frontend_ip_configuration": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test",
},
"frontend_port_range_end": 8085,
"frontend_port_range_start": 8080,
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test",
"idle_timeout_in_minutes": 10,
"name": "test",
"protocol": azure_native.network.TransportProtocol.TCP,
}],
inbound_nat_rules=[],
load_balancer_name="lb",
load_balancing_rules=[],
location="eastus",
outbound_rules=[],
probes=[],
resource_group_name="rg1",
sku={
"name": azure_native.network.LoadBalancerSkuName.STANDARD,
})
resources:
loadBalancer:
type: azure-native:network:LoadBalancer
properties:
backendAddressPools: []
frontendIPConfigurations:
- id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test
name: test
privateIPAllocationMethod: Dynamic
subnet:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet
zones: []
inboundNatPools:
- backendPort: 8888
enableFloatingIP: true
enableTcpReset: true
frontendIPConfiguration:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test
frontendPortRangeEnd: 8085
frontendPortRangeStart: 8080
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test
idleTimeoutInMinutes: 10
name: test
protocol: Tcp
inboundNatRules: []
loadBalancerName: lb
loadBalancingRules: []
location: eastus
outboundRules: []
probes: []
resourceGroupName: rg1
sku:
name: Standard
Create load balancer with outbound rules
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var loadBalancer = new AzureNative.Network.LoadBalancer("loadBalancer", new()
{
BackendAddressPools = new[]
{
new AzureNative.Network.Inputs.BackendAddressPoolArgs
{
Name = "be-lb",
},
},
FrontendIPConfigurations = new[]
{
new AzureNative.Network.Inputs.FrontendIPConfigurationArgs
{
Name = "fe-lb",
PublicIPAddress = new AzureNative.Network.Inputs.PublicIPAddressArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip",
},
},
},
InboundNatPools = new[] {},
InboundNatRules = new[]
{
new AzureNative.Network.Inputs.InboundNatRuleArgs
{
BackendPort = 3389,
EnableFloatingIP = true,
FrontendIPConfiguration = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
FrontendPort = 3389,
IdleTimeoutInMinutes = 15,
Name = "in-nat-rule",
Protocol = AzureNative.Network.TransportProtocol.Tcp,
},
},
LoadBalancerName = "lb",
LoadBalancingRules = new[]
{
new AzureNative.Network.Inputs.LoadBalancingRuleArgs
{
BackendAddressPool = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
BackendPort = 80,
DisableOutboundSnat = true,
EnableFloatingIP = true,
FrontendIPConfiguration = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
FrontendPort = 80,
IdleTimeoutInMinutes = 15,
LoadDistribution = AzureNative.Network.LoadDistribution.Default,
Name = "rulelb",
Probe = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
Protocol = AzureNative.Network.TransportProtocol.Tcp,
},
},
Location = "eastus",
OutboundRules = new[]
{
new AzureNative.Network.Inputs.OutboundRuleArgs
{
BackendAddressPool = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
FrontendIPConfigurations = new[]
{
new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
},
Name = "rule1",
Protocol = AzureNative.Network.LoadBalancerOutboundRuleProtocol.All,
},
},
Probes = new[]
{
new AzureNative.Network.Inputs.ProbeArgs
{
IntervalInSeconds = 15,
Name = "probe-lb",
NumberOfProbes = 2,
Port = 80,
ProbeThreshold = 1,
Protocol = AzureNative.Network.ProbeProtocol.Http,
RequestPath = "healthcheck.aspx",
},
},
ResourceGroupName = "rg1",
Sku = new AzureNative.Network.Inputs.LoadBalancerSkuArgs
{
Name = AzureNative.Network.LoadBalancerSkuName.Standard,
},
});
});
package main
import (
network "github.com/pulumi/pulumi-azure-native-sdk/network/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := network.NewLoadBalancer(ctx, "loadBalancer", &network.LoadBalancerArgs{
BackendAddressPools: network.BackendAddressPoolArray{
&network.BackendAddressPoolArgs{
Name: pulumi.String("be-lb"),
},
},
FrontendIPConfigurations: network.FrontendIPConfigurationArray{
&network.FrontendIPConfigurationArgs{
Name: pulumi.String("fe-lb"),
PublicIPAddress: &network.PublicIPAddressTypeArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip"),
},
},
},
InboundNatPools: network.InboundNatPoolArray{},
InboundNatRules: network.InboundNatRuleTypeArray{
&network.InboundNatRuleTypeArgs{
BackendPort: pulumi.Int(3389),
EnableFloatingIP: pulumi.Bool(true),
FrontendIPConfiguration: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"),
},
FrontendPort: pulumi.Int(3389),
IdleTimeoutInMinutes: pulumi.Int(15),
Name: pulumi.String("in-nat-rule"),
Protocol: pulumi.String(network.TransportProtocolTcp),
},
},
LoadBalancerName: pulumi.String("lb"),
LoadBalancingRules: network.LoadBalancingRuleArray{
&network.LoadBalancingRuleArgs{
BackendAddressPool: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb"),
},
BackendPort: pulumi.Int(80),
DisableOutboundSnat: pulumi.Bool(true),
EnableFloatingIP: pulumi.Bool(true),
FrontendIPConfiguration: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"),
},
FrontendPort: pulumi.Int(80),
IdleTimeoutInMinutes: pulumi.Int(15),
LoadDistribution: pulumi.String(network.LoadDistributionDefault),
Name: pulumi.String("rulelb"),
Probe: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb"),
},
Protocol: pulumi.String(network.TransportProtocolTcp),
},
},
Location: pulumi.String("eastus"),
OutboundRules: network.OutboundRuleArray{
&network.OutboundRuleArgs{
BackendAddressPool: &network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb"),
},
FrontendIPConfigurations: network.SubResourceArray{
&network.SubResourceArgs{
Id: pulumi.String("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"),
},
},
Name: pulumi.String("rule1"),
Protocol: pulumi.String(network.LoadBalancerOutboundRuleProtocolAll),
},
},
Probes: network.ProbeArray{
&network.ProbeArgs{
IntervalInSeconds: pulumi.Int(15),
Name: pulumi.String("probe-lb"),
NumberOfProbes: pulumi.Int(2),
Port: pulumi.Int(80),
ProbeThreshold: pulumi.Int(1),
Protocol: pulumi.String(network.ProbeProtocolHttp),
RequestPath: pulumi.String("healthcheck.aspx"),
},
},
ResourceGroupName: pulumi.String("rg1"),
Sku: &network.LoadBalancerSkuArgs{
Name: pulumi.String(network.LoadBalancerSkuNameStandard),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.network.LoadBalancer;
import com.pulumi.azurenative.network.LoadBalancerArgs;
import com.pulumi.azurenative.network.inputs.BackendAddressPoolArgs;
import com.pulumi.azurenative.network.inputs.FrontendIPConfigurationArgs;
import com.pulumi.azurenative.network.inputs.PublicIPAddressArgs;
import com.pulumi.azurenative.network.inputs.InboundNatRuleArgs;
import com.pulumi.azurenative.network.inputs.SubResourceArgs;
import com.pulumi.azurenative.network.inputs.LoadBalancingRuleArgs;
import com.pulumi.azurenative.network.inputs.OutboundRuleArgs;
import com.pulumi.azurenative.network.inputs.ProbeArgs;
import com.pulumi.azurenative.network.inputs.LoadBalancerSkuArgs;
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 loadBalancer = new LoadBalancer("loadBalancer", LoadBalancerArgs.builder()
.backendAddressPools(BackendAddressPoolArgs.builder()
.name("be-lb")
.build())
.frontendIPConfigurations(FrontendIPConfigurationArgs.builder()
.name("fe-lb")
.publicIPAddress(PublicIPAddressArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip")
.build())
.build())
.inboundNatPools()
.inboundNatRules(InboundNatRuleArgs.builder()
.backendPort(3389)
.enableFloatingIP(true)
.frontendIPConfiguration(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb")
.build())
.frontendPort(3389)
.idleTimeoutInMinutes(15)
.name("in-nat-rule")
.protocol("Tcp")
.build())
.loadBalancerName("lb")
.loadBalancingRules(LoadBalancingRuleArgs.builder()
.backendAddressPool(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb")
.build())
.backendPort(80)
.disableOutboundSnat(true)
.enableFloatingIP(true)
.frontendIPConfiguration(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb")
.build())
.frontendPort(80)
.idleTimeoutInMinutes(15)
.loadDistribution("Default")
.name("rulelb")
.probe(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb")
.build())
.protocol("Tcp")
.build())
.location("eastus")
.outboundRules(OutboundRuleArgs.builder()
.backendAddressPool(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb")
.build())
.frontendIPConfigurations(SubResourceArgs.builder()
.id("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb")
.build())
.name("rule1")
.protocol("All")
.build())
.probes(ProbeArgs.builder()
.intervalInSeconds(15)
.name("probe-lb")
.numberOfProbes(2)
.port(80)
.probeThreshold(1)
.protocol("Http")
.requestPath("healthcheck.aspx")
.build())
.resourceGroupName("rg1")
.sku(LoadBalancerSkuArgs.builder()
.name("Standard")
.build())
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const loadBalancer = new azure_native.network.LoadBalancer("loadBalancer", {
backendAddressPools: [{
name: "be-lb",
}],
frontendIPConfigurations: [{
name: "fe-lb",
publicIPAddress: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip",
},
}],
inboundNatPools: [],
inboundNatRules: [{
backendPort: 3389,
enableFloatingIP: true,
frontendIPConfiguration: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
frontendPort: 3389,
idleTimeoutInMinutes: 15,
name: "in-nat-rule",
protocol: azure_native.network.TransportProtocol.Tcp,
}],
loadBalancerName: "lb",
loadBalancingRules: [{
backendAddressPool: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
backendPort: 80,
disableOutboundSnat: true,
enableFloatingIP: true,
frontendIPConfiguration: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
frontendPort: 80,
idleTimeoutInMinutes: 15,
loadDistribution: azure_native.network.LoadDistribution.Default,
name: "rulelb",
probe: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
protocol: azure_native.network.TransportProtocol.Tcp,
}],
location: "eastus",
outboundRules: [{
backendAddressPool: {
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
frontendIPConfigurations: [{
id: "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
}],
name: "rule1",
protocol: azure_native.network.LoadBalancerOutboundRuleProtocol.All,
}],
probes: [{
intervalInSeconds: 15,
name: "probe-lb",
numberOfProbes: 2,
port: 80,
probeThreshold: 1,
protocol: azure_native.network.ProbeProtocol.Http,
requestPath: "healthcheck.aspx",
}],
resourceGroupName: "rg1",
sku: {
name: azure_native.network.LoadBalancerSkuName.Standard,
},
});
import pulumi
import pulumi_azure_native as azure_native
load_balancer = azure_native.network.LoadBalancer("loadBalancer",
backend_address_pools=[{
"name": "be-lb",
}],
frontend_ip_configurations=[{
"name": "fe-lb",
"public_ip_address": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip",
},
}],
inbound_nat_pools=[],
inbound_nat_rules=[{
"backend_port": 3389,
"enable_floating_ip": True,
"frontend_ip_configuration": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
"frontend_port": 3389,
"idle_timeout_in_minutes": 15,
"name": "in-nat-rule",
"protocol": azure_native.network.TransportProtocol.TCP,
}],
load_balancer_name="lb",
load_balancing_rules=[{
"backend_address_pool": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
"backend_port": 80,
"disable_outbound_snat": True,
"enable_floating_ip": True,
"frontend_ip_configuration": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
},
"frontend_port": 80,
"idle_timeout_in_minutes": 15,
"load_distribution": azure_native.network.LoadDistribution.DEFAULT,
"name": "rulelb",
"probe": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
},
"protocol": azure_native.network.TransportProtocol.TCP,
}],
location="eastus",
outbound_rules=[{
"backend_address_pool": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
},
"frontend_ip_configurations": [{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
}],
"name": "rule1",
"protocol": azure_native.network.LoadBalancerOutboundRuleProtocol.ALL,
}],
probes=[{
"interval_in_seconds": 15,
"name": "probe-lb",
"number_of_probes": 2,
"port": 80,
"probe_threshold": 1,
"protocol": azure_native.network.ProbeProtocol.HTTP,
"request_path": "healthcheck.aspx",
}],
resource_group_name="rg1",
sku={
"name": azure_native.network.LoadBalancerSkuName.STANDARD,
})
resources:
loadBalancer:
type: azure-native:network:LoadBalancer
properties:
backendAddressPools:
- name: be-lb
frontendIPConfigurations:
- name: fe-lb
publicIPAddress:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip
inboundNatPools: []
inboundNatRules:
- backendPort: 3389
enableFloatingIP: true
frontendIPConfiguration:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb
frontendPort: 3389
idleTimeoutInMinutes: 15
name: in-nat-rule
protocol: Tcp
loadBalancerName: lb
loadBalancingRules:
- backendAddressPool:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb
backendPort: 80
disableOutboundSnat: true
enableFloatingIP: true
frontendIPConfiguration:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb
frontendPort: 80
idleTimeoutInMinutes: 15
loadDistribution: Default
name: rulelb
probe:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb
protocol: Tcp
location: eastus
outboundRules:
- backendAddressPool:
id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb
frontendIPConfigurations:
- id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb
name: rule1
protocol: All
probes:
- intervalInSeconds: 15
name: probe-lb
numberOfProbes: 2
port: 80
probeThreshold: 1
protocol: Http
requestPath: healthcheck.aspx
resourceGroupName: rg1
sku:
name: Standard
Create LoadBalancer Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new LoadBalancer(name: string, args: LoadBalancerArgs, opts?: CustomResourceOptions);
@overload
def LoadBalancer(resource_name: str,
args: LoadBalancerArgs,
opts: Optional[ResourceOptions] = None)
@overload
def LoadBalancer(resource_name: str,
opts: Optional[ResourceOptions] = None,
resource_group_name: Optional[str] = None,
load_balancer_name: Optional[str] = None,
frontend_ip_configurations: Optional[Sequence[FrontendIPConfigurationArgs]] = None,
id: Optional[str] = None,
inbound_nat_pools: Optional[Sequence[InboundNatPoolArgs]] = None,
inbound_nat_rules: Optional[Sequence[InboundNatRuleArgs]] = None,
backend_address_pools: Optional[Sequence[BackendAddressPoolArgs]] = None,
load_balancing_rules: Optional[Sequence[LoadBalancingRuleArgs]] = None,
location: Optional[str] = None,
outbound_rules: Optional[Sequence[OutboundRuleArgs]] = None,
probes: Optional[Sequence[ProbeArgs]] = None,
extended_location: Optional[ExtendedLocationArgs] = None,
sku: Optional[LoadBalancerSkuArgs] = None,
tags: Optional[Mapping[str, str]] = None)
func NewLoadBalancer(ctx *Context, name string, args LoadBalancerArgs, opts ...ResourceOption) (*LoadBalancer, error)
public LoadBalancer(string name, LoadBalancerArgs args, CustomResourceOptions? opts = null)
public LoadBalancer(String name, LoadBalancerArgs args)
public LoadBalancer(String name, LoadBalancerArgs args, CustomResourceOptions options)
type: azure-native:network:LoadBalancer
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args LoadBalancerArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args LoadBalancerArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args LoadBalancerArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args LoadBalancerArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args LoadBalancerArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var exampleloadBalancerResourceResourceFromNetwork = new AzureNative.Network.LoadBalancer("exampleloadBalancerResourceResourceFromNetwork", new()
{
ResourceGroupName = "string",
LoadBalancerName = "string",
FrontendIPConfigurations = new[]
{
new AzureNative.Network.Inputs.FrontendIPConfigurationArgs
{
GatewayLoadBalancer = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
Id = "string",
Name = "string",
PrivateIPAddress = "string",
PrivateIPAddressVersion = "string",
PrivateIPAllocationMethod = "string",
PublicIPAddress = new AzureNative.Network.Inputs.PublicIPAddressArgs
{
DdosSettings = new AzureNative.Network.Inputs.DdosSettingsArgs
{
DdosProtectionPlan = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
ProtectionMode = "string",
},
DeleteOption = "string",
DnsSettings = new AzureNative.Network.Inputs.PublicIPAddressDnsSettingsArgs
{
DomainNameLabel = "string",
DomainNameLabelScope = AzureNative.Network.PublicIpAddressDnsSettingsDomainNameLabelScope.TenantReuse,
Fqdn = "string",
ReverseFqdn = "string",
},
ExtendedLocation = new AzureNative.Network.Inputs.ExtendedLocationArgs
{
Name = "string",
Type = "string",
},
Id = "string",
IdleTimeoutInMinutes = 0,
IpAddress = "string",
IpTags = new[]
{
new AzureNative.Network.Inputs.IpTagArgs
{
IpTagType = "string",
Tag = "string",
},
},
LinkedPublicIPAddress = publicIPAddress,
Location = "string",
MigrationPhase = "string",
NatGateway = new AzureNative.Network.Inputs.NatGatewayArgs
{
Id = "string",
IdleTimeoutInMinutes = 0,
Location = "string",
PublicIpAddresses = new[]
{
new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
},
PublicIpPrefixes = new[]
{
new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
},
Sku = new AzureNative.Network.Inputs.NatGatewaySkuArgs
{
Name = "string",
},
Tags =
{
{ "string", "string" },
},
Zones = new[]
{
"string",
},
},
PublicIPAddressVersion = "string",
PublicIPAllocationMethod = "string",
PublicIPPrefix = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
ServicePublicIPAddress = publicIPAddress,
Sku = new AzureNative.Network.Inputs.PublicIPAddressSkuArgs
{
Name = "string",
Tier = "string",
},
Tags =
{
{ "string", "string" },
},
Zones = new[]
{
"string",
},
},
PublicIPPrefix = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
Subnet = new AzureNative.Network.Inputs.SubnetArgs
{
AddressPrefix = "string",
AddressPrefixes = new[]
{
"string",
},
ApplicationGatewayIPConfigurations = new[]
{
new AzureNative.Network.Inputs.ApplicationGatewayIPConfigurationArgs
{
Id = "string",
Name = "string",
Subnet = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
},
},
Delegations = new[]
{
new AzureNative.Network.Inputs.DelegationArgs
{
Actions = new[]
{
"string",
},
Etag = "string",
Id = "string",
Name = "string",
ServiceName = "string",
Type = "string",
},
},
Etag = "string",
Id = "string",
IpAllocations = new[]
{
new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
},
Name = "string",
NatGateway = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
NetworkSecurityGroup = new AzureNative.Network.Inputs.NetworkSecurityGroupArgs
{
DefaultSecurityRules = new[]
{
new AzureNative.Network.Inputs.SecurityRuleArgs
{
Direction = "string",
Protocol = "string",
Access = "string",
Name = "string",
Description = "string",
DestinationPortRange = "string",
DestinationPortRanges = new[]
{
"string",
},
DestinationAddressPrefixes = new[]
{
"string",
},
Etag = "string",
Id = "string",
DestinationAddressPrefix = "string",
Priority = 0,
DestinationApplicationSecurityGroups = new[]
{
new AzureNative.Network.Inputs.ApplicationSecurityGroupArgs
{
Id = "string",
Location = "string",
Tags =
{
{ "string", "string" },
},
},
},
ProvisioningState = "string",
SourceAddressPrefix = "string",
SourceAddressPrefixes = new[]
{
"string",
},
SourceApplicationSecurityGroups = new[]
{
new AzureNative.Network.Inputs.ApplicationSecurityGroupArgs
{
Id = "string",
Location = "string",
Tags =
{
{ "string", "string" },
},
},
},
SourcePortRange = "string",
SourcePortRanges = new[]
{
"string",
},
Type = "string",
},
},
Etag = "string",
FlushConnection = false,
Id = "string",
Location = "string",
ProvisioningState = "string",
ResourceGuid = "string",
SecurityRules = new[]
{
new AzureNative.Network.Inputs.SecurityRuleArgs
{
Direction = "string",
Protocol = "string",
Access = "string",
Name = "string",
Description = "string",
DestinationPortRange = "string",
DestinationPortRanges = new[]
{
"string",
},
DestinationAddressPrefixes = new[]
{
"string",
},
Etag = "string",
Id = "string",
DestinationAddressPrefix = "string",
Priority = 0,
DestinationApplicationSecurityGroups = new[]
{
new AzureNative.Network.Inputs.ApplicationSecurityGroupArgs
{
Id = "string",
Location = "string",
Tags =
{
{ "string", "string" },
},
},
},
ProvisioningState = "string",
SourceAddressPrefix = "string",
SourceAddressPrefixes = new[]
{
"string",
},
SourceApplicationSecurityGroups = new[]
{
new AzureNative.Network.Inputs.ApplicationSecurityGroupArgs
{
Id = "string",
Location = "string",
Tags =
{
{ "string", "string" },
},
},
},
SourcePortRange = "string",
SourcePortRanges = new[]
{
"string",
},
Type = "string",
},
},
Tags =
{
{ "string", "string" },
},
},
PrivateEndpointNetworkPolicies = "string",
PrivateLinkServiceNetworkPolicies = "string",
ProvisioningState = "string",
ResourceNavigationLinks = new[]
{
new AzureNative.Network.Inputs.ResourceNavigationLinkArgs
{
Id = "string",
Link = "string",
LinkedResourceType = "string",
Name = "string",
},
},
RouteTable = new AzureNative.Network.Inputs.RouteTableArgs
{
DisableBgpRoutePropagation = false,
Etag = "string",
Id = "string",
Location = "string",
ProvisioningState = "string",
Routes = new[]
{
new AzureNative.Network.Inputs.RouteArgs
{
NextHopType = "string",
AddressPrefix = "string",
Etag = "string",
Id = "string",
Name = "string",
NextHopIpAddress = "string",
ProvisioningState = "string",
Type = "string",
},
},
Tags =
{
{ "string", "string" },
},
},
ServiceAssociationLinks = new[]
{
new AzureNative.Network.Inputs.ServiceAssociationLinkArgs
{
Id = "string",
Link = "string",
LinkedResourceType = "string",
Name = "string",
},
},
ServiceEndpointPolicies = new[]
{
new AzureNative.Network.Inputs.ServiceEndpointPolicyArgs
{
ContextualServiceEndpointPolicies = new[]
{
"string",
},
Etag = "string",
Id = "string",
Location = "string",
ServiceAlias = "string",
ServiceEndpointPolicyDefinitions = new[]
{
new AzureNative.Network.Inputs.ServiceEndpointPolicyDefinitionArgs
{
Description = "string",
Etag = "string",
Id = "string",
Name = "string",
Service = "string",
ServiceResources = new[]
{
"string",
},
Type = "string",
},
},
Tags =
{
{ "string", "string" },
},
},
},
ServiceEndpoints = new[]
{
new AzureNative.Network.Inputs.ServiceEndpointPropertiesFormatArgs
{
Locations = new[]
{
"string",
},
ProvisioningState = "string",
Service = "string",
},
},
Type = "string",
},
Zones = new[]
{
"string",
},
},
},
Id = "string",
InboundNatPools = new[]
{
new AzureNative.Network.Inputs.InboundNatPoolArgs
{
BackendPort = 0,
FrontendPortRangeEnd = 0,
FrontendPortRangeStart = 0,
Protocol = "string",
EnableFloatingIP = false,
EnableTcpReset = false,
FrontendIPConfiguration = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
Id = "string",
IdleTimeoutInMinutes = 0,
Name = "string",
},
},
InboundNatRules = new[]
{
new AzureNative.Network.Inputs.InboundNatRuleArgs
{
BackendAddressPool = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
BackendPort = 0,
EnableFloatingIP = false,
EnableTcpReset = false,
FrontendIPConfiguration = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
FrontendPort = 0,
FrontendPortRangeEnd = 0,
FrontendPortRangeStart = 0,
Id = "string",
IdleTimeoutInMinutes = 0,
Name = "string",
Protocol = "string",
},
},
BackendAddressPools = new[]
{
new AzureNative.Network.Inputs.BackendAddressPoolArgs
{
DrainPeriodInSeconds = 0,
Id = "string",
LoadBalancerBackendAddresses = new[]
{
new AzureNative.Network.Inputs.LoadBalancerBackendAddressArgs
{
AdminState = "string",
IpAddress = "string",
LoadBalancerFrontendIPConfiguration = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
Name = "string",
Subnet = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
VirtualNetwork = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
},
},
Location = "string",
Name = "string",
TunnelInterfaces = new[]
{
new AzureNative.Network.Inputs.GatewayLoadBalancerTunnelInterfaceArgs
{
Identifier = 0,
Port = 0,
Protocol = "string",
Type = "string",
},
},
VirtualNetwork = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
},
},
LoadBalancingRules = new[]
{
new AzureNative.Network.Inputs.LoadBalancingRuleArgs
{
FrontendPort = 0,
Protocol = "string",
FrontendIPConfiguration = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
DisableOutboundSnat = false,
EnableFloatingIP = false,
EnableTcpReset = false,
BackendAddressPool = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
BackendPort = 0,
Id = "string",
IdleTimeoutInMinutes = 0,
LoadDistribution = "string",
Name = "string",
Probe = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
BackendAddressPools = new[]
{
new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
},
},
},
Location = "string",
OutboundRules = new[]
{
new AzureNative.Network.Inputs.OutboundRuleArgs
{
BackendAddressPool = new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
FrontendIPConfigurations = new[]
{
new AzureNative.Network.Inputs.SubResourceArgs
{
Id = "string",
},
},
Protocol = "string",
AllocatedOutboundPorts = 0,
EnableTcpReset = false,
Id = "string",
IdleTimeoutInMinutes = 0,
Name = "string",
},
},
Probes = new[]
{
new AzureNative.Network.Inputs.ProbeArgs
{
Port = 0,
Protocol = "string",
Id = "string",
IntervalInSeconds = 0,
Name = "string",
NumberOfProbes = 0,
ProbeThreshold = 0,
RequestPath = "string",
},
},
ExtendedLocation = new AzureNative.Network.Inputs.ExtendedLocationArgs
{
Name = "string",
Type = "string",
},
Sku = new AzureNative.Network.Inputs.LoadBalancerSkuArgs
{
Name = "string",
Tier = "string",
},
Tags =
{
{ "string", "string" },
},
});
example, err := network.NewLoadBalancer(ctx, "exampleloadBalancerResourceResourceFromNetwork", &network.LoadBalancerArgs{
ResourceGroupName: pulumi.String("string"),
LoadBalancerName: pulumi.String("string"),
FrontendIPConfigurations: network.FrontendIPConfigurationArray{
&network.FrontendIPConfigurationArgs{
GatewayLoadBalancer: &network.SubResourceArgs{
Id: pulumi.String("string"),
},
Id: pulumi.String("string"),
Name: pulumi.String("string"),
PrivateIPAddress: pulumi.String("string"),
PrivateIPAddressVersion: pulumi.String("string"),
PrivateIPAllocationMethod: pulumi.String("string"),
PublicIPAddress: &network.PublicIPAddressTypeArgs{
DdosSettings: &network.DdosSettingsArgs{
DdosProtectionPlan: &network.SubResourceArgs{
Id: pulumi.String("string"),
},
ProtectionMode: pulumi.String("string"),
},
DeleteOption: pulumi.String("string"),
DnsSettings: &network.PublicIPAddressDnsSettingsArgs{
DomainNameLabel: pulumi.String("string"),
DomainNameLabelScope: network.PublicIpAddressDnsSettingsDomainNameLabelScopeTenantReuse,
Fqdn: pulumi.String("string"),
ReverseFqdn: pulumi.String("string"),
},
ExtendedLocation: &network.ExtendedLocationArgs{
Name: pulumi.String("string"),
Type: pulumi.String("string"),
},
Id: pulumi.String("string"),
IdleTimeoutInMinutes: pulumi.Int(0),
IpAddress: pulumi.String("string"),
IpTags: network.IpTagArray{
&network.IpTagArgs{
IpTagType: pulumi.String("string"),
Tag: pulumi.String("string"),
},
},
LinkedPublicIPAddress: pulumi.Any(publicIPAddress),
Location: pulumi.String("string"),
MigrationPhase: pulumi.String("string"),
NatGateway: &network.NatGatewayTypeArgs{
Id: pulumi.String("string"),
IdleTimeoutInMinutes: pulumi.Int(0),
Location: pulumi.String("string"),
PublicIpAddresses: network.SubResourceArray{
&network.SubResourceArgs{
Id: pulumi.String("string"),
},
},
PublicIpPrefixes: network.SubResourceArray{
&network.SubResourceArgs{
Id: pulumi.String("string"),
},
},
Sku: &network.NatGatewaySkuArgs{
Name: pulumi.String("string"),
},
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
Zones: pulumi.StringArray{
pulumi.String("string"),
},
},
PublicIPAddressVersion: pulumi.String("string"),
PublicIPAllocationMethod: pulumi.String("string"),
PublicIPPrefix: &network.SubResourceArgs{
Id: pulumi.String("string"),
},
ServicePublicIPAddress: pulumi.Any(publicIPAddress),
Sku: &network.PublicIPAddressSkuArgs{
Name: pulumi.String("string"),
Tier: pulumi.String("string"),
},
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
Zones: pulumi.StringArray{
pulumi.String("string"),
},
},
PublicIPPrefix: &network.SubResourceArgs{
Id: pulumi.String("string"),
},
Subnet: &network.SubnetTypeArgs{
AddressPrefix: pulumi.String("string"),
AddressPrefixes: pulumi.StringArray{
pulumi.String("string"),
},
ApplicationGatewayIPConfigurations: network.ApplicationGatewayIPConfigurationArray{
&network.ApplicationGatewayIPConfigurationArgs{
Id: pulumi.String("string"),
Name: pulumi.String("string"),
Subnet: &network.SubResourceArgs{
Id: pulumi.String("string"),
},
},
},
Delegations: network.DelegationArray{
&network.DelegationArgs{
Actions: pulumi.StringArray{
pulumi.String("string"),
},
Etag: pulumi.String("string"),
Id: pulumi.String("string"),
Name: pulumi.String("string"),
ServiceName: pulumi.String("string"),
Type: pulumi.String("string"),
},
},
Etag: pulumi.String("string"),
Id: pulumi.String("string"),
IpAllocations: network.SubResourceArray{
&network.SubResourceArgs{
Id: pulumi.String("string"),
},
},
Name: pulumi.String("string"),
NatGateway: &network.SubResourceArgs{
Id: pulumi.String("string"),
},
NetworkSecurityGroup: &network.NetworkSecurityGroupTypeArgs{
DefaultSecurityRules: network.SecurityRuleTypeArray{
&network.SecurityRuleTypeArgs{
Direction: pulumi.String("string"),
Protocol: pulumi.String("string"),
Access: pulumi.String("string"),
Name: pulumi.String("string"),
Description: pulumi.String("string"),
DestinationPortRange: pulumi.String("string"),
DestinationPortRanges: pulumi.StringArray{
pulumi.String("string"),
},
DestinationAddressPrefixes: pulumi.StringArray{
pulumi.String("string"),
},
Etag: pulumi.String("string"),
Id: pulumi.String("string"),
DestinationAddressPrefix: pulumi.String("string"),
Priority: pulumi.Int(0),
DestinationApplicationSecurityGroups: network.ApplicationSecurityGroupTypeArray{
&network.ApplicationSecurityGroupTypeArgs{
Id: pulumi.String("string"),
Location: pulumi.String("string"),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
},
},
ProvisioningState: pulumi.String("string"),
SourceAddressPrefix: pulumi.String("string"),
SourceAddressPrefixes: pulumi.StringArray{
pulumi.String("string"),
},
SourceApplicationSecurityGroups: network.ApplicationSecurityGroupTypeArray{
&network.ApplicationSecurityGroupTypeArgs{
Id: pulumi.String("string"),
Location: pulumi.String("string"),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
},
},
SourcePortRange: pulumi.String("string"),
SourcePortRanges: pulumi.StringArray{
pulumi.String("string"),
},
Type: pulumi.String("string"),
},
},
Etag: pulumi.String("string"),
FlushConnection: pulumi.Bool(false),
Id: pulumi.String("string"),
Location: pulumi.String("string"),
ProvisioningState: pulumi.String("string"),
ResourceGuid: pulumi.String("string"),
SecurityRules: network.SecurityRuleTypeArray{
&network.SecurityRuleTypeArgs{
Direction: pulumi.String("string"),
Protocol: pulumi.String("string"),
Access: pulumi.String("string"),
Name: pulumi.String("string"),
Description: pulumi.String("string"),
DestinationPortRange: pulumi.String("string"),
DestinationPortRanges: pulumi.StringArray{
pulumi.String("string"),
},
DestinationAddressPrefixes: pulumi.StringArray{
pulumi.String("string"),
},
Etag: pulumi.String("string"),
Id: pulumi.String("string"),
DestinationAddressPrefix: pulumi.String("string"),
Priority: pulumi.Int(0),
DestinationApplicationSecurityGroups: network.ApplicationSecurityGroupTypeArray{
&network.ApplicationSecurityGroupTypeArgs{
Id: pulumi.String("string"),
Location: pulumi.String("string"),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
},
},
ProvisioningState: pulumi.String("string"),
SourceAddressPrefix: pulumi.String("string"),
SourceAddressPrefixes: pulumi.StringArray{
pulumi.String("string"),
},
SourceApplicationSecurityGroups: network.ApplicationSecurityGroupTypeArray{
&network.ApplicationSecurityGroupTypeArgs{
Id: pulumi.String("string"),
Location: pulumi.String("string"),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
},
},
SourcePortRange: pulumi.String("string"),
SourcePortRanges: pulumi.StringArray{
pulumi.String("string"),
},
Type: pulumi.String("string"),
},
},
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
},
PrivateEndpointNetworkPolicies: pulumi.String("string"),
PrivateLinkServiceNetworkPolicies: pulumi.String("string"),
ProvisioningState: pulumi.String("string"),
ResourceNavigationLinks: network.ResourceNavigationLinkArray{
&network.ResourceNavigationLinkArgs{
Id: pulumi.String("string"),
Link: pulumi.String("string"),
LinkedResourceType: pulumi.String("string"),
Name: pulumi.String("string"),
},
},
RouteTable: &network.RouteTableTypeArgs{
DisableBgpRoutePropagation: pulumi.Bool(false),
Etag: pulumi.String("string"),
Id: pulumi.String("string"),
Location: pulumi.String("string"),
ProvisioningState: pulumi.String("string"),
Routes: network.RouteTypeArray{
&network.RouteTypeArgs{
NextHopType: pulumi.String("string"),
AddressPrefix: pulumi.String("string"),
Etag: pulumi.String("string"),
Id: pulumi.String("string"),
Name: pulumi.String("string"),
NextHopIpAddress: pulumi.String("string"),
ProvisioningState: pulumi.String("string"),
Type: pulumi.String("string"),
},
},
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
},
ServiceAssociationLinks: network.ServiceAssociationLinkArray{
&network.ServiceAssociationLinkArgs{
Id: pulumi.String("string"),
Link: pulumi.String("string"),
LinkedResourceType: pulumi.String("string"),
Name: pulumi.String("string"),
},
},
ServiceEndpointPolicies: network.ServiceEndpointPolicyTypeArray{
&network.ServiceEndpointPolicyTypeArgs{
ContextualServiceEndpointPolicies: pulumi.StringArray{
pulumi.String("string"),
},
Etag: pulumi.String("string"),
Id: pulumi.String("string"),
Location: pulumi.String("string"),
ServiceAlias: pulumi.String("string"),
ServiceEndpointPolicyDefinitions: network.ServiceEndpointPolicyDefinitionTypeArray{
&network.ServiceEndpointPolicyDefinitionTypeArgs{
Description: pulumi.String("string"),
Etag: pulumi.String("string"),
Id: pulumi.String("string"),
Name: pulumi.String("string"),
Service: pulumi.String("string"),
ServiceResources: pulumi.StringArray{
pulumi.String("string"),
},
Type: pulumi.String("string"),
},
},
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
},
},
ServiceEndpoints: network.ServiceEndpointPropertiesFormatArray{
&network.ServiceEndpointPropertiesFormatArgs{
Locations: pulumi.StringArray{
pulumi.String("string"),
},
ProvisioningState: pulumi.String("string"),
Service: pulumi.String("string"),
},
},
Type: pulumi.String("string"),
},
Zones: pulumi.StringArray{
pulumi.String("string"),
},
},
},
Id: pulumi.String("string"),
InboundNatPools: network.InboundNatPoolArray{
&network.InboundNatPoolArgs{
BackendPort: pulumi.Int(0),
FrontendPortRangeEnd: pulumi.Int(0),
FrontendPortRangeStart: pulumi.Int(0),
Protocol: pulumi.String("string"),
EnableFloatingIP: pulumi.Bool(false),
EnableTcpReset: pulumi.Bool(false),
FrontendIPConfiguration: &network.SubResourceArgs{
Id: pulumi.String("string"),
},
Id: pulumi.String("string"),
IdleTimeoutInMinutes: pulumi.Int(0),
Name: pulumi.String("string"),
},
},
InboundNatRules: network.InboundNatRuleTypeArray{
&network.InboundNatRuleTypeArgs{
BackendAddressPool: &network.SubResourceArgs{
Id: pulumi.String("string"),
},
BackendPort: pulumi.Int(0),
EnableFloatingIP: pulumi.Bool(false),
EnableTcpReset: pulumi.Bool(false),
FrontendIPConfiguration: &network.SubResourceArgs{
Id: pulumi.String("string"),
},
FrontendPort: pulumi.Int(0),
FrontendPortRangeEnd: pulumi.Int(0),
FrontendPortRangeStart: pulumi.Int(0),
Id: pulumi.String("string"),
IdleTimeoutInMinutes: pulumi.Int(0),
Name: pulumi.String("string"),
Protocol: pulumi.String("string"),
},
},
BackendAddressPools: network.BackendAddressPoolArray{
&network.BackendAddressPoolArgs{
DrainPeriodInSeconds: pulumi.Int(0),
Id: pulumi.String("string"),
LoadBalancerBackendAddresses: network.LoadBalancerBackendAddressArray{
&network.LoadBalancerBackendAddressArgs{
AdminState: pulumi.String("string"),
IpAddress: pulumi.String("string"),
LoadBalancerFrontendIPConfiguration: &network.SubResourceArgs{
Id: pulumi.String("string"),
},
Name: pulumi.String("string"),
Subnet: &network.SubResourceArgs{
Id: pulumi.String("string"),
},
VirtualNetwork: &network.SubResourceArgs{
Id: pulumi.String("string"),
},
},
},
Location: pulumi.String("string"),
Name: pulumi.String("string"),
TunnelInterfaces: network.GatewayLoadBalancerTunnelInterfaceArray{
&network.GatewayLoadBalancerTunnelInterfaceArgs{
Identifier: pulumi.Int(0),
Port: pulumi.Int(0),
Protocol: pulumi.String("string"),
Type: pulumi.String("string"),
},
},
VirtualNetwork: &network.SubResourceArgs{
Id: pulumi.String("string"),
},
},
},
LoadBalancingRules: network.LoadBalancingRuleArray{
&network.LoadBalancingRuleArgs{
FrontendPort: pulumi.Int(0),
Protocol: pulumi.String("string"),
FrontendIPConfiguration: &network.SubResourceArgs{
Id: pulumi.String("string"),
},
DisableOutboundSnat: pulumi.Bool(false),
EnableFloatingIP: pulumi.Bool(false),
EnableTcpReset: pulumi.Bool(false),
BackendAddressPool: &network.SubResourceArgs{
Id: pulumi.String("string"),
},
BackendPort: pulumi.Int(0),
Id: pulumi.String("string"),
IdleTimeoutInMinutes: pulumi.Int(0),
LoadDistribution: pulumi.String("string"),
Name: pulumi.String("string"),
Probe: &network.SubResourceArgs{
Id: pulumi.String("string"),
},
BackendAddressPools: network.SubResourceArray{
&network.SubResourceArgs{
Id: pulumi.String("string"),
},
},
},
},
Location: pulumi.String("string"),
OutboundRules: network.OutboundRuleArray{
&network.OutboundRuleArgs{
BackendAddressPool: &network.SubResourceArgs{
Id: pulumi.String("string"),
},
FrontendIPConfigurations: network.SubResourceArray{
&network.SubResourceArgs{
Id: pulumi.String("string"),
},
},
Protocol: pulumi.String("string"),
AllocatedOutboundPorts: pulumi.Int(0),
EnableTcpReset: pulumi.Bool(false),
Id: pulumi.String("string"),
IdleTimeoutInMinutes: pulumi.Int(0),
Name: pulumi.String("string"),
},
},
Probes: network.ProbeArray{
&network.ProbeArgs{
Port: pulumi.Int(0),
Protocol: pulumi.String("string"),
Id: pulumi.String("string"),
IntervalInSeconds: pulumi.Int(0),
Name: pulumi.String("string"),
NumberOfProbes: pulumi.Int(0),
ProbeThreshold: pulumi.Int(0),
RequestPath: pulumi.String("string"),
},
},
ExtendedLocation: &network.ExtendedLocationArgs{
Name: pulumi.String("string"),
Type: pulumi.String("string"),
},
Sku: &network.LoadBalancerSkuArgs{
Name: pulumi.String("string"),
Tier: pulumi.String("string"),
},
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
})
var exampleloadBalancerResourceResourceFromNetwork = new LoadBalancer("exampleloadBalancerResourceResourceFromNetwork", LoadBalancerArgs.builder()
.resourceGroupName("string")
.loadBalancerName("string")
.frontendIPConfigurations(FrontendIPConfigurationArgs.builder()
.gatewayLoadBalancer(SubResourceArgs.builder()
.id("string")
.build())
.id("string")
.name("string")
.privateIPAddress("string")
.privateIPAddressVersion("string")
.privateIPAllocationMethod("string")
.publicIPAddress(PublicIPAddressArgs.builder()
.ddosSettings(DdosSettingsArgs.builder()
.ddosProtectionPlan(SubResourceArgs.builder()
.id("string")
.build())
.protectionMode("string")
.build())
.deleteOption("string")
.dnsSettings(PublicIPAddressDnsSettingsArgs.builder()
.domainNameLabel("string")
.domainNameLabelScope("TenantReuse")
.fqdn("string")
.reverseFqdn("string")
.build())
.extendedLocation(ExtendedLocationArgs.builder()
.name("string")
.type("string")
.build())
.id("string")
.idleTimeoutInMinutes(0)
.ipAddress("string")
.ipTags(IpTagArgs.builder()
.ipTagType("string")
.tag("string")
.build())
.linkedPublicIPAddress(publicIPAddress)
.location("string")
.migrationPhase("string")
.natGateway(NatGatewayArgs.builder()
.id("string")
.idleTimeoutInMinutes(0)
.location("string")
.publicIpAddresses(SubResourceArgs.builder()
.id("string")
.build())
.publicIpPrefixes(SubResourceArgs.builder()
.id("string")
.build())
.sku(NatGatewaySkuArgs.builder()
.name("string")
.build())
.tags(Map.of("string", "string"))
.zones("string")
.build())
.publicIPAddressVersion("string")
.publicIPAllocationMethod("string")
.publicIPPrefix(SubResourceArgs.builder()
.id("string")
.build())
.servicePublicIPAddress(publicIPAddress)
.sku(PublicIPAddressSkuArgs.builder()
.name("string")
.tier("string")
.build())
.tags(Map.of("string", "string"))
.zones("string")
.build())
.publicIPPrefix(SubResourceArgs.builder()
.id("string")
.build())
.subnet(SubnetArgs.builder()
.addressPrefix("string")
.addressPrefixes("string")
.applicationGatewayIPConfigurations(ApplicationGatewayIPConfigurationArgs.builder()
.id("string")
.name("string")
.subnet(SubResourceArgs.builder()
.id("string")
.build())
.build())
.delegations(DelegationArgs.builder()
.actions("string")
.etag("string")
.id("string")
.name("string")
.serviceName("string")
.type("string")
.build())
.etag("string")
.id("string")
.ipAllocations(SubResourceArgs.builder()
.id("string")
.build())
.name("string")
.natGateway(SubResourceArgs.builder()
.id("string")
.build())
.networkSecurityGroup(NetworkSecurityGroupArgs.builder()
.defaultSecurityRules(SecurityRuleArgs.builder()
.direction("string")
.protocol("string")
.access("string")
.name("string")
.description("string")
.destinationPortRange("string")
.destinationPortRanges("string")
.destinationAddressPrefixes("string")
.etag("string")
.id("string")
.destinationAddressPrefix("string")
.priority(0)
.destinationApplicationSecurityGroups(ApplicationSecurityGroupArgs.builder()
.id("string")
.location("string")
.tags(Map.of("string", "string"))
.build())
.provisioningState("string")
.sourceAddressPrefix("string")
.sourceAddressPrefixes("string")
.sourceApplicationSecurityGroups(ApplicationSecurityGroupArgs.builder()
.id("string")
.location("string")
.tags(Map.of("string", "string"))
.build())
.sourcePortRange("string")
.sourcePortRanges("string")
.type("string")
.build())
.etag("string")
.flushConnection(false)
.id("string")
.location("string")
.provisioningState("string")
.resourceGuid("string")
.securityRules(SecurityRuleArgs.builder()
.direction("string")
.protocol("string")
.access("string")
.name("string")
.description("string")
.destinationPortRange("string")
.destinationPortRanges("string")
.destinationAddressPrefixes("string")
.etag("string")
.id("string")
.destinationAddressPrefix("string")
.priority(0)
.destinationApplicationSecurityGroups(ApplicationSecurityGroupArgs.builder()
.id("string")
.location("string")
.tags(Map.of("string", "string"))
.build())
.provisioningState("string")
.sourceAddressPrefix("string")
.sourceAddressPrefixes("string")
.sourceApplicationSecurityGroups(ApplicationSecurityGroupArgs.builder()
.id("string")
.location("string")
.tags(Map.of("string", "string"))
.build())
.sourcePortRange("string")
.sourcePortRanges("string")
.type("string")
.build())
.tags(Map.of("string", "string"))
.build())
.privateEndpointNetworkPolicies("string")
.privateLinkServiceNetworkPolicies("string")
.provisioningState("string")
.resourceNavigationLinks(ResourceNavigationLinkArgs.builder()
.id("string")
.link("string")
.linkedResourceType("string")
.name("string")
.build())
.routeTable(RouteTableArgs.builder()
.disableBgpRoutePropagation(false)
.etag("string")
.id("string")
.location("string")
.provisioningState("string")
.routes(RouteArgs.builder()
.nextHopType("string")
.addressPrefix("string")
.etag("string")
.id("string")
.name("string")
.nextHopIpAddress("string")
.provisioningState("string")
.type("string")
.build())
.tags(Map.of("string", "string"))
.build())
.serviceAssociationLinks(ServiceAssociationLinkArgs.builder()
.id("string")
.link("string")
.linkedResourceType("string")
.name("string")
.build())
.serviceEndpointPolicies(ServiceEndpointPolicyArgs.builder()
.contextualServiceEndpointPolicies("string")
.etag("string")
.id("string")
.location("string")
.serviceAlias("string")
.serviceEndpointPolicyDefinitions(ServiceEndpointPolicyDefinitionArgs.builder()
.description("string")
.etag("string")
.id("string")
.name("string")
.service("string")
.serviceResources("string")
.type("string")
.build())
.tags(Map.of("string", "string"))
.build())
.serviceEndpoints(ServiceEndpointPropertiesFormatArgs.builder()
.locations("string")
.provisioningState("string")
.service("string")
.build())
.type("string")
.build())
.zones("string")
.build())
.id("string")
.inboundNatPools(InboundNatPoolArgs.builder()
.backendPort(0)
.frontendPortRangeEnd(0)
.frontendPortRangeStart(0)
.protocol("string")
.enableFloatingIP(false)
.enableTcpReset(false)
.frontendIPConfiguration(SubResourceArgs.builder()
.id("string")
.build())
.id("string")
.idleTimeoutInMinutes(0)
.name("string")
.build())
.inboundNatRules(InboundNatRuleArgs.builder()
.backendAddressPool(SubResourceArgs.builder()
.id("string")
.build())
.backendPort(0)
.enableFloatingIP(false)
.enableTcpReset(false)
.frontendIPConfiguration(SubResourceArgs.builder()
.id("string")
.build())
.frontendPort(0)
.frontendPortRangeEnd(0)
.frontendPortRangeStart(0)
.id("string")
.idleTimeoutInMinutes(0)
.name("string")
.protocol("string")
.build())
.backendAddressPools(BackendAddressPoolArgs.builder()
.drainPeriodInSeconds(0)
.id("string")
.loadBalancerBackendAddresses(LoadBalancerBackendAddressArgs.builder()
.adminState("string")
.ipAddress("string")
.loadBalancerFrontendIPConfiguration(SubResourceArgs.builder()
.id("string")
.build())
.name("string")
.subnet(SubResourceArgs.builder()
.id("string")
.build())
.virtualNetwork(SubResourceArgs.builder()
.id("string")
.build())
.build())
.location("string")
.name("string")
.tunnelInterfaces(GatewayLoadBalancerTunnelInterfaceArgs.builder()
.identifier(0)
.port(0)
.protocol("string")
.type("string")
.build())
.virtualNetwork(SubResourceArgs.builder()
.id("string")
.build())
.build())
.loadBalancingRules(LoadBalancingRuleArgs.builder()
.frontendPort(0)
.protocol("string")
.frontendIPConfiguration(SubResourceArgs.builder()
.id("string")
.build())
.disableOutboundSnat(false)
.enableFloatingIP(false)
.enableTcpReset(false)
.backendAddressPool(SubResourceArgs.builder()
.id("string")
.build())
.backendPort(0)
.id("string")
.idleTimeoutInMinutes(0)
.loadDistribution("string")
.name("string")
.probe(SubResourceArgs.builder()
.id("string")
.build())
.backendAddressPools(SubResourceArgs.builder()
.id("string")
.build())
.build())
.location("string")
.outboundRules(OutboundRuleArgs.builder()
.backendAddressPool(SubResourceArgs.builder()
.id("string")
.build())
.frontendIPConfigurations(SubResourceArgs.builder()
.id("string")
.build())
.protocol("string")
.allocatedOutboundPorts(0)
.enableTcpReset(false)
.id("string")
.idleTimeoutInMinutes(0)
.name("string")
.build())
.probes(ProbeArgs.builder()
.port(0)
.protocol("string")
.id("string")
.intervalInSeconds(0)
.name("string")
.numberOfProbes(0)
.probeThreshold(0)
.requestPath("string")
.build())
.extendedLocation(ExtendedLocationArgs.builder()
.name("string")
.type("string")
.build())
.sku(LoadBalancerSkuArgs.builder()
.name("string")
.tier("string")
.build())
.tags(Map.of("string", "string"))
.build());
exampleload_balancer_resource_resource_from_network = azure_native.network.LoadBalancer("exampleloadBalancerResourceResourceFromNetwork",
resource_group_name="string",
load_balancer_name="string",
frontend_ip_configurations=[{
"gateway_load_balancer": {
"id": "string",
},
"id": "string",
"name": "string",
"private_ip_address": "string",
"private_ip_address_version": "string",
"private_ip_allocation_method": "string",
"public_ip_address": {
"ddos_settings": {
"ddos_protection_plan": {
"id": "string",
},
"protection_mode": "string",
},
"delete_option": "string",
"dns_settings": {
"domain_name_label": "string",
"domain_name_label_scope": azure_native.network.PublicIpAddressDnsSettingsDomainNameLabelScope.TENANT_REUSE,
"fqdn": "string",
"reverse_fqdn": "string",
},
"extended_location": {
"name": "string",
"type": "string",
},
"id": "string",
"idle_timeout_in_minutes": 0,
"ip_address": "string",
"ip_tags": [{
"ip_tag_type": "string",
"tag": "string",
}],
"linked_public_ip_address": public_ip_address,
"location": "string",
"migration_phase": "string",
"nat_gateway": {
"id": "string",
"idle_timeout_in_minutes": 0,
"location": "string",
"public_ip_addresses": [{
"id": "string",
}],
"public_ip_prefixes": [{
"id": "string",
}],
"sku": {
"name": "string",
},
"tags": {
"string": "string",
},
"zones": ["string"],
},
"public_ip_address_version": "string",
"public_ip_allocation_method": "string",
"public_ip_prefix": {
"id": "string",
},
"service_public_ip_address": public_ip_address,
"sku": {
"name": "string",
"tier": "string",
},
"tags": {
"string": "string",
},
"zones": ["string"],
},
"public_ip_prefix": {
"id": "string",
},
"subnet": {
"address_prefix": "string",
"address_prefixes": ["string"],
"application_gateway_ip_configurations": [{
"id": "string",
"name": "string",
"subnet": {
"id": "string",
},
}],
"delegations": [{
"actions": ["string"],
"etag": "string",
"id": "string",
"name": "string",
"service_name": "string",
"type": "string",
}],
"etag": "string",
"id": "string",
"ip_allocations": [{
"id": "string",
}],
"name": "string",
"nat_gateway": {
"id": "string",
},
"network_security_group": {
"default_security_rules": [{
"direction": "string",
"protocol": "string",
"access": "string",
"name": "string",
"description": "string",
"destination_port_range": "string",
"destination_port_ranges": ["string"],
"destination_address_prefixes": ["string"],
"etag": "string",
"id": "string",
"destination_address_prefix": "string",
"priority": 0,
"destination_application_security_groups": [{
"id": "string",
"location": "string",
"tags": {
"string": "string",
},
}],
"provisioning_state": "string",
"source_address_prefix": "string",
"source_address_prefixes": ["string"],
"source_application_security_groups": [{
"id": "string",
"location": "string",
"tags": {
"string": "string",
},
}],
"source_port_range": "string",
"source_port_ranges": ["string"],
"type": "string",
}],
"etag": "string",
"flush_connection": False,
"id": "string",
"location": "string",
"provisioning_state": "string",
"resource_guid": "string",
"security_rules": [{
"direction": "string",
"protocol": "string",
"access": "string",
"name": "string",
"description": "string",
"destination_port_range": "string",
"destination_port_ranges": ["string"],
"destination_address_prefixes": ["string"],
"etag": "string",
"id": "string",
"destination_address_prefix": "string",
"priority": 0,
"destination_application_security_groups": [{
"id": "string",
"location": "string",
"tags": {
"string": "string",
},
}],
"provisioning_state": "string",
"source_address_prefix": "string",
"source_address_prefixes": ["string"],
"source_application_security_groups": [{
"id": "string",
"location": "string",
"tags": {
"string": "string",
},
}],
"source_port_range":