amazon-web-services - 具有多个监听器的 Terraform 负载均衡器

标签 amazon-web-services terraform

鉴于此用于创建 AWS 弹性负载均衡器的 Terraform 脚本:

resource "aws_elb" "elb" {
  name = "${var.elb_name}"
  subnets = ["${var.subnet_ids}"]
  internal = "${var.elb_is_internal}"
  security_groups = ["${var.elb_security_group}"]

  listener {
    instance_port = "${var.backend_port}"
    instance_protocol = "${var.backend_protocol}"
    lb_port = 80
    lb_protocol = "http"
  }

  health_check {
    healthy_threshold = 2
    unhealthy_threshold = 2
    timeout = 3
    target = "${var.health_check_target}"
    interval = 30
  }

  cross_zone_load_balancing = true
}

将如何修改以创建多个监听器?

最佳答案

您需要将 map 列表传递给监听器。

listener = [{
    instance_port = "${var.backend_port}"
    instance_protocol = "${var.backend_protocol}"
    lb_port = 80
    lb_protocol = "http"
  },{
    instance_port = "${var.backend2_port}"
    instance_protocol = "${var.backend2_protocol}"
    lb_port = 8080
    lb_protocol = "http"
  }]

或者,
listener = ["${var.elb_listeners}"]

哪里var.elb_listeners是上面第一个示例中的 map 列表。

关于amazon-web-services - 具有多个监听器的 Terraform 负载均衡器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40943593/

相关文章:

amazon-web-services - EC2 上的 XMPP 服务器超时

java - Amazon SQS - FIFO 队列消息请求,接收不一致

azure - 'terraform init' 当它确实存在时返回 404 'Resource Group not found'

amazon-web-services - 地形错误: Incorrect condition type when running terraform plan

amazon-web-services - 添加多个 S3 路径以使用 terraform 粘合爬虫

java - 发电机 : How to use a query filter to check for conditions in a MAP

amazon-web-services - 如何在应用程序级别识别来自EKS LoadBalancer的传入请求?

mongodb - 已安装 mongoDB 服务器但未找到 mongoimport

Terraform 使用随机提供程序并在模块中进行计数

Terraform 从 Packer 中制作的托管磁盘镜像创建 VM