aws.elb.getLoadBalancer
Explore with Pulumi AI
Provides information about a “classic” Elastic Load Balancer (ELB). See LB Data Source if you are looking for “v2” Application Load Balancer (ALB) or Network Load Balancer (NLB).
This data source can prove useful when a module accepts an LB as an input variable and needs to, for example, determine the security groups associated with it, etc.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const config = new pulumi.Config();
const lbName = config.get("lbName") || "";
const test = aws.elb.getLoadBalancer({
    name: lbName,
});
import pulumi
import pulumi_aws as aws
config = pulumi.Config()
lb_name = config.get("lbName")
if lb_name is None:
    lb_name = ""
test = aws.elb.get_load_balancer(name=lb_name)
package main
import (
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/elb"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		lbName := ""
		if param := cfg.Get("lbName"); param != "" {
			lbName = param
		}
		_, err := elb.LookupLoadBalancer(ctx, &elb.LookupLoadBalancerArgs{
			Name: lbName,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() => 
{
    var config = new Config();
    var lbName = config.Get("lbName") ?? "";
    var test = Aws.Elb.GetLoadBalancer.Invoke(new()
    {
        Name = lbName,
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.elb.ElbFunctions;
import com.pulumi.aws.elb.inputs.GetLoadBalancerArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        final var config = ctx.config();
        final var lbName = config.get("lbName").orElse("");
        final var test = ElbFunctions.getLoadBalancer(GetLoadBalancerArgs.builder()
            .name(lbName)
            .build());
    }
}
configuration:
  lbName:
    type: string
    default: ""
variables:
  test:
    fn::invoke:
      function: aws:elb:getLoadBalancer
      arguments:
        name: ${lbName}
Using getLoadBalancer
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getLoadBalancer(args: GetLoadBalancerArgs, opts?: InvokeOptions): Promise<GetLoadBalancerResult>
function getLoadBalancerOutput(args: GetLoadBalancerOutputArgs, opts?: InvokeOptions): Output<GetLoadBalancerResult>def get_load_balancer(name: Optional[str] = None,
                      tags: Optional[Mapping[str, str]] = None,
                      opts: Optional[InvokeOptions] = None) -> GetLoadBalancerResult
def get_load_balancer_output(name: Optional[pulumi.Input[str]] = None,
                      tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
                      opts: Optional[InvokeOptions] = None) -> Output[GetLoadBalancerResult]func LookupLoadBalancer(ctx *Context, args *LookupLoadBalancerArgs, opts ...InvokeOption) (*LookupLoadBalancerResult, error)
func LookupLoadBalancerOutput(ctx *Context, args *LookupLoadBalancerOutputArgs, opts ...InvokeOption) LookupLoadBalancerResultOutput> Note: This function is named LookupLoadBalancer in the Go SDK.
public static class GetLoadBalancer 
{
    public static Task<GetLoadBalancerResult> InvokeAsync(GetLoadBalancerArgs args, InvokeOptions? opts = null)
    public static Output<GetLoadBalancerResult> Invoke(GetLoadBalancerInvokeArgs args, InvokeOptions? opts = null)
}public static CompletableFuture<GetLoadBalancerResult> getLoadBalancer(GetLoadBalancerArgs args, InvokeOptions options)
public static Output<GetLoadBalancerResult> getLoadBalancer(GetLoadBalancerArgs args, InvokeOptions options)
fn::invoke:
  function: aws:elb/getLoadBalancer:getLoadBalancer
  arguments:
    # arguments dictionaryThe following arguments are supported:
- Name string
- Unique name of the load balancer.
- Dictionary<string, string>
- Name string
- Unique name of the load balancer.
- map[string]string
- name String
- Unique name of the load balancer.
- Map<String,String>
- name string
- Unique name of the load balancer.
- {[key: string]: string}
- name str
- Unique name of the load balancer.
- Mapping[str, str]
- name String
- Unique name of the load balancer.
- Map<String>
getLoadBalancer Result
The following output properties are available:
- AccessLogs GetLoad Balancer Access Logs 
- Arn string
- AvailabilityZones List<string>
- ConnectionDraining bool
- ConnectionDraining intTimeout 
- CrossZone boolLoad Balancing 
- DesyncMitigation stringMode 
- DnsName string
- HealthCheck GetLoad Balancer Health Check 
- Id string
- The provider-assigned unique ID for this managed resource.
- IdleTimeout int
- Instances List<string>
- Internal bool
- Listeners
List<GetLoad Balancer Listener> 
- Name string
- SecurityGroups List<string>
- SourceSecurity stringGroup 
- SourceSecurity stringGroup Id 
- Subnets List<string>
- Dictionary<string, string>
- ZoneId string
- AccessLogs GetLoad Balancer Access Logs 
- Arn string
- AvailabilityZones []string
- ConnectionDraining bool
- ConnectionDraining intTimeout 
- CrossZone boolLoad Balancing 
- DesyncMitigation stringMode 
- DnsName string
- HealthCheck GetLoad Balancer Health Check 
- Id string
- The provider-assigned unique ID for this managed resource.
- IdleTimeout int
- Instances []string
- Internal bool
- Listeners
[]GetLoad Balancer Listener 
- Name string
- SecurityGroups []string
- SourceSecurity stringGroup 
- SourceSecurity stringGroup Id 
- Subnets []string
- map[string]string
- ZoneId string
- accessLogs GetLoad Balancer Access Logs 
- arn String
- availabilityZones List<String>
- connectionDraining Boolean
- connectionDraining IntegerTimeout 
- crossZone BooleanLoad Balancing 
- desyncMitigation StringMode 
- dnsName String
- healthCheck GetLoad Balancer Health Check 
- id String
- The provider-assigned unique ID for this managed resource.
- idleTimeout Integer
- instances List<String>
- internal Boolean
- listeners
List<GetLoad Balancer Listener> 
- name String
- securityGroups List<String>
- sourceSecurity StringGroup 
- sourceSecurity StringGroup Id 
- subnets List<String>
- Map<String,String>
- zoneId String
- accessLogs GetLoad Balancer Access Logs 
- arn string
- availabilityZones string[]
- connectionDraining boolean
- connectionDraining numberTimeout 
- crossZone booleanLoad Balancing 
- desyncMitigation stringMode 
- dnsName string
- healthCheck GetLoad Balancer Health Check 
- id string
- The provider-assigned unique ID for this managed resource.
- idleTimeout number
- instances string[]
- internal boolean
- listeners
GetLoad Balancer Listener[] 
- name string
- securityGroups string[]
- sourceSecurity stringGroup 
- sourceSecurity stringGroup Id 
- subnets string[]
- {[key: string]: string}
- zoneId string
- access_logs GetLoad Balancer Access Logs 
- arn str
- availability_zones Sequence[str]
- connection_draining bool
- connection_draining_ inttimeout 
- cross_zone_ boolload_ balancing 
- desync_mitigation_ strmode 
- dns_name str
- health_check GetLoad Balancer Health Check 
- id str
- The provider-assigned unique ID for this managed resource.
- idle_timeout int
- instances Sequence[str]
- internal bool
- listeners
Sequence[GetLoad Balancer Listener] 
- name str
- security_groups Sequence[str]
- source_security_ strgroup 
- source_security_ strgroup_ id 
- subnets Sequence[str]
- Mapping[str, str]
- zone_id str
- accessLogs Property Map
- arn String
- availabilityZones List<String>
- connectionDraining Boolean
- connectionDraining NumberTimeout 
- crossZone BooleanLoad Balancing 
- desyncMitigation StringMode 
- dnsName String
- healthCheck Property Map
- id String
- The provider-assigned unique ID for this managed resource.
- idleTimeout Number
- instances List<String>
- internal Boolean
- listeners List<Property Map>
- name String
- securityGroups List<String>
- sourceSecurity StringGroup 
- sourceSecurity StringGroup Id 
- subnets List<String>
- Map<String>
- zoneId String
Supporting Types
GetLoadBalancerAccessLogs    
- Bucket string
- BucketPrefix string
- Enabled bool
- Interval int
- Bucket string
- BucketPrefix string
- Enabled bool
- Interval int
- bucket String
- bucketPrefix String
- enabled Boolean
- interval Integer
- bucket string
- bucketPrefix string
- enabled boolean
- interval number
- bucket str
- bucket_prefix str
- enabled bool
- interval int
- bucket String
- bucketPrefix String
- enabled Boolean
- interval Number
GetLoadBalancerHealthCheck    
- HealthyThreshold int
- Interval int
- Target string
- Timeout int
- UnhealthyThreshold int
- HealthyThreshold int
- Interval int
- Target string
- Timeout int
- UnhealthyThreshold int
- healthyThreshold Integer
- interval Integer
- target String
- timeout Integer
- unhealthyThreshold Integer
- healthyThreshold number
- interval number
- target string
- timeout number
- unhealthyThreshold number
- healthy_threshold int
- interval int
- target str
- timeout int
- unhealthy_threshold int
- healthyThreshold Number
- interval Number
- target String
- timeout Number
- unhealthyThreshold Number
GetLoadBalancerListener   
- InstancePort int
- InstanceProtocol string
- LbPort int
- LbProtocol string
- SslCertificate stringId 
- InstancePort int
- InstanceProtocol string
- LbPort int
- LbProtocol string
- SslCertificate stringId 
- instancePort Integer
- instanceProtocol String
- lbPort Integer
- lbProtocol String
- sslCertificate StringId 
- instancePort number
- instanceProtocol string
- lbPort number
- lbProtocol string
- sslCertificate stringId 
- instance_port int
- instance_protocol str
- lb_port int
- lb_protocol str
- ssl_certificate_ strid 
- instancePort Number
- instanceProtocol String
- lbPort Number
- lbProtocol String
- sslCertificate StringId 
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the awsTerraform Provider.