AWS Classic

Pulumi Official
Package maintained by Pulumi
v5.10.0 published on Monday, Jul 11, 2022 by Pulumi

LoadBalancer

Provides a Load Balancer resource.

Note: aws.alb.LoadBalancer is known as aws.lb.LoadBalancer. The functionality is identical.

Example Usage

Application Load Balancer

Coming soon!

Coming soon!

Coming soon!

import pulumi
import pulumi_aws as aws

test = aws.lb.LoadBalancer("test",
    internal=False,
    load_balancer_type="application",
    security_groups=[aws_security_group["lb_sg"]["id"]],
    subnets=[subnet["id"] for subnet in aws_subnet["public"]],
    enable_deletion_protection=True,
    access_logs=aws.lb.LoadBalancerAccessLogsArgs(
        bucket=aws_s3_bucket["lb_logs"]["bucket"],
        prefix="test-lb",
        enabled=True,
    ),
    tags={
        "Environment": "production",
    })
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const test = new aws.lb.LoadBalancer("test", {
    internal: false,
    loadBalancerType: "application",
    securityGroups: [aws_security_group.lb_sg.id],
    subnets: .map(subnet => subnet.id),
    enableDeletionProtection: true,
    accessLogs: {
        bucket: aws_s3_bucket.lb_logs.bucket,
        prefix: "test-lb",
        enabled: true,
    },
    tags: {
        Environment: "production",
    },
});

Coming soon!

Network Load Balancer

Coming soon!

Coming soon!

Coming soon!

import pulumi
import pulumi_aws as aws

test = aws.lb.LoadBalancer("test",
    internal=False,
    load_balancer_type="network",
    subnets=[subnet["id"] for subnet in aws_subnet["public"]],
    enable_deletion_protection=True,
    tags={
        "Environment": "production",
    })
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const test = new aws.lb.LoadBalancer("test", {
    internal: false,
    loadBalancerType: "network",
    subnets: .map(subnet => subnet.id),
    enableDeletionProtection: true,
    tags: {
        Environment: "production",
    },
});

Coming soon!

Specifying Elastic IPs

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
    public MyStack()
    {
        var example = new Aws.LB.LoadBalancer("example", new Aws.LB.LoadBalancerArgs
        {
            LoadBalancerType = "network",
            SubnetMappings = 
            {
                new Aws.LB.Inputs.LoadBalancerSubnetMappingArgs
                {
                    SubnetId = aws_subnet.Example1.Id,
                    AllocationId = aws_eip.Example1.Id,
                },
                new Aws.LB.Inputs.LoadBalancerSubnetMappingArgs
                {
                    SubnetId = aws_subnet.Example2.Id,
                    AllocationId = aws_eip.Example2.Id,
                },
            },
        });
    }

}
package main

