GithubHelp home page GithubHelp logo

jetbrains-infra / terraform-aws-alb-host Goto Github PK

View Code? Open in Web Editor NEW
1.0 7.0 1.0 10 KB

Terraform module to create target group and corresponding listener rule.

License: Apache License 2.0

HCL 100.00%
terraform terraform-module aws-alb

terraform-aws-alb-host's Introduction

About

Terraform module to create target group and corresponding listener rule.

Features:

  • Auto detect corresponding ALB listener by port

Usage

Default:

module "example-host" {
  source            = "github.com/jetbrains-infra/terraform-aws-alb-host"
  name              = "example"
  hostnames         = ["example.com","*.example.com"]
  health_check_path = "/health"
  loadbalancer_arn  = "${aws_alb.default.arn}"
}

All params:

module "example-host" {
  source                           = "github.com/jetbrains-infra/terraform-aws-alb-host"
  name                             = "example"
  hostnames                        = ["example.com","*.example.com"]
  health_check_path                = "/health"
  loadbalancer_arn                 = "${aws_alb.default.arn}"
  port                             = 443
  protocol                         = "HTTPS"
  certificate_arn                  = "${module.certificate.arn}"
  deregistration_delay             = 300
  slow_start_duration              = 0
  target_type                      = "instance"
  stickness                        = true
  stickness_duration               = 86400
  health_check_timeout             = 5
  health_check_interval            = 30
  health_check_matcher             = "200-304"
  health_check_healthy_threshold   = 3
  health_check_unhealthy_threshold = 3
}

Params

  • name - The target group name.
  • hostnames - List of hostnames.
  • health_check_path - The destination for the health check request.
  • loadbalancer_arn - The ARN of the loadbalancer to which to attach the rule.

Optional params with default values

  • port - The port on which targets receive traffic, unless overridden when registering a specific target (Default 80).
  • protocol - The protocol to use for routing traffic to the targets (Default HTTP).
  • certificate_arn - The ARN of the certificate to attach to the listener (Optional).
  • deregistration_delay - The amount time for Elastic Load Balancing to wait before changing the state of a deregistering target from draining to unused (Default 300).
  • slow_start_duration - The amount time for targets to warm up before the load balancer sends them a full share of requests (Default 0).
  • target_type - The type of target that you must specify when registering targets with this target group (Default instance).
  • stickness - Define if requests from a client should be routed to the same target (Default true).
  • stickness_duration - The time period, in seconds, during which requests from a client should be routed to the same target (Default 86400).
  • health_check_interval - The approximate amount of time, in seconds, between health checks of an individual target (Default 30).
  • health_check_timeout - The amount of time, in seconds, during which no response means a failed health check (Default 5).
  • health_check_healthy_threshold - The number of consecutive health checks successes required before considering an unhealthy target healthy (Default 3).
  • health_check_unhealthy_threshold - The number of consecutive health check failures required before considering the target unhealthy (Default 3).
  • health_check_matcher - The HTTP codes to use when checking for a successful response from a target. You can specify multiple values (for example, '200,202') or a range of values (for example, '200-299') (Default 200-304).

Outputs

  • name - The target group name.
  • target_group_arn - The target group ARN.
  • alb_domain_name - ALB domain name.
  • alb_domain_zone_id - ALB domain zone id for Route 53 alias record.

terraform-aws-alb-host's People

Contributors

sugdyzhekov avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

arun9theja

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.