2014-08-26 21:50:29 +00:00
|
|
|
---
|
2018-06-14 20:22:02 +00:00
|
|
|
# ----------------------------------------------------------------------------
|
|
|
|
#
|
|
|
|
# *** 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.
|
|
|
|
#
|
|
|
|
# ----------------------------------------------------------------------------
|
2014-08-26 21:50:29 +00:00
|
|
|
layout: "google"
|
|
|
|
page_title: "Google: google_compute_route"
|
2018-06-14 20:22:02 +00:00
|
|
|
sidebar_current: "docs-google-compute-route"
|
2014-10-22 03:21:56 +00:00
|
|
|
description: |-
|
2018-06-14 20:22:02 +00:00
|
|
|
Represents a Route resource.
|
2014-08-26 21:50:29 +00:00
|
|
|
---
|
|
|
|
|
|
|
|
# google\_compute\_route
|
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
Represents a Route resource.
|
|
|
|
|
|
|
|
A route is a rule that specifies how certain packets should be handled by
|
|
|
|
the virtual network. Routes are associated with virtual machines by tag,
|
|
|
|
and the set of routes for a particular virtual machine is called its
|
|
|
|
routing table. For each packet leaving a virtual machine, the system
|
|
|
|
searches that virtual machine's routing table for a single best matching
|
|
|
|
route.
|
|
|
|
|
|
|
|
Routes match packets by destination IP address, preferring smaller or more
|
|
|
|
specific ranges over larger ones. If there is a tie, the system selects
|
|
|
|
the route with the smallest priority value. If there is still a tie, it
|
|
|
|
uses the layer three and four packet headers to select just one of the
|
|
|
|
remaining matching routes. The packet is then forwarded as specified by
|
|
|
|
the next_hop field of the winning route -- either to another virtual
|
|
|
|
machine destination, a virtual machine gateway or a Compute
|
|
|
|
Engine-operated gateway. Packets that do not match any route in the
|
|
|
|
sending virtual machine's routing table will be dropped.
|
|
|
|
|
|
|
|
A Route resource must have exactly one specification of either
|
|
|
|
nextHopGateway, nextHopInstance, nextHopIp, or nextHopVpnTunnel.
|
|
|
|
|
2018-10-04 02:45:53 +00:00
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
To get more information about Route, see:
|
|
|
|
|
|
|
|
* [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/routes)
|
|
|
|
* How-to Guides
|
|
|
|
* [Using Routes](https://cloud.google.com/vpc/docs/using-routes)
|
2014-08-26 21:50:29 +00:00
|
|
|
|
2018-10-19 16:18:25 +00:00
|
|
|
<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=route_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 - Route Basic
|
|
|
|
|
2014-08-26 21:50:29 +00:00
|
|
|
|
2017-04-17 10:17:54 +00:00
|
|
|
```hcl
|
2018-09-24 22:35:43 +00:00
|
|
|
resource "google_compute_route" "default" {
|
|
|
|
name = "network-route"
|
|
|
|
dest_range = "15.0.0.0/24"
|
|
|
|
network = "${google_compute_network.default.name}"
|
2018-09-27 17:02:50 +00:00
|
|
|
next_hop_ip = "10.132.1.5"
|
2018-09-24 22:35:43 +00:00
|
|
|
priority = 100
|
|
|
|
}
|
|
|
|
|
2017-06-27 14:07:47 +00:00
|
|
|
resource "google_compute_network" "default" {
|
2017-10-13 18:05:22 +00:00
|
|
|
name = "compute-network"
|
|
|
|
}
|
2014-08-26 21:50:29 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
## Argument Reference
|
|
|
|
|
|
|
|
The following arguments are supported:
|
|
|
|
|
2018-07-10 22:42:50 +00:00
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
* `dest_range` -
|
|
|
|
(Required)
|
|
|
|
The destination range of outgoing packets that this route applies to.
|
|
|
|
Only IPv4 is supported.
|
2018-07-10 22:42:50 +00:00
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
* `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.
|
2018-07-10 22:42:50 +00:00
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
* `network` -
|
|
|
|
(Required)
|
|
|
|
The network that this route applies to.
|
2017-10-13 18:05:22 +00:00
|
|
|
|
2018-08-20 23:46:13 +00:00
|
|
|
|
2016-04-10 21:34:15 +00:00
|
|
|
- - -
|
|
|
|
|
2018-07-10 22:42:50 +00:00
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
* `description` -
|
|
|
|
(Optional)
|
|
|
|
An optional description of this resource. Provide this property
|
|
|
|
when you create the resource.
|
2018-07-10 22:42:50 +00:00
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
* `priority` -
|
|
|
|
(Optional)
|
|
|
|
The priority of this route. Priority is used to break ties in cases
|
|
|
|
where there is more than one matching route of equal prefix length.
|
|
|
|
In the case of two routes with equal prefix length, the one with the
|
|
|
|
lowest-numbered priority value wins.
|
|
|
|
Default value is 1000. Valid range is 0 through 65535.
|
2018-07-10 22:42:50 +00:00
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
* `tags` -
|
|
|
|
(Optional)
|
|
|
|
A list of instance tags to which this route applies.
|
2018-07-10 22:42:50 +00:00
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
* `next_hop_gateway` -
|
|
|
|
(Optional)
|
|
|
|
URL to a gateway that should handle matching packets.
|
|
|
|
Currently, you can only specify the internet gateway, using a full or
|
|
|
|
partial valid URL:
|
2018-07-10 22:42:50 +00:00
|
|
|
* `https://www.googleapis.com/compute/v1/projects/project/global/gateways/default-internet-gateway`
|
|
|
|
* `projects/project/global/gateways/default-internet-gateway`
|
|
|
|
* `global/gateways/default-internet-gateway`
|
|
|
|
* The string `default-internet-gateway`.
|
2018-07-06 21:53:00 +00:00
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
* `next_hop_instance` -
|
|
|
|
(Optional)
|
|
|
|
URL to an instance that should handle matching packets.
|
|
|
|
You can specify this as a full or partial URL. For example:
|
2018-07-10 22:42:50 +00:00
|
|
|
* `https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance`
|
|
|
|
* `projects/project/zones/zone/instances/instance`
|
|
|
|
* `zones/zone/instances/instance`
|
|
|
|
* Just the instance name, with the zone in `next_hop_instance_zone`.
|
2018-07-06 21:53:00 +00:00
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
* `next_hop_ip` -
|
|
|
|
(Optional)
|
|
|
|
Network IP address of an instance that should handle matching packets.
|
2018-07-10 22:42:50 +00:00
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
* `next_hop_vpn_tunnel` -
|
|
|
|
(Optional)
|
|
|
|
URL to a VpnTunnel that should handle matching packets.
|
2018-08-16 05:59:44 +00:00
|
|
|
* `project` - (Optional) The ID of the project in which the resource belongs.
|
2018-06-14 20:22:02 +00:00
|
|
|
If it is not provided, the provider project is used.
|
|
|
|
|
2018-07-06 21:53:00 +00:00
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
* `next_hop_instance_zone` - (Optional when `next_hop_instance` is
|
|
|
|
specified) The zone of the instance specified in
|
|
|
|
`next_hop_instance`. Omit if `next_hop_instance` is specified as
|
|
|
|
a URL.
|
2018-07-10 22:42:50 +00:00
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
## Attributes Reference
|
2016-03-31 10:37:17 +00:00
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
In addition to the arguments listed above, the following computed attributes are exported:
|
2014-08-26 21:50:29 +00:00
|
|
|
|
2018-07-10 22:42:50 +00:00
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
* `next_hop_network` -
|
|
|
|
URL to a Network that should handle matching packets.
|
|
|
|
* `self_link` - The URI of the created resource.
|
2014-08-26 21:50:29 +00:00
|
|
|
|
2018-07-06 21:53:00 +00:00
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
## Timeouts
|
2014-08-26 21:50:29 +00:00
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
This resource provides the following
|
|
|
|
[Timeouts](/docs/configuration/resources.html#timeouts) configuration options:
|
2016-04-10 21:34:15 +00:00
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
- `create` - Default is 4 minutes.
|
|
|
|
- `delete` - Default is 4 minutes.
|
2017-06-27 14:07:47 +00:00
|
|
|
|
|
|
|
## Import
|
|
|
|
|
2018-06-14 20:22:02 +00:00
|
|
|
Route can be imported using any of these accepted formats:
|
2017-06-27 14:07:47 +00:00
|
|
|
|
|
|
|
```
|
2018-06-14 20:22:02 +00:00
|
|
|
$ terraform import google_compute_route.default projects/{{project}}/global/routes/{{name}}
|
|
|
|
$ terraform import google_compute_route.default {{project}}/{{name}}
|
|
|
|
$ terraform import google_compute_route.default {{name}}
|
2017-06-27 14:07:47 +00:00
|
|
|
```
|