github.com/nbering/terraform@v0.8.5-0.20170113232247-453f670684b5/website/source/docs/providers/google/r/compute_backend_service.html.markdown (about) 1 --- 2 layout: "google" 3 page_title: "Google: google_compute_backend_service" 4 sidebar_current: "docs-google-compute-backend-service" 5 description: |- 6 Creates a Backend Service resource for Google Compute Engine. 7 --- 8 9 # google\_compute\_backend\_service 10 11 A Backend Service defines a group of virtual machines that will serve traffic for load balancing. 12 13 ## Example Usage 14 15 ```js 16 resource "google_compute_backend_service" "foobar" { 17 name = "blablah" 18 description = "Hello World 1234" 19 port_name = "http" 20 protocol = "HTTP" 21 timeout_sec = 10 22 enable_cdn = false 23 24 backend { 25 group = "${google_compute_instance_group_manager.foo.instance_group}" 26 } 27 28 health_checks = ["${google_compute_http_health_check.default.self_link}"] 29 } 30 31 resource "google_compute_instance_group_manager" "foo" { 32 name = "terraform-test" 33 instance_template = "${google_compute_instance_template.foobar.self_link}" 34 base_instance_name = "foobar" 35 zone = "us-central1-f" 36 target_size = 1 37 } 38 39 resource "google_compute_instance_template" "foobar" { 40 name = "terraform-test" 41 machine_type = "n1-standard-1" 42 43 network_interface { 44 network = "default" 45 } 46 47 disk { 48 source_image = "debian-cloud/debian-8" 49 auto_delete = true 50 boot = true 51 } 52 } 53 54 resource "google_compute_http_health_check" "default" { 55 name = "test" 56 request_path = "/" 57 check_interval_sec = 1 58 timeout_sec = 1 59 } 60 ``` 61 62 ## Argument Reference 63 64 The following arguments are supported: 65 66 * `name` - (Required) The name of the backend service. 67 68 * `health_checks` - (Required) Specifies a list of HTTP health check objects 69 for checking the health of the backend service. 70 71 - - - 72 73 * `backend` - (Optional) The list of backends that serve this BackendService. 74 See *Backend* below. 75 76 * `description` - (Optional) The textual description for the backend service. 77 78 * `enable_cdn` - (Optional) Whether or not to enable the Cloud CDN on the backend service. 79 80 * `port_name` - (Optional) The name of a service that has been added to an 81 instance group in this backend. See [related docs](https://cloud.google.com/compute/docs/instance-groups/#specifying_service_endpoints) for details. Defaults to http. 82 83 * `project` - (Optional) The project in which the resource belongs. If it 84 is not provided, the provider project is used. 85 86 * `protocol` - (Optional) The protocol for incoming requests. Defaults to 87 `HTTP`. 88 89 * `region` - (Optional) The Region in which the created address should reside. 90 If it is not provided, the provider region is used. 91 92 * `session_affinity` - (Optional) How to distribute load. Options are "NONE" (no 93 affinity), "CLIENT\_IP" (hash of the source/dest addresses / ports), and 94 "GENERATED\_COOKIE" (distribute load using a generated session cookie). 95 96 * `timeout_sec` - (Optional) The number of secs to wait for a backend to respond 97 to a request before considering the request failed. Defaults to `30`. 98 99 100 **Backend** supports the following attributes: 101 102 * `group` - (Required) The name or URI of a Compute Engine instance group 103 (`google_compute_instance_group_manager.xyz.instance_group`) that can 104 receive traffic. 105 106 * `balancing_mode` - (Optional) Defines the strategy for balancing load. 107 Defaults to `UTILIZATION` 108 109 * `capacity_scaler` - (Optional) A float in the range [0, 1.0] that scales the 110 maximum parameters for the group (e.g., max rate). A value of 0.0 will cause 111 no requests to be sent to the group (i.e., it adds the group in a drained 112 state). The default is 1.0. 113 114 * `description` - (Optional) Textual description for the backend. 115 116 * `max_rate` - (Optional) Maximum requests per second (RPS) that the group can 117 handle. 118 119 * `max_rate_per_instance` - (Optional) The maximum per-instance requests per 120 second (RPS). 121 122 * `max_utilization` - (Optional) The target CPU utilization for the group as a 123 float in the range [0.0, 1.0]. This flag can only be provided when the 124 balancing mode is `UTILIZATION`. Defaults to `0.8`. 125 126 ## Attributes Reference 127 128 In addition to the arguments listed above, the following computed attributes are 129 exported: 130 131 * `fingerprint` - The fingerprint of the backend service. 132 133 * `self_link` - The URI of the created resource.