{"id":20901579,"url":"https://github.com/willfarrell/terraform-lb-module","last_synced_at":"2026-03-19T18:01:56.613Z","repository":{"id":142528797,"uuid":"195558832","full_name":"willfarrell/terraform-lb-module","owner":"willfarrell","description":"Terraform Load Balancer module","archived":false,"fork":false,"pushed_at":"2019-11-30T15:54:00.000Z","size":24,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-19T13:27:12.691Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/willfarrell.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-07-06T16:10:58.000Z","updated_at":"2019-07-30T01:05:53.000Z","dependencies_parsed_at":null,"dependency_job_id":"20b081d0-bc60-4519-bdba-c1f777b5f1b7","html_url":"https://github.com/willfarrell/terraform-lb-module","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/willfarrell%2Fterraform-lb-module","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/willfarrell%2Fterraform-lb-module/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/willfarrell%2Fterraform-lb-module/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/willfarrell%2Fterraform-lb-module/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/willfarrell","download_url":"https://codeload.github.com/willfarrell/terraform-lb-module/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243292836,"owners_count":20268126,"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","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":[],"created_at":"2024-11-18T11:36:06.070Z","updated_at":"2025-12-27T17:23:19.359Z","avatar_url":"https://github.com/willfarrell.png","language":"HCL","readme":"# ALB\nApplication Load Balancer for ECS\n\n## Features\n\n## Setup\n\n### Prerequisites\nBefore using this terraform module, the \"ec2\" and \"ecs\" AMIs need to be created in all required regions with Packer - https://github.com/tesera/terraform-modules/blob/master/packer/README.md. \n\n### Module\n```hcl-terraform\n# Cert\ndata \"aws_acm_certificate\" \"main\" {\n  domain   = \"${local.workspace[\"domain\"]}\"\n\n  statuses = [\n    \"ISSUED\",\n  ]\n}\n\n# WAF\nmodule \"waf\" {\n  source        = \"git@github.com:tesera/terraform-modules//waf-region-owasp?ref=v0.2.4\"\n  name          = \"${local.workspace[\"name\"]}\"\n  defaultAction = \"ALLOW\"\n}\n\n# ALB\n# ( 80 -\u003e 443 ) =\u003e ( 80 )\nmodule \"alb\" {\n  source                 = \"git@github.com:willfarrell/terraform-lb-module?ref=v0.0.1\"\n  type                   = \"application\"\n  internal               = false\n  name                   = local.workspace[\"name\"]\n  vpc_id                 = data.terraform_remote_state.vpc.vpc_id\n\n  private_subnet_ids     = [data.terraform_remote_state.vpc.private_subnet_ids]\n  \n  https_only             = true\n  waf_acl_id             = module.waf.id\n  certificate_arn        = data.aws_acm_certificate.main.arn\n  # ECS\n  ports                  = [80]\n  autoscaling_group_name = module.ecs.autoscaling_group_id\n  security_group_id      = module.ecs.security_group_id\n}\n\n# NLB\n# ( 5000, 3000 ) =\u003e ( 5000, 3000 )\nmodule \"nlb\" {\n  source                 = \"git@github.com:willfarrell/terraform-lb-module?ref=v0.0.1\"\n  type                   = \"network\"\n  internal               = true\n  name                   = local.workspace[\"name\"]\n  vpc_id                 = data.terraform_remote_state.vpc.vpc_id\n\n  private_subnet_ids     = [data.terraform_remote_state.vpc.private_subnet_ids]\n\n  # ECS\n  ports                  = [5000,3000]\n  autoscaling_group_name = module.ecs.autoscaling_group_id\n  security_group_id      = module.ecs.security_group_id\n}\n\noutput \"alb_endpoint\" {\n  value = module.alb.endpoint\n}\n\noutput \"alb_target_group_arn\" {\n  value = module.alb.target_group_arn\n}\n```\n\n## Input\n- **vpc_id:** vpc id\n- **subnet_ids:** array of subnet ids, public for ALB, private for NLB\n- **waf_acl_id:** Regional WAF ACL ID\n- **internal:** Is an internal LB or not [Default: false]\n- **https_only:** Force HTTPS [Default: true]\n- **ssl_policy:** TLS policy to enforce. See [docs](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-https-listener.html) for complete list [Default: `ELBSecurityPolicy-TLS-1-1-2017-01`]\n- **certificate_arn:** ARN of AWS certificate, add `443` port forwarding\n- **ports:** ECS ports to forward to. First, non-`443` on in the list will be use for `443` forwarding. [Default: `[ 443, 80 ]`]\n- **autoscaling_group_name:** ECS auto-scaling group name\n- **security_group_id:** ECS security group id\n\n## Output\n- **id:** LB ID\n- **arn:** LB ARN\n- **endpoint:** AWS generated URL endpoint\n- **target_group_arns:** target group arns\n- **security_group_id:** Security group id\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwillfarrell%2Fterraform-lb-module","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwillfarrell%2Fterraform-lb-module","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwillfarrell%2Fterraform-lb-module/lists"}