Difference between revisions of "Terraform resource: aws lb target group"

From wikieduonline
Jump to navigation Jump to search
 
(40 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
* Terraform resource: <code>aws_lb_target_group</code> <ref>https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_target_group</ref>
 
* Terraform resource: <code>aws_lb_target_group</code> <ref>https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_target_group</ref>
 +
** https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_target_group
  
===Example Instance Target Group===
+
== Examples ==
<pre>resource "aws_lb_target_group" "test" {
+
=== IP Target Group official example ===
   name     = "tf-example-lb-tg"
+
resource "aws_lb_target_group" "ip-example" {
   port     = 80
+
   name       = "tf-example-lb-tg"
   protocol = "HTTP"
+
   port       = 80
   vpc_id   = aws_vpc.main.id
+
   protocol   = "HTTP"
}
+
   [[target_type]] = "ip"
 +
  [[vpc_id]]      = aws_vpc.main.id
 +
}
 +
 +
resource "[[aws_vpc]]" "main" {
 +
  cidr_block = "10.0.0.0/16"
 +
}
  
resource "aws_vpc" "main" {
+
=== host_header based [[forward]] ===
  cidr_block = "10.0.0.0/16"
+
resource "aws_lb_listener_rule" "your_host_rule" {
}
+
  listener_arn = local.your_https_listener_arn
</pre>
+
  priority    = 401
 +
 +
  action {
 +
    type            = "[[forward]]"
 +
    target_group_arn = aws_lb_target_group.your_tg.arn
 +
  }
 +
 +
  condition {
 +
    [[host_header]] {
 +
      values = [var.yoururl]
 +
    }
 +
  }
 +
 
 +
== Attributes reference ==
 +
* <code>[[arn_suffix]]</code> - ARN suffix for use with CloudWatch Metrics.
 +
* <code>[[arn]]</code> - ARN of the [[Target Group]] (matches id).
 +
* <code>[[id]]</code> - ARN of the Target Group (matches arn).
 +
* <code>[[name]]</code> - Name of the Target Group.
 +
* <code>[[tags_all]]</code> - A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.
 +
* <code>[[type]]</code>: The type of sticky sessions. The only current possible values are <code>lb_cookie</code>, <code>app_cookie</code> for ALBs, and <code>[[source_ip]]</code> for [[NLB]]s. https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_target_group#type
 +
* <code>[[fixed_response]]</code> https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_listener_rule#fixed_response
 +
* <code>[[target_type]]</code>: <code>[[instance]]</code> (default), <code>[[ip]]</code> https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_target_group#target_type
 +
* <code>[[vpc_id]]</code>
 +
* <code>[[protocol]]</code>:<ref>https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_target_group#protocol</ref> [[GENEVE]], HTTP, HTTPS, TCP, [[TCP_UDP]], TLS, or UDP
 +
* <code>[[protocol_version]]</code> (optional): [[HTTP1]] (default), [[GRPC]], [[HTTP2]] <ref>https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_target_group#protocol_version</ref>
 +
* <code>[[health_check]]</code><ref>https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_target_group#health_check</ref>
 +
 
 +
== Example Instance Target Group ==
 +
resource "aws_lb_target_group" "test" {
 +
  name    = "tf-example-lb-tg"
 +
  port    = 80
 +
  [[protocol]] = "HTTP"
 +
  [[vpc_id]]  = [[aws_vpc]].main.id
 +
}
 +
 +
resource "aws_vpc" "main" {
 +
  cidr_block = "10.0.0.0/16"
 +
}
  
 
== Related terms ==
 
== Related terms ==
 
* <code>[[target_group_arn]]</code>
 
* <code>[[target_group_arn]]</code>
 +
* <code>[[aws_lb_listener_rule]]</code>
 +
* <code>[[draining]]</code>
 +
* <code>[[aws_lb]]</code>
 +
* <code>[[ResourceInUse]]</code>
  
 
== See also ==
 
== See also ==
 
* {{aws_lb_target_group}}
 
* {{aws_lb_target_group}}
* {{terraform AWS}}
+
* {{tf lb}}
* {{terraform aws resources}}
+
 
* {{Terraform}}
 
  
 
[[Category:Terraform]]
 
[[Category:Terraform]]

Latest revision as of 06:19, 31 May 2023

Examples[edit]

IP Target Group official example[edit]

resource "aws_lb_target_group" "ip-example" {
 name        = "tf-example-lb-tg"
 port        = 80
 protocol    = "HTTP"
 target_type = "ip"
 vpc_id      = aws_vpc.main.id
}

resource "aws_vpc" "main" {
 cidr_block = "10.0.0.0/16"
}

host_header based forward[edit]

resource "aws_lb_listener_rule" "your_host_rule" {
  listener_arn = local.your_https_listener_arn
  priority     = 401

  action {
    type             = "forward"
    target_group_arn = aws_lb_target_group.your_tg.arn
  }

  condition {
    host_header {
      values = [var.yoururl]
    }
  }

Attributes reference[edit]

Example Instance Target Group[edit]

resource "aws_lb_target_group" "test" {
  name     = "tf-example-lb-tg"
  port     = 80
  protocol = "HTTP"
  vpc_id   = aws_vpc.main.id
} 

resource "aws_vpc" "main" {
  cidr_block = "10.0.0.0/16"
}

Related terms[edit]

See also[edit]

  • https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_target_group
  • https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_target_group#protocol
  • https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_target_group#protocol_version
  • https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_target_group#health_check
  • Advertising: