Namespace Amazon.CDK.AWS.ElasticLoadBalancing
Amazon Elastic Load Balancing Construct Library
The aws-cdk-lib/aws-elasticloadbalancing
package provides constructs for configuring
classic load balancers.
Configuring a Load Balancer
Load balancers send traffic to one or more AutoScalingGroups. Create a load
balancer, set up listeners and a health check, and supply the fleet(s) you want
to load balance to in the targets
property. If you want the load balancer to be
accessible from the internet, set internetFacing: true
.
IVpc vpc;
AutoScalingGroup myAutoScalingGroup;
var lb = new LoadBalancer(this, "LB", new LoadBalancerProps {
Vpc = vpc,
InternetFacing = true,
HealthCheck = new HealthCheck {
Port = 80
}
});
lb.AddTarget(myAutoScalingGroup);
lb.AddListener(new LoadBalancerListener {
ExternalPort = 80
});
The load balancer allows all connections by default. If you want to change that,
pass the allowConnectionsFrom
property while setting up the listener:
SecurityGroup mySecurityGroup;
LoadBalancer lb;
lb.AddListener(new LoadBalancerListener {
ExternalPort = 80,
AllowConnectionsFrom = new [] { mySecurityGroup }
});
Adding Ec2 Instance as a target for the load balancer
You can add an EC2 instance to the load balancer by calling using new InstanceTarget
as the argument to addTarget()
:
IVpc vpc;
var lb = new LoadBalancer(this, "LB", new LoadBalancerProps {
Vpc = vpc,
InternetFacing = true
});
// instance to add as the target for load balancer.
var instance = new Instance(this, "targetInstance", new InstanceProps {
Vpc = vpc,
InstanceType = InstanceType.Of(InstanceClass.BURSTABLE2, InstanceSize.MICRO),
MachineImage = new AmazonLinuxImage(new AmazonLinuxImageProps { Generation = AmazonLinuxGeneration.AMAZON_LINUX_2 })
});
lb.AddTarget(new InstanceTarget(instance));
Classes
CfnLoadBalancer | Specifies a Classic Load Balancer. |
CfnLoadBalancer.AccessLoggingPolicyProperty | Specifies where and how access logs are stored for your Classic Load Balancer. |
CfnLoadBalancer.AppCookieStickinessPolicyProperty | Specifies a policy for application-controlled session stickiness for your Classic Load Balancer. |
CfnLoadBalancer.ConnectionDrainingPolicyProperty | Specifies the connection draining settings for your Classic Load Balancer. |
CfnLoadBalancer.ConnectionSettingsProperty | Specifies the idle timeout value for your Classic Load Balancer. |
CfnLoadBalancer.HealthCheckProperty | Specifies health check settings for your Classic Load Balancer. |
CfnLoadBalancer.LBCookieStickinessPolicyProperty | Specifies a policy for duration-based session stickiness for your Classic Load Balancer. |
CfnLoadBalancer.ListenersProperty | Specifies a listener for your Classic Load Balancer. |
CfnLoadBalancer.PoliciesProperty | Specifies policies for your Classic Load Balancer. |
CfnLoadBalancerProps | Properties for defining a |
HealthCheck | Describe the health check to a load balancer. |
InstanceTarget | An EC2 instance that is the target for load balancing. |
ListenerPort | Reference to a listener's port just created. |
LoadBalancer | A load balancer with a single listener. |
LoadBalancerListener | Add a backend to the load balancer. |
LoadBalancerProps | Construction properties for a LoadBalancer. |
LoadBalancingProtocol |
Interfaces
CfnLoadBalancer.IAccessLoggingPolicyProperty | Specifies where and how access logs are stored for your Classic Load Balancer. |
CfnLoadBalancer.IAppCookieStickinessPolicyProperty | Specifies a policy for application-controlled session stickiness for your Classic Load Balancer. |
CfnLoadBalancer.IConnectionDrainingPolicyProperty | Specifies the connection draining settings for your Classic Load Balancer. |
CfnLoadBalancer.IConnectionSettingsProperty | Specifies the idle timeout value for your Classic Load Balancer. |
CfnLoadBalancer.IHealthCheckProperty | Specifies health check settings for your Classic Load Balancer. |
CfnLoadBalancer.ILBCookieStickinessPolicyProperty | Specifies a policy for duration-based session stickiness for your Classic Load Balancer. |
CfnLoadBalancer.IListenersProperty | Specifies a listener for your Classic Load Balancer. |
CfnLoadBalancer.IPoliciesProperty | Specifies policies for your Classic Load Balancer. |
ICfnLoadBalancerProps | Properties for defining a |
IHealthCheck | Describe the health check to a load balancer. |
ILoadBalancerListener | Add a backend to the load balancer. |
ILoadBalancerProps | Construction properties for a LoadBalancer. |
ILoadBalancerTarget | Interface that is going to be implemented by constructs that you can load balance to. |