nlb
cloudposse/nlb/aws
Terraform module to provision a standard NLB for TCP/UDP/TLS traffic https://cloudposse.com/accelerate
Terraform module to create an NLB and a default NLB target and related security groups. > [!TIP] > #### 👽 Use Atmos with Terraform > Cloud Posse uses atmos to easily orchestrate multiple environments using Terraform. > Works with Github Actions, Atlantis, or Spacelift. > > > Watch demo of using Atmos with Terraform > > Example of running atmos to manage infrastructure from our Quick Start tutorial. > Usage For a complete example, see examples/complete. For automated test of the complete example using bats and Terratest, see test. ```hcl provider "aws" { region = var.region } module "vpc" { source = "cloudposse/vpc/aws" # Cloud Posse recommends pinning every module to a specific version # version = "x.x.x" cidr_block = var.vpc_cidr_block context = module.this.context namespace = "eg" } modu
| Name | Type | Description | Default |
|---|---|---|---|
| vpc_id | string | VPC ID to associate with NLB | required |
| subnet_ids | list(string) | A list of subnet IDs to associate with NLB | required |
| default_listener_ingress_prefix_list_ids | list(string) | List of prefix list IDs for allowing access to TLS ingress security group | [] |
| stickiness_enabled | bool | Whether to enable sticky sessions | false |
| target_group_additional_tags | map(string) | The additional tags to apply to the default target group | {} |
| additional_certs | list(string) | A list of additonal certs to add to the https listerner | [] |
| enabled | bool | Set to false to prevent the module from creating any resources | null |
| labels_as_tags | set(string) | Set of labels (ID elements) to include as tags in the `tags` output. Default is | [
"default"
] |
| standard_transition_days | number | (Deprecated, use `lifecycle_configuration_rules` instead) Number of days to pers | 30 |
| subnet_mapping_enabled | bool | Enable generate EIP for defined subnet ids | false |
| allow_ssl_requests_only | bool | Set to true to require requests to use Secure Socket Layer (HTTPS/SSL) on the ac | false |
| cross_zone_load_balancing_enabled | bool | A boolean flag to enable/disable cross zone load balancing | true |
| target_group_name_max_length | number | The max length of characters for the target group name. | 32 |
| tls_enabled | bool | A boolean flag to enable/disable TLS listener | false |
| ip_address_type | string | The type of IP addresses used by the subnets for your load balancer. The possibl | "ipv4" |
| connection_termination_enabled | bool | Whether to terminate connections at the end of the deregistration timeout | false |
| health_check_threshold | number | The number of consecutive health checks successes required before considering an | 2 |
| namespace | string | ID element. Usually an abbreviation of your organization name, e.g. 'eg' or 'cp' | null |
| attributes | list(string) | ID element. Additional attributes (e.g. `workers` or `cluster`) to add to `id`, | [] |
| udp_port | number | The port for the UDP listener | 53 |
| deletion_protection_enabled | bool | A boolean flag to enable/disable deletion protection for NLB | false |
| label_value_case | string | Controls the letter case of ID elements (labels) as included in `id`, set as tag | null |
| … and 10 more inputs | |||
nlb_dns_name — DNS name of NLBnlb_zone_id — The ID of the zone which NLB is provisioneddefault_target_group_arn — The default target group ARNdefault_listener_arn — The ARN of the default listenerlistener_arns — A list of all the listener ARNsaccess_logs_bucket_id — The S3 bucket ID for access logsnlb_arn — The ARN of the NLBsecurity_group_id — The security group ID of the NLBtls_listener_arn — The ARN of the TLS listenernlb_name — The ARN suffix of the NLBnlb_arn_suffix — The ARN suffix of the NLB