import (
	"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lb"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := lb.NewLoadBalancer(ctx, "example", &lb.LoadBalancerArgs{
			LoadBalancerType: pulumi.String("network"),
			SubnetMappings: lb.LoadBalancerSubnetMappingArray{
				&lb.LoadBalancerSubnetMappingArgs{
					SubnetId:     pulumi.Any(aws_subnet.Example1.Id),
					AllocationId: pulumi.Any(aws_eip.Example1.Id),
				},
				&lb.LoadBalancerSubnetMappingArgs{
					SubnetId:     pulumi.Any(aws_subnet.Example2.Id),
					AllocationId: pulumi.Any(aws_eip.Example2.Id),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import java.util.*;
import java.io.*;
import java.nio.*;
import com.pulumi.*;

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());

    }
}
import pulumi
import pulumi_aws as aws

example = aws.lb.LoadBalancer("example",
    load_balancer_type="network",
    subnet_mappings=[
        aws.lb.LoadBalancerSubnetMappingArgs(
            subnet_id=aws_subnet["example1"]["id"],
            allocation_id=aws_eip["example1"]["id"],
        ),
        aws.lb.LoadBalancerSubnetMappingArgs(
            subnet_id=aws_subnet["example2"]["id"],
            allocation_id=aws_eip["example2"]["id"],
        ),
    ])
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.lb.LoadBalancer("example", {
    loadBalancerType: "network",
    subnetMappings: [
        {
            subnetId: aws_subnet.example1.id,
            allocationId: aws_eip.example1.id,
        },
        {
            subnetId: aws_subnet.example2.id,
            allocationId: aws_eip.example2.id,
        },
    ],
});
resources:
  example:
    type: aws:lb:LoadBalancer
    properties:
      loadBalancerType: network
      subnetMappings:
        - subnetId: ${aws_subnet.example1.id}
          allocationId: ${aws_eip.example1.id}
        - subnetId: ${aws_subnet.example2.id}
          allocationId: ${aws_eip.example2.id}

Specifying private IP addresses for an internal-facing load balancer

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
    public MyStack()
    {
        var example = new Aws.LB.LoadBalancer("example", new Aws.LB.LoadBalancerArgs
        {
            LoadBalancerType = "network",
            SubnetMappings = 
            {
                new Aws.LB.Inputs.LoadBalancerSubnetMappingArgs
                {
                    SubnetId = aws_subnet.Example1.Id,
                    PrivateIpv4Address = "10.0.1.15",
                },
                new Aws.LB.Inputs.LoadBalancerSubnetMappingArgs
                {
                    SubnetId = aws_subnet.Example2.Id,
                    PrivateIpv4Address = "10.0.2.15",
                },
            },
        });
    }

}
package main

import (
	"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lb"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := lb.NewLoadBalancer(ctx, "example", &lb.LoadBalancerArgs{
			LoadBalancerType: pulumi.String("network"),
			SubnetMappings: lb.LoadBalancerSubnetMappingArray{
				&lb.LoadBalancerSubnetMappingArgs{
					SubnetId:           pulumi.Any(aws_subnet.Example1.Id),
					PrivateIpv4Address: pulumi.String("10.0.1.15"),
				},
				&lb.LoadBalancerSubnetMappingArgs{
					SubnetId:           pulumi.Any(aws_subnet.Example2.Id),
					PrivateIpv4Address: pulumi.String("10.0.2.15"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import java.util.*;
import java.io.*;
import java.nio.*;
import com.pulumi.*;

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());

    }
}
import pulumi
import pulumi_aws as aws

example = aws.lb.LoadBalancer("example",
    load_balancer_type="network",
    subnet_mappings=[
        aws.lb.LoadBalancerSubnetMappingArgs(
            subnet_id=aws_subnet["example1"]["id"],
            private_ipv4_address="10.0.1.15",
        ),
        aws.lb.LoadBalancerSubnetMappingArgs(
            subnet_id=aws_subnet["example2"]["id"],
            private_ipv4_address="10.0.2.15",
        ),
    ])
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.lb.LoadBalancer("example", {
    loadBalancerType: "network",
    subnetMappings: [
        {
            subnetId: aws_subnet.example1.id,
            privateIpv4Address: "10.0.1.15",
        },
        {
            subnetId: aws_subnet.example2.id,
            privateIpv4Address: "10.0.2.15",
        },
    ],
});
resources:
  example:
    type: aws:lb:LoadBalancer
    properties:
      loadBalancerType: network
      subnetMappings:
        - subnetId: ${aws_subnet.example1.id}
          privateIpv4Address: 10.0.1.15
        - subnetId: ${aws_subnet.example2.id}
          privateIpv4Address: 10.0.2.15

Create a LoadBalancer Resource

new LoadBalancer(name: string, args?: LoadBalancerArgs, opts?: CustomResourceOptions);
@overload
def LoadBalancer(resource_name: str,
                 opts: Optional[ResourceOptions] = None,
                 access_logs: Optional[LoadBalancerAccessLogsArgs] = None,
                 customer_owned_ipv4_pool: Optional[str] = None,
                 desync_mitigation_mode: Optional[str] = None,
                 drop_invalid_header_fields: Optional[bool] = None,
                 enable_cross_zone_load_balancing: Optional[bool] = None,
                 enable_deletion_protection: Optional[bool] = None,
                 enable_http2: Optional[bool] = None,
                 enable_waf_fail_open: Optional[bool] = None,
                 idle_timeout: Optional[int] = None,
                 internal: Optional[bool] = None,
                 ip_address_type: Optional[str] = None,
                 load_balancer_type: Optional[str] = None,
                 name: Optional[str] = None,
                 name_prefix: Optional[str] = None,
                 security_groups: Optional[Sequence[str]] = None,
                 subnet_mappings: Optional[Sequence[LoadBalancerSubnetMappingArgs]] = None,
                 subnets: Optional[Sequence[str]] = None,
                 tags: Optional[Mapping[str, str]] = None)
@overload
def LoadBalancer(resource_name: str,
                 args: Optional[LoadBalancerArgs] = None,
                 opts: Optional[ResourceOptions] = None)
func NewLoadBalancer(ctx *Context, name string, args *LoadBalancerArgs, opts ...ResourceOption) (*LoadBalancer, error)
public LoadBalancer(string name, LoadBalancerArgs? args = null, CustomResourceOptions? opts = null)
public LoadBalancer(String name, LoadBalancerArgs args)
public LoadBalancer(String name, LoadBalancerArgs args, CustomResourceOptions options)
type: aws:lb:LoadBalancer
properties: # The arguments to resource properties.
options: # 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.
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.

LoadBalancer Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

The LoadBalancer resource accepts the following input properties:

AccessLogs LoadBalancerAccessLogsArgs

An Access Logs block. Access Logs documented below.

CustomerOwnedIpv4Pool string

The ID of the customer owned ipv4 pool to use for this load balancer.

DesyncMitigationMode string

Determines how the load balancer handles requests that might pose a security risk to an application due to HTTP desync. Valid values are monitor, defensive (default), strictest.

DropInvalidHeaderFields bool

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.

EnableCrossZoneLoadBalancing bool

If true, cross-zone load balancing of the load balancer will be enabled. This is a network load balancer feature. Defaults to false.

EnableDeletionProtection bool

If true, deletion of the load balancer will be disabled via the AWS API. This will prevent this provider from deleting the load balancer. Defaults to false.

EnableHttp2 bool

Indicates whether HTTP/2 is enabled in application load balancers. Defaults to true.

EnableWafFailOpen bool

Indicates whether to allow a WAF-enabled load balancer to route requests to targets if it is unable to forward the request to AWS WAF. Defaults to false.

IdleTimeout int

The time in seconds that the connection is allowed to be idle. Only valid for Load Balancers of type application. Default: 60.

Internal bool

If true, the LB will be internal.

IpAddressType string

The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 and dualstack

LoadBalancerType string

The type of load balancer to create. Possible values are application, gateway, or network. The default value is application.

Name string

The name of the LB. This name must be unique within your AWS account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and must not begin or end with a hyphen. If not specified, this provider will autogenerate a name beginning with tf-lb.

NamePrefix string

Creates a unique name beginning with the specified prefix. Conflicts with name.

SecurityGroups List<string>

A list of security group IDs to assign to the LB. Only valid for Load Balancers of type application.

SubnetMappings List<LoadBalancerSubnetMappingArgs>

A subnet mapping block as documented below.

Subnets List<string>

A list of subnet IDs to attach to the LB. Subnets cannot be updated for Load Balancers of type network. Changing this value for load balancers of type network will force a recreation of the resource.

Tags Dictionary<string, string>

A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

AccessLogs LoadBalancerAccessLogsArgs

An Access Logs block. Access Logs documented below.

CustomerOwnedIpv4Pool string

The ID of the customer owned ipv4 pool to use for this load balancer.

DesyncMitigationMode string

Determines how the load balancer handles requests that might pose a security risk to an application due to HTTP desync. Valid values are monitor, defensive (default), strictest.

DropInvalidHeaderFields bool

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.

EnableCrossZoneLoadBalancing bool

If true, cross-zone load balancing of the load balancer will be enabled. This is a network load balancer feature. Defaults to false.

EnableDeletionProtection bool

If true, deletion of the load balancer will be disabled via the AWS API. This will prevent this provider from deleting the load balancer. Defaults to false.

EnableHttp2 bool

Indicates whether HTTP/2 is enabled in application load balancers. Defaults to true.

EnableWafFailOpen bool

Indicates whether to allow a WAF-enabled load balancer to route requests to targets if it is unable to forward the request to AWS WAF. Defaults to false.

IdleTimeout int

The time in seconds that the connection is allowed to be idle. Only valid for Load Balancers of type application. Default: 60.

Internal bool

If true, the LB will be internal.

IpAddressType string

The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 and dualstack

LoadBalancerType string

The type of load balancer to create. Possible values are application, gateway, or network. The default value is application.

Name string

The name of the LB. This name must be unique within your AWS account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and must not begin or end with a hyphen. If not specified, this provider will autogenerate a name beginning with tf-lb.

NamePrefix string

Creates a unique name beginning with the specified prefix. Conflicts with name.

SecurityGroups []string

A list of security group IDs to assign to the LB. Only valid for Load Balancers of type application.

SubnetMappings []LoadBalancerSubnetMappingArgs

A subnet mapping block as documented below.

Subnets []string

A list of subnet IDs to attach to the LB. Subnets cannot be updated for Load Balancers of type network. Changing this value for load balancers of type network will force a recreation of the resource.

Tags map[string]string

A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

accessLogs LoadBalancerAccessLogsArgs

An Access Logs block. Access Logs documented below.

customerOwnedIpv4Pool String

The ID of the customer owned ipv4 pool to use for this load balancer.

desyncMitigationMode String

Determines how the load balancer handles requests that might pose a security risk to an application due to HTTP desync. Valid values are monitor, defensive (default), strictest.

dropInvalidHeaderFields Boolean

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.

enableCrossZoneLoadBalancing Boolean

If true, cross-zone load balancing of the load balancer will be enabled. This is a network load balancer feature. Defaults to false.

enableDeletionProtection Boolean

If true, deletion of the load balancer will be disabled via the AWS API. This will prevent this provider from deleting the load balancer. Defaults to false.

enableHttp2 Boolean

Indicates whether HTTP/2 is enabled in application load balancers. Defaults to true.

enableWafFailOpen Boolean

Indicates whether to allow a WAF-enabled load balancer to route requests to targets if it is unable to forward the request to AWS WAF. Defaults to false.

idleTimeout Integer

The time in seconds that the connection is allowed to be idle. Only valid for Load Balancers of type application. Default: 60.

internal Boolean

If true, the LB will be internal.

ipAddressType String

The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 and dualstack

loadBalancerType String

The type of load balancer to create. Possible values are application, gateway, or network. The default value is application.

name String

The name of the LB. This name must be unique within your AWS account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and must not begin or end with a hyphen. If not specified, this provider will autogenerate a name beginning with tf-lb.

namePrefix String

Creates a unique name beginning with the specified prefix. Conflicts with name.

securityGroups List<String>

A list of security group IDs to assign to the LB. Only valid for Load Balancers of type application.

subnetMappings List<LoadBalancerSubnetMappingArgs>

A subnet mapping block as documented below.

subnets List<String>

A list of subnet IDs to attach to the LB. Subnets cannot be updated for Load Balancers of type network. Changing this value for load balancers of type network will force a recreation of the resource.

tags Map<String,String>

A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

accessLogs LoadBalancerAccessLogsArgs

An Access Logs block. Access Logs documented below.

customerOwnedIpv4Pool string

The ID of the customer owned ipv4 pool to use for this load balancer.

desyncMitigationMode string

Determines how the load balancer handles requests that might pose a security risk to an application due to HTTP desync. Valid values are monitor, defensive (default), strictest.

dropInvalidHeaderFields boolean

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.

enableCrossZoneLoadBalancing boolean

If true, cross-zone load balancing of the load balancer will be enabled. This is a network load balancer feature. Defaults to false.

enableDeletionProtection boolean

If true, deletion of the load balancer will be disabled via the AWS API. This will prevent this provider from deleting the load balancer. Defaults to false.

enableHttp2 boolean

Indicates whether HTTP/2 is enabled in application load balancers. Defaults to true.

enableWafFailOpen boolean

Indicates whether to allow a WAF-enabled load balancer to route requests to targets if it is unable to forward the request to AWS WAF. Defaults to false.

idleTimeout number

The time in seconds that the connection is allowed to be idle. Only valid for Load Balancers of type application. Default: 60.

internal boolean

If true, the LB will be internal.

ipAddressType string

The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 and dualstack

loadBalancerType string

The type of load balancer to create. Possible values are application, gateway, or network. The default value is application.

name string

The name of the LB. This name must be unique within your AWS account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and must not begin or end with a hyphen. If not specified, this provider will autogenerate a name beginning with tf-lb.

namePrefix string

Creates a unique name beginning with the specified prefix. Conflicts with name.

securityGroups string[]

A list of security group IDs to assign to the LB. Only valid for Load Balancers of type application.

subnetMappings LoadBalancerSubnetMappingArgs[]

A subnet mapping block as documented below.

subnets string[]

A list of subnet IDs to attach to the LB. Subnets cannot be updated for Load Balancers of type network. Changing this value for load balancers of type network will force a recreation of the resource.

tags {[key: string]: string}

A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

access_logs LoadBalancerAccessLogsArgs

An Access Logs block. Access Logs documented below.

customer_owned_ipv4_pool str

The ID of the customer owned ipv4 pool to use for this load balancer.

desync_mitigation_mode str

Determines how the load balancer handles requests that might pose a security risk to an application due to HTTP desync. Valid values are monitor, defensive (default), strictest.

drop_invalid_header_fields bool

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.

enable_cross_zone_load_balancing bool

If true, cross-zone load balancing of the load balancer will be enabled. This is a network load balancer feature. Defaults to false.

enable_deletion_protection bool

If true, deletion of the load balancer will be disabled via the AWS API. This will prevent this provider from deleting the load balancer. Defaults to false.

enable_http2 bool

Indicates whether HTTP/2 is enabled in application load balancers. Defaults to true.

enable_waf_fail_open bool

Indicates whether to allow a WAF-enabled load balancer to route requests to targets if it is unable to forward the request to AWS WAF. Defaults to false.

idle_timeout int

The time in seconds that the connection is allowed to be idle. Only valid for Load Balancers of type application. Default: 60.

internal bool

If true, the LB will be internal.

ip_address_type str

The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 and dualstack

load_balancer_type str

The type of load balancer to create. Possible values are application, gateway, or network. The default value is application.

name str

The name of the LB. This name must be unique within your AWS account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and must not begin or end with a hyphen. If not specified, this provider will autogenerate a name beginning with tf-lb.

name_prefix str

Creates a unique name beginning with the specified prefix. Conflicts with name.

security_groups Sequence[str]

A list of security group IDs to assign to the LB. Only valid for Load Balancers of type application.

subnet_mappings Sequence[LoadBalancerSubnetMappingArgs]

A subnet mapping block as documented below.

subnets Sequence[str]

A list of subnet IDs to attach to the LB. Subnets cannot be updated for Load Balancers of type network. Changing this value for load balancers of type network will force a recreation of the resource.

tags Mapping[str, str]

A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

accessLogs Property Map

An Access Logs block. Access Logs documented below.

customerOwnedIpv4Pool String

The ID of the customer owned ipv4 pool to use for this load balancer.

desyncMitigationMode String

Determines how the load balancer handles requests that might pose a security risk to an application due to HTTP desync. Valid values are monitor, defensive (default), strictest.

dropInvalidHeaderFields Boolean

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.

enableCrossZoneLoadBalancing Boolean

If true, cross-zone load balancing of the load balancer will be enabled. This is a network load balancer feature. Defaults to false.

enableDeletionProtection Boolean

If true, deletion of the load balancer will be disabled via the AWS API. This will prevent this provider from deleting the load balancer. Defaults to false.

enableHttp2 Boolean

Indicates whether HTTP/2 is enabled in application load balancers. Defaults to true.

enableWafFailOpen Boolean

Indicates whether to allow a WAF-enabled load balancer to route requests to targets if it is unable to forward the request to AWS WAF. Defaults to false.

idleTimeout Number

The time in seconds that the connection is allowed to be idle. Only valid for Load Balancers of type application. Default: 60.

internal Boolean

If true, the LB will be internal.

ipAddressType String

The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 and dualstack

loadBalancerType String

The type of load balancer to create. Possible values are application, gateway, or network. The default value is application.

name String

The name of the LB. This name must be unique within your AWS account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and must not begin or end with a hyphen. If not specified, this provider will autogenerate a name beginning with tf-lb.

namePrefix String

Creates a unique name beginning with the specified prefix. Conflicts with name.

securityGroups List<String>

A list of security group IDs to assign to the LB. Only valid for Load Balancers of type application.

subnetMappings List<Property Map>

A subnet mapping block as documented below.

subnets List<String>

A list of subnet IDs to attach to the LB. Subnets cannot be updated for Load Balancers of type network. Changing this value for load balancers of type network will force a recreation of the resource.

tags Map<String>

A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

Outputs

All input properties are implicitly available as output properties. Additionally, the LoadBalancer resource produces the following output properties:

Arn string

The ARN of the load balancer (matches id).

ArnSuffix string

The ARN suffix for use with CloudWatch Metrics.

DnsName string

The DNS name of the load balancer.

Id string

The provider-assigned unique ID for this managed resource.

TagsAll Dictionary<string, string>

A map of tags assigned to the resource, including those inherited from the provider .

VpcId string
ZoneId string

The canonical hosted zone ID of the load balancer (to be used in a Route 53 Alias record).

  • subnet_mapping.*.outpost_id - ID of the Outpost containing the load balancer.
Arn string

The ARN of the load balancer (matches id).

ArnSuffix string

The ARN suffix for use with CloudWatch Metrics.

DnsName string

The DNS name of the load balancer.

Id string

The provider-assigned unique ID for this managed resource.

TagsAll map[string]string

A map of tags assigned to the resource, including those inherited from the provider .

VpcId string
ZoneId string

The canonical hosted zone ID of the load balancer (to be used in a Route 53 Alias record).

  • subnet_mapping.*.outpost_id - ID of the Outpost containing the load balancer.
arn String

The ARN of the load balancer (matches id).

arnSuffix String

The ARN suffix for use with CloudWatch Metrics.

dnsName String

The DNS name of the load balancer.

id String

The provider-assigned unique ID for this managed resource.

tagsAll Map<String,String>

A map of tags assigned to the resource, including those inherited from the provider .

vpcId String
zoneId String

The canonical hosted zone ID of the load balancer (to be used in a Route 53 Alias record).

  • subnet_mapping.*.outpost_id - ID of the Outpost containing the load balancer.
arn string

The ARN of the load balancer (matches id).

arnSuffix string

The ARN suffix for use with CloudWatch Metrics.

dnsName string

The DNS name of the load balancer.

id string

The provider-assigned unique ID for this managed resource.

tagsAll {[key: string]: string}

A map of tags assigned to the resource, including those inherited from the provider .

vpcId string
zoneId string

The canonical hosted zone ID of the load balancer (to be used in a Route 53 Alias record).

  • subnet_mapping.*.outpost_id - ID of the Outpost containing the load balancer.
arn str

The ARN of the load balancer (matches id).

arn_suffix str

The ARN suffix for use with CloudWatch Metrics.

dns_name str

The DNS name of the load balancer.

id str

The provider-assigned unique ID for this managed resource.

tags_all Mapping[str, str]

A map of tags assigned to the resource, including those inherited from the provider .

vpc_id str
zone_id str

The canonical hosted zone ID of the load balancer (to be used in a Route 53 Alias record).

  • subnet_mapping.*.outpost_id - ID of the Outpost containing the load balancer.
arn String

The ARN of the load balancer (matches id).

arnSuffix String

The ARN suffix for use with CloudWatch Metrics.

dnsName String

The DNS name of the load balancer.

id String

The provider-assigned unique ID for this managed resource.

tagsAll Map<String>

A map of tags assigned to the resource, including those inherited from the provider .

vpcId String
zoneId String

The canonical hosted zone ID of the load balancer (to be used in a Route 53 Alias record).

  • subnet_mapping.*.outpost_id - ID of the Outpost containing the load balancer.

Look up an Existing LoadBalancer Resource

Get an existing LoadBalancer resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: LoadBalancerState, opts?: CustomResourceOptions): LoadBalancer
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        access_logs: Optional[LoadBalancerAccessLogsArgs] = None,
        arn: Optional[str] = None,
        arn_suffix: Optional[str] = None,
        customer_owned_ipv4_pool: Optional[str] = None,
        desync_mitigation_mode: Optional[str] = None,
        dns_name: Optional[str] = None,
        drop_invalid_header_fields: Optional[bool] = None,
        enable_cross_zone_load_balancing: Optional[bool] = None,
        enable_deletion_protection: Optional[bool] = None,
        enable_http2: Optional[bool] = None,
        enable_waf_fail_open: Optional[bool] = None,
        idle_timeout: Optional[int] = None,
        internal: Optional[bool] = None,
        ip_address_type: Optional[str] = None,
        load_balancer_type: Optional[str] = None,
        name: Optional[str] = None,
        name_prefix: Optional[str] = None,
        security_groups: Optional[Sequence[str]] = None,
        subnet_mappings: Optional[Sequence[LoadBalancerSubnetMappingArgs]] = None,
        subnets: Optional[Sequence[str]] = None,
        tags: Optional[Mapping[str, str]] = None,
        tags_all: Optional[Mapping[str, str]] = None,
        vpc_id: Optional[str] = None,
        zone_id: Optional[str] = None) -> LoadBalancer
func GetLoadBalancer(ctx *Context, name string, id IDInput, state *LoadBalancerState, opts ...ResourceOption) (*LoadBalancer, error)
public static LoadBalancer Get(string name, Input<string> id, LoadBalancerState? state, CustomResourceOptions? opts = null)
public static LoadBalancer get(String name, Output<String> id, LoadBalancerState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
AccessLogs LoadBalancerAccessLogsArgs

An Access Logs block. Access Logs documented below.

Arn string

The ARN of the load balancer (matches id).

ArnSuffix string

The ARN suffix for use with CloudWatch Metrics.

CustomerOwnedIpv4Pool string

The ID of the customer owned ipv4 pool to use for this load balancer.

DesyncMitigationMode string

Determines how the load balancer handles requests that might pose a security risk to an application due to HTTP desync. Valid values are monitor, defensive (default), strictest.

DnsName string

The DNS name of the load balancer.

DropInvalidHeaderFields bool

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.

EnableCrossZoneLoadBalancing bool

If true, cross-zone load balancing of the load balancer will be enabled. This is a network load balancer feature. Defaults to false.

EnableDeletionProtection bool

If true, deletion of the load balancer will be disabled via the AWS API. This will prevent this provider from deleting the load balancer. Defaults to false.

EnableHttp2 bool

Indicates whether HTTP/2 is enabled in application load balancers. Defaults to true.

EnableWafFailOpen bool

Indicates whether to allow a WAF-enabled load balancer to route requests to targets if it is unable to forward the request to AWS WAF. Defaults to false.

IdleTimeout int

The time in seconds that the connection is allowed to be idle. Only valid for Load Balancers of type application. Default: 60.

Internal bool

If true, the LB will be internal.

IpAddressType string

The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 and dualstack

LoadBalancerType string

The type of load balancer to create. Possible values are application, gateway, or network. The default value is application.

Name string

The name of the LB. This name must be unique within your AWS account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and must not begin or end with a hyphen. If not specified, this provider will autogenerate a name beginning with tf-lb.

NamePrefix string

Creates a unique name beginning with the specified prefix. Conflicts with name.

SecurityGroups List<string>

A list of security group IDs to assign to the LB. Only valid for Load Balancers of type application.

SubnetMappings List<LoadBalancerSubnetMappingArgs>

A subnet mapping block as documented below.

Subnets List<string>

A list of subnet IDs to attach to the LB. Subnets cannot be updated for Load Balancers of type network. Changing this value for load balancers of type network will force a recreation of the resource.

Tags Dictionary<string, string>

A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

TagsAll Dictionary<string, string>

A map of tags assigned to the resource, including those inherited from the provider .

VpcId string
ZoneId string

The canonical hosted zone ID of the load balancer (to be used in a Route 53 Alias record).

  • subnet_mapping.*.outpost_id - ID of the Outpost containing the load balancer.
AccessLogs LoadBalancerAccessLogsArgs

An Access Logs block. Access Logs documented below.

Arn string

The ARN of the load balancer (matches id).

ArnSuffix string

The ARN suffix for use with CloudWatch Metrics.

CustomerOwnedIpv4Pool string

The ID of the customer owned ipv4 pool to use for this load balancer.

DesyncMitigationMode string

Determines how the load balancer handles requests that might pose a security risk to an application due to HTTP desync. Valid values are monitor, defensive (default), strictest.

DnsName string

The DNS name of the load balancer.

DropInvalidHeaderFields bool

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.

EnableCrossZoneLoadBalancing bool

If true, cross-zone load balancing of the load balancer will be enabled. This is a network load balancer feature. Defaults to false.

EnableDeletionProtection bool

If true, deletion of the load balancer will be disabled via the AWS API. This will prevent this provider from deleting the load balancer. Defaults to false.

EnableHttp2 bool

Indicates whether HTTP/2 is enabled in application load balancers. Defaults to true.

EnableWafFailOpen bool

Indicates whether to allow a WAF-enabled load balancer to route requests to targets if it is unable to forward the request to AWS WAF. Defaults to false.

IdleTimeout int

The time in seconds that the connection is allowed to be idle. Only valid for Load Balancers of type application. Default: 60.

Internal bool

If true, the LB will be internal.

IpAddressType string

The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 and dualstack

LoadBalancerType string

The type of load balancer to create. Possible values are application, gateway, or network. The default value is application.

Name string

The name of the LB. This name must be unique within your AWS account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and must not begin or end with a hyphen. If not specified, this provider will autogenerate a name beginning with tf-lb.

NamePrefix string

Creates a unique name beginning with the specified prefix. Conflicts with name.

SecurityGroups []string

A list of security group IDs to assign to the LB. Only valid for Load Balancers of type application.

SubnetMappings []LoadBalancerSubnetMappingArgs

A subnet mapping block as documented below.

Subnets []string

A list of subnet IDs to attach to the LB. Subnets cannot be updated for Load Balancers of type network. Changing this value for load balancers of type network will force a recreation of the resource.

Tags map[string]string

A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

TagsAll map[string]string

A map of tags assigned to the resource, including those inherited from the provider .

VpcId string
ZoneId string

The canonical hosted zone ID of the load balancer (to be used in a Route 53 Alias record).

  • subnet_mapping.*.outpost_id - ID of the Outpost containing the load balancer.
accessLogs LoadBalancerAccessLogsArgs

An Access Logs block. Access Logs documented below.

arn String

The ARN of the load balancer (matches id).

arnSuffix String

The ARN suffix for use with CloudWatch Metrics.

customerOwnedIpv4Pool String

The ID of the customer owned ipv4 pool to use for this load balancer.

desyncMitigationMode String

Determines how the load balancer handles requests that might pose a security risk to an application due to HTTP desync. Valid values are monitor, defensive (default), strictest.

dnsName String

The DNS name of the load balancer.

dropInvalidHeaderFields Boolean

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.

enableCrossZoneLoadBalancing Boolean

If true, cross-zone load balancing of the load balancer will be enabled. This is a network load balancer feature. Defaults to false.

enableDeletionProtection Boolean

If true, deletion of the load balancer will be disabled via the AWS API. This will prevent this provider from deleting the load balancer. Defaults to false.

enableHttp2 Boolean

Indicates whether HTTP/2 is enabled in application load balancers. Defaults to true.

enableWafFailOpen Boolean

Indicates whether to allow a WAF-enabled load balancer to route requests to targets if it is unable to forward the request to AWS WAF. Defaults to false.

idleTimeout Integer

The time in seconds that the connection is allowed to be idle. Only valid for Load Balancers of type application. Default: 60.

internal Boolean

If true, the LB will be internal.

ipAddressType String

The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 and dualstack

loadBalancerType String

The type of load balancer to create. Possible values are application, gateway, or network. The default value is application.

name String

The name of the LB. This name must be unique within your AWS account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and must not begin or end with a hyphen. If not specified, this provider will autogenerate a name beginning with tf-lb.

namePrefix String

Creates a unique name beginning with the specified prefix. Conflicts with name.

securityGroups List<String>

A list of security group IDs to assign to the LB. Only valid for Load Balancers of type application.

subnetMappings List<LoadBalancerSubnetMappingArgs>

A subnet mapping block as documented below.

subnets List<String>

A list of subnet IDs to attach to the LB. Subnets cannot be updated for Load Balancers of type network. Changing this value for load balancers of type network will force a recreation of the resource.

tags Map<String,String>

A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

tagsAll Map<String,String>

A map of tags assigned to the resource, including those inherited from the provider .

vpcId String
zoneId String

The canonical hosted zone ID of the load balancer (to be used in a Route 53 Alias record).

  • subnet_mapping.*.outpost_id - ID of the Outpost containing the load balancer.
accessLogs LoadBalancerAccessLogsArgs

An Access Logs block. Access Logs documented below.

arn string

The ARN of the load balancer (matches id).

arnSuffix string

The ARN suffix for use with CloudWatch Metrics.

customerOwnedIpv4Pool string

The ID of the customer owned ipv4 pool to use for this load balancer.

desyncMitigationMode string

Determines how the load balancer handles requests that might pose a security risk to an application due to HTTP desync. Valid values are monitor, defensive (default), strictest.

dnsName string

The DNS name of the load balancer.

dropInvalidHeaderFields boolean

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.

enableCrossZoneLoadBalancing boolean

If true, cross-zone load balancing of the load balancer will be enabled. This is a network load balancer feature. Defaults to false.

enableDeletionProtection boolean

If true, deletion of the load balancer will be disabled via the AWS API. This will prevent this provider from deleting the load balancer. Defaults to false.

enableHttp2 boolean

Indicates whether HTTP/2 is enabled in application load balancers. Defaults to true.

enableWafFailOpen boolean

Indicates whether to allow a WAF-enabled load balancer to route requests to targets if it is unable to forward the request to AWS WAF. Defaults to false.

idleTimeout number

The time in seconds that the connection is allowed to be idle. Only valid for Load Balancers of type application. Default: 60.

internal boolean

If true, the LB will be internal.

ipAddressType string

The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 and dualstack

loadBalancerType string

The type of load balancer to create. Possible values are application, gateway, or network. The default value is application.

name string

The name of the LB. This name must be unique within your AWS account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and must not begin or end with a hyphen. If not specified, this provider will autogenerate a name beginning with tf-lb.

namePrefix string

Creates a unique name beginning with the specified prefix. Conflicts with name.

securityGroups string[]

A list of security group IDs to assign to the LB. Only valid for Load Balancers of type application.

subnetMappings LoadBalancerSubnetMappingArgs[]

A subnet mapping block as documented below.

subnets string[]

A list of subnet IDs to attach to the LB. Subnets cannot be updated for Load Balancers of type network. Changing this value for load balancers of type network will force a recreation of the resource.

tags {[key: string]: string}

A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

tagsAll {[key: string]: string}

A map of tags assigned to the resource, including those inherited from the provider .

vpcId string
zoneId string

The canonical hosted zone ID of the load balancer (to be used in a Route 53 Alias record).

  • subnet_mapping.*.outpost_id - ID of the Outpost containing the load balancer.
access_logs LoadBalancerAccessLogsArgs

An Access Logs block. Access Logs documented below.

arn str

The ARN of the load balancer (matches id).

arn_suffix str

The ARN suffix for use with CloudWatch Metrics.

customer_owned_ipv4_pool str

The ID of the customer owned ipv4 pool to use for this load balancer.

desync_mitigation_mode str

Determines how the load balancer handles requests that might pose a security risk to an application due to HTTP desync. Valid values are monitor, defensive (default), strictest.

dns_name str

The DNS name of the load balancer.

drop_invalid_header_fields bool

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.

enable_cross_zone_load_balancing bool

If true, cross-zone load balancing of the load balancer will be enabled. This is a network load balancer feature. Defaults to false.

enable_deletion_protection bool

If true, deletion of the load balancer will be disabled via the AWS API. This will prevent this provider from deleting the load balancer. Defaults to false.

enable_http2 bool

Indicates whether HTTP/2 is enabled in application load balancers. Defaults to true.

enable_waf_fail_open bool

Indicates whether to allow a WAF-enabled load balancer to route requests to targets if it is unable to forward the request to AWS WAF. Defaults to false.

idle_timeout int

The time in seconds that the connection is allowed to be idle. Only valid for Load Balancers of type application. Default: 60.

internal bool

If true, the LB will be internal.

ip_address_type str

The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 and dualstack

load_balancer_type str

The type of load balancer to create. Possible values are application, gateway, or network. The default value is application.

name str

The name of the LB. This name must be unique within your AWS account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and must not begin or end with a hyphen. If not specified, this provider will autogenerate a name beginning with tf-lb.

name_prefix str

Creates a unique name beginning with the specified prefix. Conflicts with name.

security_groups Sequence[str]

A list of security group IDs to assign to the LB. Only valid for Load Balancers of type application.

subnet_mappings Sequence[LoadBalancerSubnetMappingArgs]

A subnet mapping block as documented below.

subnets Sequence[str]

A list of subnet IDs to attach to the LB. Subnets cannot be updated for Load Balancers of type network. Changing this value for load balancers of type network will force a recreation of the resource.

tags Mapping[str, str]

A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

tags_all Mapping[str, str]

A map of tags assigned to the resource, including those inherited from the provider .

vpc_id str
zone_id str

The canonical hosted zone ID of the load balancer (to be used in a Route 53 Alias record).

  • subnet_mapping.*.outpost_id - ID of the Outpost containing the load balancer.
accessLogs Property Map

An Access Logs block. Access Logs documented below.

arn String

The ARN of the load balancer (matches id).

arnSuffix String

The ARN suffix for use with CloudWatch Metrics.

customerOwnedIpv4Pool String

The ID of the customer owned ipv4 pool to use for this load balancer.

desyncMitigationMode String

Determines how the load balancer handles requests that might pose a security risk to an application due to HTTP desync. Valid values are monitor, defensive (default), strictest.

dnsName String

The DNS name of the load balancer.

dropInvalidHeaderFields Boolean

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.

enableCrossZoneLoadBalancing Boolean

If true, cross-zone load balancing of the load balancer will be enabled. This is a network load balancer feature. Defaults to false.

enableDeletionProtection Boolean

If true, deletion of the load balancer will be disabled via the AWS API. This will prevent this provider from deleting the load balancer. Defaults to false.

enableHttp2 Boolean

Indicates whether HTTP/2 is enabled in application load balancers. Defaults to true.

enableWafFailOpen Boolean

Indicates whether to allow a WAF-enabled load balancer to route requests to targets if it is unable to forward the request to AWS WAF. Defaults to false.

idleTimeout Number

The time in seconds that the connection is allowed to be idle. Only valid for Load Balancers of type application. Default: 60.

internal Boolean

If true, the LB will be internal.

ipAddressType String

The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 and dualstack

loadBalancerType String

The type of load balancer to create. Possible values are application, gateway, or network. The default value is application.

name String

The name of the LB. This name must be unique within your AWS account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and must not begin or end with a hyphen. If not specified, this provider will autogenerate a name beginning with tf-lb.

namePrefix String

Creates a unique name beginning with the specified prefix. Conflicts with name.

securityGroups List<String>

A list of security group IDs to assign to the LB. Only valid for Load Balancers of type application.

subnetMappings List<Property Map>

A subnet mapping block as documented below.

subnets List<String>

A list of subnet IDs to attach to the LB. Subnets cannot be updated for Load Balancers of type network. Changing this value for load balancers of type network will force a recreation of the resource.

tags Map<String>

A map of tags to assign to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

tagsAll Map<String>

A map of tags assigned to the resource, including those inherited from the provider .

vpcId String
zoneId String

The canonical hosted zone ID of the load balancer (to be used in a Route 53 Alias record).

  • subnet_mapping.*.outpost_id - ID of the Outpost containing the load balancer.

Supporting Types

LoadBalancerAccessLogs

Bucket string

The S3 bucket name to store the logs in.

Enabled bool

Boolean to enable / disable access_logs. Defaults to false, even when bucket is specified.

Prefix string

The S3 bucket prefix. Logs are stored in the root if not configured.

Bucket string

The S3 bucket name to store the logs in.

Enabled bool

Boolean to enable / disable access_logs. Defaults to false, even when bucket is specified.

Prefix string

The S3 bucket prefix. Logs are stored in the root if not configured.

bucket String

The S3 bucket name to store the logs in.

enabled Boolean

Boolean to enable / disable access_logs. Defaults to false, even when bucket is specified.

prefix String

The S3 bucket prefix. Logs are stored in the root if not configured.

bucket string

The S3 bucket name to store the logs in.

enabled boolean

Boolean to enable / disable access_logs. Defaults to false, even when bucket is specified.

prefix string

The S3 bucket prefix. Logs are stored in the root if not configured.

bucket str

The S3 bucket name to store the logs in.

enabled bool

Boolean to enable / disable access_logs. Defaults to false, even when bucket is specified.

prefix str

The S3 bucket prefix. Logs are stored in the root if not configured.

bucket String

The S3 bucket name to store the logs in.

enabled Boolean

Boolean to enable / disable access_logs. Defaults to false, even when bucket is specified.

prefix String

The S3 bucket prefix. Logs are stored in the root if not configured.

LoadBalancerSubnetMapping

SubnetId string

The id of the subnet of which to attach to the load balancer. You can specify only one subnet per Availability Zone.

AllocationId string

The allocation ID of the Elastic IP address.

Ipv6Address string

An ipv6 address within the subnet to assign to the internet-facing load balancer.

OutpostId string
PrivateIpv4Address string

A private ipv4 address within the subnet to assign to the internal-facing load balancer.

SubnetId string

The id of the subnet of which to attach to the load balancer. You can specify only one subnet per Availability Zone.

AllocationId string

The allocation ID of the Elastic IP address.

Ipv6Address string

An ipv6 address within the subnet to assign to the internet-facing load balancer.

OutpostId string
PrivateIpv4Address string

A private ipv4 address within the subnet to assign to the internal-facing load balancer.

subnetId String

The id of the subnet of which to attach to the load balancer. You can specify only one subnet per Availability Zone.

allocationId String

The allocation ID of the Elastic IP address.

ipv6Address String

An ipv6 address within the subnet to assign to the internet-facing load balancer.

outpostId String
privateIpv4Address String

A private ipv4 address within the subnet to assign to the internal-facing load balancer.

subnetId string

The id of the subnet of which to attach to the load balancer. You can specify only one subnet per Availability Zone.

allocationId string

The allocation ID of the Elastic IP address.

ipv6Address string

An ipv6 address within the subnet to assign to the internet-facing load balancer.

outpostId string
privateIpv4Address string

A private ipv4 address within the subnet to assign to the internal-facing load balancer.

subnet_id str

The id of the subnet of which to attach to the load balancer. You can specify only one subnet per Availability Zone.

allocation_id str

The allocation ID of the Elastic IP address.

ipv6_address str

An ipv6 address within the subnet to assign to the internet-facing load balancer.

outpost_id str
private_ipv4_address str

A private ipv4 address within the subnet to assign to the internal-facing load balancer.

subnetId String

The id of the subnet of which to attach to the load balancer. You can specify only one subnet per Availability Zone.

allocationId String

The allocation ID of the Elastic IP address.

ipv6Address String

An ipv6 address within the subnet to assign to the internet-facing load balancer.

outpostId String
privateIpv4Address String

A private ipv4 address within the subnet to assign to the internal-facing load balancer.

Import

LBs can be imported using their ARN, e.g.,

 $ pulumi import aws:lb/loadBalancer:LoadBalancer bar arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188

Package Details

Repository
https://github.com/pulumi/pulumi-aws
License
Apache-2.0
Notes

This Pulumi package is based on the aws Terraform Provider.