LoadBalancerProps

class aws_cdk.aws_elasticloadbalancing.LoadBalancerProps(*, vpc, access_logging_policy=None, cross_zone=None, health_check=None, internet_facing=None, listeners=None, subnet_selection=None, targets=None)

Bases: object

Construction properties for a LoadBalancer.

Parameters:
  • vpc (IVpc) – VPC network of the fleet instances.

  • access_logging_policy (Union[AccessLoggingPolicyProperty, Dict[str, Any], None]) – Enable Loadbalancer access logs Can be used to avoid manual work as aws console Required S3 bucket name , enabled flag Can add interval for pushing log Can set bucket prefix in order to provide folder name inside bucket. Default: - disabled

  • cross_zone (Optional[bool]) – Whether cross zone load balancing is enabled. This controls whether the load balancer evenly distributes requests across each availability zone Default: true

  • health_check (Union[HealthCheck, Dict[str, Any], None]) – Health check settings for the load balancing targets. Not required but recommended. Default: - None.

  • internet_facing (Optional[bool]) – Whether this is an internet-facing Load Balancer. This controls whether the LB has a public IP address assigned. It does not open up the Load Balancer’s security groups to public internet access. Default: false

  • listeners (Optional[Sequence[Union[LoadBalancerListener, Dict[str, Any]]]]) – What listeners to set up for the load balancer. Can also be added by .addListener() Default: -

  • subnet_selection (Union[SubnetSelection, Dict[str, Any], None]) – Which subnets to deploy the load balancer. Can be used to define a specific set of subnets to deploy the load balancer to. Useful multiple public or private subnets are covering the same availability zone. Default: - Public subnets if internetFacing, Private subnets otherwise

  • targets (Optional[Sequence[ILoadBalancerTarget]]) – What targets to load balance to. Can also be added by .addTarget() Default: - None.

ExampleMetadata:

infused

Example:

# cluster: ecs.Cluster
# task_definition: ecs.TaskDefinition
# vpc: ec2.Vpc

service = ecs.Ec2Service(self, "Service", cluster=cluster, task_definition=task_definition)

lb = elb.LoadBalancer(self, "LB", vpc=vpc)
lb.add_listener(external_port=80)
lb.add_target(service.load_balancer_target(
    container_name="MyContainer",
    container_port=80
))

Attributes

access_logging_policy

Enable Loadbalancer access logs Can be used to avoid manual work as aws console Required S3 bucket name , enabled flag Can add interval for pushing log Can set bucket prefix in order to provide folder name inside bucket.

Default:
  • disabled

cross_zone

Whether cross zone load balancing is enabled.

This controls whether the load balancer evenly distributes requests across each availability zone

Default:

true

health_check

Health check settings for the load balancing targets.

Not required but recommended.

Default:
  • None.

internet_facing

Whether this is an internet-facing Load Balancer.

This controls whether the LB has a public IP address assigned. It does not open up the Load Balancer’s security groups to public internet access.

Default:

false

listeners

What listeners to set up for the load balancer.

Can also be added by .addListener()

Default:
subnet_selection

Which subnets to deploy the load balancer.

Can be used to define a specific set of subnets to deploy the load balancer to. Useful multiple public or private subnets are covering the same availability zone.

Default:
  • Public subnets if internetFacing, Private subnets otherwise

targets

What targets to load balance to.

Can also be added by .addTarget()

Default:
  • None.

vpc

VPC network of the fleet instances.