2014-07-24 03:16:36 +02:00
|
|
|
---
|
|
|
|
layout: "aws"
|
|
|
|
page_title: "AWS: aws_elb"
|
|
|
|
sidebar_current: "docs-aws-resource-elb"
|
|
|
|
---
|
|
|
|
|
|
|
|
# aws\_elb
|
|
|
|
|
|
|
|
Provides an Elastic Load Balancer resource.
|
|
|
|
|
|
|
|
## Example Usage
|
|
|
|
|
|
|
|
```
|
|
|
|
# Create a new load balancer
|
|
|
|
resource "aws_elb" "bar" {
|
|
|
|
name = "foobar-terraform-elb"
|
|
|
|
availability_zones = ["us-west-2a", "us-west-2b", "us-west-2c"]
|
|
|
|
|
|
|
|
listener {
|
|
|
|
instance_port = 8000
|
|
|
|
instance_protocol = "http"
|
|
|
|
lb_port = 80
|
|
|
|
lb_protocol = "http"
|
|
|
|
}
|
|
|
|
|
2014-07-30 14:14:18 +02:00
|
|
|
health_check {
|
|
|
|
healthy_threshold = 2
|
|
|
|
unhealthy_threshold = 2
|
|
|
|
timeout = 3
|
|
|
|
target = "HTTP:8000/"
|
|
|
|
interval = 30
|
|
|
|
}
|
|
|
|
|
2014-07-24 03:16:36 +02:00
|
|
|
instances = ["${aws_instance.foo.id}"]
|
|
|
|
}
|
|
|
|
```
|
|
|
|
|
|
|
|
## Argument Reference
|
|
|
|
|
|
|
|
The following arguments are supported:
|
|
|
|
|
|
|
|
* `name` - (Required) The name of the ELB
|
|
|
|
* `availability_zones` - (Optional) The AZ's to serve traffic in.
|
|
|
|
* `instances` - (Optional) A list of instance ids to place in the ELB pool.
|
|
|
|
* `listener` - (Required) A list of listener blocks. Listeners documented below.
|
2014-07-30 14:14:18 +02:00
|
|
|
* `listener` - (Required) A health_check block. Health Check documented below.
|
2014-07-24 03:16:36 +02:00
|
|
|
|
|
|
|
Listeners support the following:
|
|
|
|
|
|
|
|
* `instance_port` - (Required) The port on the instance to route to
|
|
|
|
* `instance_protocol` - (Required) The the protocol to use to the instance.
|
|
|
|
* `lb_port` - (Required) The port to listen on for the load balancer
|
|
|
|
* `lb_protocol` - (Required) The protocol to listen on.
|
|
|
|
|
2014-07-30 14:14:18 +02:00
|
|
|
Health Check supports the following:
|
|
|
|
|
|
|
|
* `healthy_threshold` - (Required) The number of checks before the instance is declared healthy.
|
|
|
|
* `unhealthy_threshold` - (Required) The number of checks before the instance is declared unhealthy.
|
|
|
|
* `target` - (Required) The target of the check.
|
|
|
|
* `interval` - (Required) The interval between checks.
|
|
|
|
* `timeout` - (Required) The length of time before the check times out.
|
|
|
|
|
|
|
|
|
2014-07-24 03:16:36 +02:00
|
|
|
## Attributes Reference
|
|
|
|
|
|
|
|
The following attributes are exported:
|
|
|
|
|
|
|
|
* `id` - The name of the ELB
|
|
|
|
* `name` - The name of the ELB
|
|
|
|
* `dns_name` - The DNS name of the ELB
|
|
|
|
* `instances` - The list of instances in the ELB
|