{"id":19442490,"url":"https://github.com/lean-delivery/terraform-module-aws-alb","last_synced_at":"2025-09-01T21:45:21.430Z","repository":{"id":40244213,"uuid":"161658792","full_name":"lean-delivery/terraform-module-aws-alb","owner":"lean-delivery","description":"Terraform module for creating AWS Application Load Balancer service","archived":false,"fork":false,"pushed_at":"2022-05-18T14:47:15.000Z","size":72,"stargazers_count":2,"open_issues_count":2,"forks_count":8,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-06-20T11:07:06.773Z","etag":null,"topics":["aws","terraform","terraform-module","terraform-modules"],"latest_commit_sha":null,"homepage":null,"language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lean-delivery.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-12-13T15:32:41.000Z","updated_at":"2023-01-24T14:11:26.000Z","dependencies_parsed_at":"2022-09-04T02:51:15.585Z","dependency_job_id":null,"html_url":"https://github.com/lean-delivery/terraform-module-aws-alb","commit_stats":null,"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"purl":"pkg:github/lean-delivery/terraform-module-aws-alb","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lean-delivery%2Fterraform-module-aws-alb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lean-delivery%2Fterraform-module-aws-alb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lean-delivery%2Fterraform-module-aws-alb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lean-delivery%2Fterraform-module-aws-alb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lean-delivery","download_url":"https://codeload.github.com/lean-delivery/terraform-module-aws-alb/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lean-delivery%2Fterraform-module-aws-alb/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273197154,"owners_count":25062230,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-01T02:00:09.058Z","response_time":120,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws","terraform","terraform-module","terraform-modules"],"created_at":"2024-11-10T15:39:45.571Z","updated_at":"2025-09-01T21:45:21.373Z","avatar_url":"https://github.com/lean-delivery.png","language":"HCL","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Description\n\nTerraform module to setup AWS ALB with required parameters.\n\nBased on Hashicorp's [ALB module](https://github.com/terraform-aws-modules/terraform-aws-alb). In addition can configure S3 bucket to store ALB logs, Route53 record with custom DNS name and setup security group.\nAdded China region support.\n\n## Notes\n1. Changed syntax to use Terraform 1.0\n2. Added the security policy if using HTTPS externally on the load balancer.\n3. Changed the Hashicorp's [ALB module](https://github.com/terraform-aws-modules/terraform-aws-alb) version from 3.5 to 6.0\n\n\n## Usage\n\n```HCL\nmodule \"alb\" {\n  source = \"github.com/lean-delivery/tf-module-aws-alb\"\n\n  project     = \"Project\"\n  environment = \"dev\"\n\n  vpc_id  = \"vpc-eizox8ea\"\n  subnets = [\"subnet-sait0aiw\", \"subnet-op8phee4\", \"subnet-eego9xoo\"]\n\n  acm_cert_domain = \"*.project.example.com\"\n  root_domain     = \"example.com\"\n\n  alb_logs_lifecycle_rule_enabled = true\n  alb_logs_expiration_days        = 5\n}\n```\n\n## Inputs\n\n| Name | Description | Type | Default | Required |\n|------|-------------|:----:|:-----:|:-----:|\n| acm\\_cert\\_domain | Domain name for which ACM certificate was created | string | `` | no |\n| cn\\_acm | Whether to use acm certificate in AWS China. Default set to false for backward compatibility | bool | `false` | no |\n| cn\\_route53 | Whether to use Route53 in AWS China | bool | `false` | no |\n| default\\_http\\_tcp\\_listeners\\_port | Port of default HTTP listener | number | `80` | no |\n| default\\_https\\_tcp\\_listeners\\_port | Port of default HTTPs listener | number | `443` | no |\n| default\\_load\\_balancer\\_is\\_internal | Boolean determining if the load balancer is internal or externally facing. | bool | `true` | no |\n| default\\_target\\_groups\\_backend\\_protocol | Backend protocol of default target group | string | `HTTP` | no |\n| default\\_target\\_groups\\_port | Port of default target group | number | `80` | no |\n| enable\\_logging | Trigger to enable ALB logging | bool | `true` | no |\n| enable\\_subdomains | Trigger to add '*.' before ALB custom domain name | bool | `false` | no |\n| environment | Environment name (used for resource naming and tagging) | string | `test` | no |\n| force\\_destroy | Enforces destruction of S3 bucket with ALB logs | bool | `true` | no |\n| lb\\_accout\\_id\\_per\\_region | - | map | `\u003cmap\u003e` | no |\n| most\\_recent\\_certificate | Triger to use most recent SSL certificate | bool | `false` | no |\n| project | Project name (used for resource naming and tagging) | string | `project` | no |\n| root\\_domain | Root domain in which custom DNS record for ALB would be created | string | `` | no |\n| subnets | A list of subnets to associate with the load balancer | list | - | yes |\n| tags | Additional tags for resources | map | `\u003cmap\u003e` | no |\n| target\\_groups\\_health\\_check | Target group health check parameters | map | `\u003cmap\u003e` | no |\n| vpc\\_id | VPC id where the load balancer and other resources will be deployed | string | - | yes |\n| alb\\_logs\\_expiration\\_days | s3 lifecycle rule expiration period | number | `5` | yes |\n| alb\\_logs\\_lifecycle\\_rule\\_enabled | Enable or disable s3 lifecycle rule | bool | `false` | yes |\n| alb\\_custom\\_security\\_group | Switch to override default-created security group | bool | `false` | no |\n| alb\\_custom\\_security\\_group\\_id | Security group ID that override default-created security group | string | `None` | no |\n| alb\\_custom\\_route53\\_record\\_name | Custom Route53 record name for ALB | string | `None` | no |\n| listener\\_ssl\\_policy | The security policy if using HTTPS externally on the load balancer. | string | `ELBSecurityPolicy-FS-1-2-Res-2020-10` | no |\n\n## Outputs\n\n| Name | Description |\n|------|-------------|\n| alb\\_custom\\_dns\\_name | The custom DNS name of the load balancer. |\n| alb\\_dns\\_name | The DNS name of the load balancer. |\n| alb\\_http\\_tcp\\_listener\\_arns | The ARN of the TCP and HTTP load balancer listeners created. |\n| alb\\_http\\_tcp\\_listener\\_ids | The IDs of the TCP and HTTP load balancer listeners created. |\n| alb\\_https\\_listener\\_arns | The ARNs of the HTTPS load balancer listeners created. |\n| alb\\_https\\_listener\\_ids | The IDs of the load balancer listeners created. |\n| alb\\_s3\\_logs | S3 bucket name for storing ALB logs. |\n| alb\\_sg\\_egress | The Egress rule of security group for ALB. |\n| alb\\_sg\\_id | The ID of security group for ALB. |\n| alb\\_sg\\_ingress | The Ingress rule of security group for ALB. |\n| alb\\_target\\_group\\_arns | ARNs of the target groups. Useful for passing to your Auto Scaling group. |\n| alb\\_target\\_group\\_names | Name of the target group. Useful for passing to your CodeDeploy Deployment Group. |\n| load\\_balancer\\_arn\\_suffix | ARN suffix of our load balancer - can be used with CloudWatch. |\n| load\\_balancer\\_id | The ID and ARN of the load balancer we created. |\n| load\\_balancer\\_zone\\_id | The zone_id of the load balancer to assist with creating DNS records. |\n| root\\_domain\\_hosted\\_zone\\_id | - |\n| target\\_group\\_arn\\_suffixes | ARN suffixes of our target groups - can be used with CloudWatch. |\n\n## Terraform versions\n\nTerraform version 1.0.0 or newer is required for this module to work.\n\n## Contributing\n\nThank you for your interest in contributing! Please refer to [CONTRIBUTING.md](https://github.com/lean-delivery/tf-module-aws-alb/blob/master/CONTRIBUTING.md) for guidance.\n\n## License\n\nApache2.0 Licensed. See [LICENSE](https://github.com/lean-delivery/tf-module-aws-alb/tree/master/LICENSE) for full details.\n\n## Authors\n\nLean Delivery Team \u003cteam@lean-delivery.com\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flean-delivery%2Fterraform-module-aws-alb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flean-delivery%2Fterraform-module-aws-alb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flean-delivery%2Fterraform-module-aws-alb/lists"}