A Terraform module for provisioning AWS Classic Load Balancers (ELB) with configurable listeners, health checks, and instance attachments.
terraform-aws-elb is a Terraform module that automates the provisioning of AWS Classic Load Balancers (ELB). It solves the problem of manually configuring ELB resources by providing a reusable, declarative module that handles listeners, health checks, security groups, and instance attachments. This enables consistent and repeatable deployment of load balancers as part of infrastructure-as-code workflows.
DevOps engineers, cloud infrastructure teams, and developers managing AWS environments with Terraform who need to provision and manage Classic Load Balancers.
Developers choose this module because it abstracts AWS ELB complexity into a simple Terraform interface, reduces configuration errors, and ensures best practices. It is part of the trusted terraform-aws-modules ecosystem, offering reliability and community support.
Terraform module to create AWS ELB resources 🇺🇦
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports all key Classic ELB settings including listeners, health checks, access logs, and connection draining, reducing manual Terraform boilerplate as shown in the usage example.
Allows attaching EC2 instances via the 'instances' input list with configurable counts, simplifying instance pool management in the ELB.
Integrates with AWS security groups and supports internal/external ELB types, ensuring network security compliance through declarative inputs.
Separates ELB creation and attachment into sub-modules, enabling flexibility and code reusability across different Terraform configurations.
Only supports AWS Classic ELB, which is outdated and lacks features of modern load balancers like ALB or NLB, limiting scalability for new projects.
Requires understanding of AWS networking and Terraform, with numerous input variables (e.g., listener maps, health checks) that can be overwhelming without prior experience.
Tied to Terraform and AWS provider versions, making it unsuitable for teams using other infrastructure tools and adding migration overhead if switching.