Creates and manages a Google Spanner Instance. For more information, see the [official documentation](https://cloud.google.com/spanner/), or the [JSON API](https://cloud.google.com/spanner/docs/reference/rest/v1/projects.instances).
## Example Usage
Example creating a Spanner instance.
```hcl
resource "google_spanner_instance" "main" {
config = "regional-europe-west1"
display_name = "main-instance"
name = "main-instance"
num_nodes = 1
}
```
## Argument Reference
The following arguments are supported:
*`config` - (Required) The name of the instance's configuration (similar but not
quite the same as a region) which defines defines the geographic placement and
replication of your databases in this instance. It determines where your data
is stored. Values are typically of the form `regional-europe-west1` , `us-central` etc.
In order to obtain a valid list please consult the
[Configuration section of the docs](https://cloud.google.com/spanner/docs/instances).
*`display_name` - (Required) The descriptive name for this instance as it appears
in UIs. Can be updated, however should be kept globally unique to avoid confusion.
- - -
*`name` - (Optional, Computed) The unique name (ID) of the instance. If the name is left
blank, Terraform will randomly generate one when the instance is first
created.
*`num_nodes` - (Optional, Computed) The number of nodes allocated to this instance.
Defaults to `1`. This can be updated after creation.