4.2 KiB
layout, page_title, sidebar_current, description
| layout | page_title | sidebar_current | description |
|---|---|---|---|
| Google: google_compute_instance_template | docs-google-resource-instance_template | Manages a VM instance template resource within GCE. |
google_compute_instance_template
Manages a VM instance template resource within GCE. For more information see the official documentation and API.
Example Usage
resource "google_compute_instance_template" "foobar" {
name = "terraform-test"
description = "template description"
instance_description = "description assigned to instances"
machine_type = "n1-standard-1"
can_ip_forward = false
automatic_restart = true
on_host_maintenance = "MIGRATE"
tags = ["foo", "bar"]
# Create a new boot disk from an image
disk {
source_image = "debian-7-wheezy-v20140814"
auto_delete = true
boot = true
}
# Use an existing disk resource
disk {
source = "foo_existing_disk"
auto_delete = false
boot = false
}
network {
source = "default"
}
metadata {
foo = "bar"
}
service_account {
scopes = ["userinfo-email", "compute-ro", "storage-ro"]
}
}
Argument Reference
Note that changing any field for this resource forces a new resource to be created.
The following arguments are supported:
-
name- (Required) A unique name for the resource, required by GCE. -
description- (Optional) A brief description of this resource. -
can_ip_forward- (Optional) Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false. -
instance_description- (Optional) A brief description to use for instances created from this template. -
machine_type- (Required) The machine type to create. -
disk- (Required) Disks to attach to instances created from this template. This can be specified multiple times for multiple disks. Structure is documented below. -
metadata- (Optional) Metadata key/value pairs to make available from within instances created from this template. -
network- (Required) Networks to attach to instances created from this template. This can be specified multiple times for multiple networks. Structure is documented below. -
automatic_restart- (Optional) Specifies whether the instance should be automatically restarted if it is terminated by Compute Engine (not terminated by a user). This defaults to true. -
on_host_maintenance- (Optional) Defines the maintenance behavior for this instance. -
service_account- (Optional) Service account to attach to the instance. -
tags- (Optional) Tags to attach to the instance.
The disk block supports:
-
auto_delete- (Optional) Whether or not the disk should be auto-deleted. This defaults to true. -
boot- (Optional) Indicates that this is a boot disk. -
device_name- (Optional) A unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance. If not specified, the server chooses a default device name to apply to this disk. -
disk_name- (Optional) Name of the disk. When not provided, this defaults to the name of the instance. -
source_image- (Required if source not set) The name of the image to base this disk off of. -
interface- (Optional) Specifies the disk interface to use for attaching this disk. -
mode- (Optional) The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If you are attaching or creating a boot disk, this must read-write mode. -
source- (Required if source_image not set) The name of the disk (such as those managed bygoogle_compute_disk) to attach. -
type- (Optional) The GCE disk type.
The network block supports:
-
source- (Required) The name of the network to attach this interface to. -
address- (Optional) The IP address of a reserved IP address to assign to this interface.
The service_account block supports:
scopes- (Required) A list of service scopes. Both OAuth2 URLs and gcloud short names are supported.
Attributes Reference
The following attributes are exported:
self_link- The URL of the created resource.