terraform-provider-google/website/docs/r/compute_target_instance.html.markdown
The Magician 4d9f0a456d Add new line before project doc bullet (#3645)
Signed-off-by: Modular Magician <magic-modules@google.com>
2019-05-17 09:58:48 -07:00

150 lines
4.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
# ----------------------------------------------------------------------------
#
# *** AUTO GENERATED CODE *** AUTO GENERATED CODE ***
#
# ----------------------------------------------------------------------------
#
# This file is automatically generated by Magic Modules and manual
# changes will be clobbered when the file is regenerated.
#
# Please read more about how to change this file in
# .github/CONTRIBUTING.md.
#
# ----------------------------------------------------------------------------
layout: "google"
page_title: "Google: google_compute_target_instance"
sidebar_current: "docs-google-compute-target-instance"
description: |-
Represents a TargetInstance resource which defines an endpoint instance
that terminates traffic of certain protocols.
---
# google\_compute\_target\_instance
Represents a TargetInstance resource which defines an endpoint instance
that terminates traffic of certain protocols. In particular, they are used
in Protocol Forwarding, where forwarding rules can send packets to a
non-NATed target instance. Each target instance contains a single
virtual machine instance that receives and handles traffic from the
corresponding forwarding rules.
To get more information about TargetInstance, see:
* [API documentation](https://cloud.google.com/compute/docs/reference/v1/targetInstances)
* How-to Guides
* [Using Protocol Forwarding](https://cloud.google.com/compute/docs/protocol-forwarding)
<div class = "oics-button" style="float: right; margin: 0 0 -15px">
<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=target_instance_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
<img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>
</div>
## Example Usage - Target Instance Basic
```hcl
resource "google_compute_target_instance" "default" {
name = "target"
instance = "${google_compute_instance.target-vm.self_link}"
}
data "google_compute_image" "vmimage" {
family = "debian-9"
project = "debian-cloud"
}
resource "google_compute_instance" "target-vm" {
name = "target-vm"
machine_type = "n1-standard-1"
zone = "us-central1-a"
boot_disk {
initialize_params{
image = "${data.google_compute_image.vmimage.self_link}"
}
}
network_interface {
network = "default"
}
}
```
## Argument Reference
The following arguments are supported:
* `name` -
(Required)
Name of the resource. Provided by the client when the resource is
created. The name must be 1-63 characters long, and comply with
RFC1035. Specifically, the name must be 1-63 characters long and match
the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the
first character must be a lowercase letter, and all following
characters must be a dash, lowercase letter, or digit, except the last
character, which cannot be a dash.
* `instance` -
(Required)
The Compute instance VM handling traffic for this target instance.
Accepts the instance self-link, relative path
(e.g. `projects/project/zones/zone/instances/instance`) or name. If
name is given, the zone will default to the given zone or
the provider-default zone and the project will default to the
provider-level project.
- - -
* `description` -
(Optional)
An optional description of this resource.
* `nat_policy` -
(Optional)
NAT option controlling how IPs are NAT'ed to the instance.
Currently only NO_NAT (default value) is supported.
* `zone` -
(Optional)
URL of the zone where the target instance resides.
* `project` - (Optional) The ID of the project in which the resource belongs.
If it is not provided, the provider project is used.
## Attributes Reference
In addition to the arguments listed above, the following computed attributes are exported:
* `creation_timestamp` -
Creation timestamp in RFC3339 text format.
* `self_link` - The URI of the created resource.
## Timeouts
This resource provides the following
[Timeouts](/docs/configuration/resources.html#timeouts) configuration options:
- `create` - Default is 4 minutes.
- `delete` - Default is 4 minutes.
## Import
TargetInstance can be imported using any of these accepted formats:
```
$ terraform import google_compute_target_instance.default projects/{{project}}/zones/{{zone}}/targetInstances/{{name}}
$ terraform import google_compute_target_instance.default {{project}}/{{zone}}/{{name}}
$ terraform import google_compute_target_instance.default {{name}}
```
-> If you're importing a resource with beta features, make sure to include `-provider=google-beta`
as an argument so that Terraform uses the correct provider to import your resource.