Load Balancer Args
data class LoadBalancerArgs constructor(val accessLogs: Output<LoadBalancerAccessLogsArgs>? = null, val customerOwnedIpv4Pool: Output<String>? = null, val desyncMitigationMode: Output<String>? = null, val dropInvalidHeaderFields: Output<Boolean>? = null, val enableCrossZoneLoadBalancing: Output<Boolean>? = null, val enableDeletionProtection: Output<Boolean>? = null, val enableHttp2: Output<Boolean>? = null, val enableTlsVersionAndCipherSuiteHeaders: Output<Boolean>? = null, val enableWafFailOpen: Output<Boolean>? = null, val enableXffClientPort: Output<Boolean>? = null, val idleTimeout: Output<Int>? = null, val internal: Output<Boolean>? = null, val ipAddressType: Output<String>? = null, val loadBalancerType: Output<String>? = null, val name: Output<String>? = null, val namePrefix: Output<String>? = null, val preserveHostHeader: Output<Boolean>? = null, val securityGroups: Output<List<String>>? = null, val subnetMappings: Output<List<LoadBalancerSubnetMappingArgs>>? = null, val subnets: Output<List<String>>? = null, val tags: Output<Map<String, String>>? = null, val xffHeaderProcessingMode: Output<String>? = null) : ConvertibleToJava<LoadBalancerArgs>
Provides a Load Balancer resource.
Note:
aws.alb.LoadBalancer
is known asaws.lb.LoadBalancer
. The functionality is identical.
Example Usage
Application Load Balancer
No Java example available.
Network Load Balancer
No Java example available.
Specifying Elastic IPs
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.lb.LoadBalancer;
import com.pulumi.aws.lb.LoadBalancerArgs;
import com.pulumi.aws.lb.inputs.LoadBalancerSubnetMappingArgs;
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 example = new LoadBalancer("example", LoadBalancerArgs.builder()
.loadBalancerType("network")
.subnetMappings(
LoadBalancerSubnetMappingArgs.builder()
.subnetId(aws_subnet.example1().id())
.allocationId(aws_eip.example1().id())
.build(),
LoadBalancerSubnetMappingArgs.builder()
.subnetId(aws_subnet.example2().id())
.allocationId(aws_eip.example2().id())
.build())
.build());
}
}
Content copied to clipboard
Specifying private IP addresses for an internal-facing load balancer
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.lb.LoadBalancer;
import com.pulumi.aws.lb.LoadBalancerArgs;
import com.pulumi.aws.lb.inputs.LoadBalancerSubnetMappingArgs;
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 example = new LoadBalancer("example", LoadBalancerArgs.builder()
.loadBalancerType("network")
.subnetMappings(
LoadBalancerSubnetMappingArgs.builder()
.subnetId(aws_subnet.example1().id())
.privateIpv4Address("10.0.1.15")
.build(),
LoadBalancerSubnetMappingArgs.builder()
.subnetId(aws_subnet.example2().id())
.privateIpv4Address("10.0.2.15")
.build())
.build());
}
}
Content copied to clipboard
Import
LBs can be imported using their ARN, e.g.,
$ pulumi import aws:elasticloadbalancingv2/loadBalancer:LoadBalancer bar arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188
Content copied to clipboard
Constructors
Link copied to clipboard
fun LoadBalancerArgs(accessLogs: Output<LoadBalancerAccessLogsArgs>? = null, customerOwnedIpv4Pool: Output<String>? = null, desyncMitigationMode: Output<String>? = null, dropInvalidHeaderFields: Output<Boolean>? = null, enableCrossZoneLoadBalancing: Output<Boolean>? = null, enableDeletionProtection: Output<Boolean>? = null, enableHttp2: Output<Boolean>? = null, enableTlsVersionAndCipherSuiteHeaders: Output<Boolean>? = null, enableWafFailOpen: Output<Boolean>? = null, enableXffClientPort: Output<Boolean>? = null, idleTimeout: Output<Int>? = null, internal: Output<Boolean>? = null, ipAddressType: Output<String>? = null, loadBalancerType: Output<String>? = null, name: Output<String>? = null, namePrefix: Output<String>? = null, preserveHostHeader: Output<Boolean>? = null, securityGroups: Output<List<String>>? = null, subnetMappings: Output<List<LoadBalancerSubnetMappingArgs>>? = null, subnets: Output<List<String>>? = null, tags: Output<Map<String, String>>? = null, xffHeaderProcessingMode: Output<String>? = null)
Functions
Properties
Link copied to clipboard
Indicates whether HTTP headers with header fields that are not valid are removed by the load balancer (true) or routed to targets (false). The default is false. Elastic Load Balancing requires that message header names contain only alphanumeric characters and hyphens. Only valid for Load Balancers of type application
.