Skip to content
GitHubXDiscordRSS

LoadBalancer

Learn how to create, update, and manage AWS Application Load Balancer LoadBalancers using Alchemy Cloud Control.

The LoadBalancer resource lets you manage AWS Application Load Balancer LoadBalancers and their configuration settings.

Create a basic Application Load Balancer with essential properties including security groups and subnets.

import AWS from "alchemy/aws/control";
const basicLoadBalancer = await AWS.ElasticLoadBalancingV2.LoadBalancer("basicLoadBalancer", {
name: "my-load-balancer",
securityGroups: ["sg-0123456789abcdef0"],
subnets: ["subnet-0123456789abcdef0", "subnet-abcdef0123456789"],
scheme: "internet-facing"
});

Configure a LoadBalancer with advanced features such as attributes and tags for better management.

const advancedLoadBalancer = await AWS.ElasticLoadBalancingV2.LoadBalancer("advancedLoadBalancer", {
name: "advanced-load-balancer",
securityGroups: ["sg-0123456789abcdef0"],
subnets: ["subnet-0123456789abcdef0", "subnet-abcdef0123456789"],
loadBalancerAttributes: [
{
key: "deletion_protection.enabled",
value: "true"
},
{
key: "access_logs.s3.enabled",
value: "true"
}
],
tags: [
{
key: "Environment",
value: "Production"
},
{
key: "Project",
value: "MyProject"
}
]
});

Create a LoadBalancer specifying a custom IP address type to optimize for specific use cases.

const customIpTypeLoadBalancer = await AWS.ElasticLoadBalancingV2.LoadBalancer("customIpTypeLoadBalancer", {
name: "custom-ip-type-lb",
securityGroups: ["sg-0123456789abcdef0"],
subnets: ["subnet-0123456789abcdef0", "subnet-abcdef0123456789"],
ipAddressType: "dualstack", // Supports both IPv4 and IPv6
scheme: "internet-facing"
});

Define a LoadBalancer with a specified minimum capacity to ensure performance under load.

const minCapacityLoadBalancer = await AWS.ElasticLoadBalancingV2.LoadBalancer("minCapacityLoadBalancer", {
name: "min-capacity-lb",
securityGroups: ["sg-0123456789abcdef0"],
subnets: ["subnet-0123456789abcdef0", "subnet-abcdef0123456789"],
minimumLoadBalancerCapacity: {
value: 2 // Minimum number of load balancer nodes
}
});