Coder Social home page Coder Social logo

terraform-aws-lb's Introduction

Overview

AWS Load-Balancer를 생성하는 모듈입니다. 하단의 내용은 terraform-docs에 의해 생성되었습니다.

Providers

Name Version
aws >= 4.0.0

Requirements

Name Version
terraform >= 1.3.0
aws >= 4.0.0

Inputs

Name Description Type Default Required
global_additional_tag Additional tags for all resources created within a Terraform, e.g. Enviroment, System map(string) {} no
lb Name tag convention
object(
{
# Required
name = string
load_balancer_type = string
subnets = set(string)
security_groups = set(string)
# Optional
internal = optional(bool)
customer_owned_ipv4_pool = optional(string)
drop_invalid_header_fields = optional(bool)
enable_cross_zone_load_balancing = optional(bool)
enable_deletion_protection = optional(bool)
enable_http2 = optional(bool)
idle_timeout = optional(number)
ip_address_type = optional(string)
access_logs = optional(set(object(
{
bucket = string
enabled = optional(bool)
prefix = optional(string)
}
)))
subnet_mapping = optional(set(object(
{
subnet_id = optional(string)
allocation_id = optional(string)
ipv6_address = optional(string)
private_ipv4_address = optional(string)
}
)))
timeouts = optional(set(object(
{
create = string
delete = string
update = string
}
)))
# Shared
additional_tag = optional(map(string))
}
)
n/a yes
listeners The list of listener
list(object(
{
port = optional(number)
protocol = optional(string)
ssl_policy = optional(string)
certificate_arn = optional(string)
default_action = list(object(
{
identifier = string
type = string
order = optional(number)
target_group_arn = optional(string)
target_group_identifier = optional(string)
authenticate_cognito = optional(object(
{
authentication_request_extra_params = optional(map(string))
on_unauthenticated_request = optional(string)
scope = optional(string)
session_cookie_name = optional(string)
session_timeout = optional(number)
user_pool_arn = string
user_pool_client_id = string
user_pool_domain = string
}
))
authenticate_oidc = optional(object(
{
authentication_request_extra_params = optional(map(string))
authorization_endpoint = string
client_id = string
client_secret = string
issuer = string
on_unauthenticated_request = optional(string)
scope = optional(string)
session_cookie_name = optional(string)
session_timeout = optional(number)
token_endpoint = string
user_info_endpoint = string
}
))
fixed_response = optional(object(
{
content_type = string
message_body = optional(string)
status_code = optional(string)
}
))
forward = optional(object(
{
stickiness = optional(object(
{
duration = number
enabled = optional(bool)
}
))
target_group = set(object(
{
arn = optional(string)
target_group_identifier = optional(string)
weight = optional(number)
}
))
}
))
redirect = optional(object(
{
host = optional(string)
path = optional(string)
port = optional(string)
protocol = optional(string)
query = optional(string)
status_code = string
}
))
}
))
}
))
n/a yes
name_tag_convention Name tag convention
object({
project_name = string
stage = string
})
n/a yes
target_groups The list of target group
list(object(
{
# Required
identifier = string
# Optional
port = optional(number)
vpc_id = optional(string)
deregistration_delay = optional(number)
lambda_multi_value_headers_enabled = optional(bool)
load_balancing_algorithm_type = optional(bool)
preserve_client_ip = optional(string)
protocol = optional(string)
protocol_version = optional(string)
proxy_protocol_v2 = optional(bool)
slow_start = optional(number)
target_type = optional(string)
health_check = optional(object(
{
path = string
matcher = optional(string)
enabled = optional(bool)
protocol = optional(string)
port = optional(string)
interval = optional(number)
timeout = optional(number)
healthy_threshold = optional(number)
unhealthy_threshold = optional(number)
}
))
stickiness = optional(object(
{
type = string
enabled = optional(bool)
cookie_duration = optional(number)
}
))
# Shared
additional_tag = optional(map(string))
}
))
[] no

Outputs

Name Description
lb lb
listeners listeners
target_groups target_groups

Example

type = "application"
internal = false
subnet_ids = [ ]
security_group_ids = [ ]
target_groups = [{
  identifier = "web"
  port       = 80
  protocol   = "HTTP"
  health_check_port = "traffic-port"
  health_check_path = "/"
}]
listeners = [{
  port     = 80
  protocol = "HTTP"
  default_action = [{
    identifier              = "web-80"
    type                    = "forward"
    target_group_identifier = "web"
  }]
}]

terraform-aws-lb's People

Contributors

yunsang-jeong avatar

Watchers

 avatar

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.