diff --git a/google_gke/README.md b/google_gke/README.md index fb03e31c..5a02ea40 100644 --- a/google_gke/README.md +++ b/google_gke/README.md @@ -183,7 +183,7 @@ module "gke" { | [network](#input\_network) | Shared VPC Network (formulated as a URL) wherein the cluster will be created. Overidden by shared\_vpc\_outputs. | `string` | `null` | no | | [node\_pool\_sa\_roles](#input\_node\_pool\_sa\_roles) | n/a | `list` |
[
"roles/logging.logWriter",
"roles/monitoring.metricWriter",
"roles/monitoring.viewer",
"roles/stackdriver.resourceMetadata.writer"
]
| no | | [node\_pools](#input\_node\_pools) | Map containing node pools, with each node pool's name (or name\_prefix if `use_name_prefix` is true) being the key and the values being that node pool's configurations. Configurable options per node pool include: `disk_size_gb` (string), `disk_type` (string), `machine_type` (string), `max_count` (number), `max_surge` (number), `max_unavailable` (number), `min_count` (number), `use_name_prefix` (bool). See locals.tf for defaults. | `list(map(string))` |
[
{
"name": "tf-default-node-pool"
}
]
| no | -| [node\_pools\_guest\_accelerator](#input\_node\_pools\_guest\_accelerator) | Map containing node pools guest accelerator. Each node pool's name is the key. See locals.tf for defaults. | `map(map(string))` |
{
"tf-default-node-pool": {}
}
| no | +| [node\_pools\_guest\_accelerator](#input\_node\_pools\_guest\_accelerator) | Map containing node pools guest accelerator. Each node pool's name is the key. See locals.tf for defaults. |
map(object({
type = string
count = number
gpu_driver_version = optional(string, "LATEST")
}))
| `{}` | no | | [node\_pools\_labels](#input\_node\_pools\_labels) | Map containing node pools non-default labels (as a map of strings). Each key is used as node pool's name prefix. See locals.tf for defaults. | `map(map(string))` |
{
"tf-default-node-pool": {}
}
| no | | [node\_pools\_oauth\_scopes](#input\_node\_pools\_oauth\_scopes) | Map containing node pools non-default OAuth scopes (as an list). Each node pool's name is the key. See locals.tf for defaults. | `map(list(string))` |
{
"tf-default-node-pool": []
}
| no | | [node\_pools\_spot\_enabled](#input\_node\_pools\_spot\_enabled) | Map containing node pools spot enabled. Each node pool's name is the key. See locals.tf for defaults. | `map(bool)` |
{
"tf-default-node-pool": false
}
| no | diff --git a/google_gke/cluster.tf b/google_gke/cluster.tf index 68379d1f..050cd883 100644 --- a/google_gke/cluster.tf +++ b/google_gke/cluster.tf @@ -288,6 +288,10 @@ resource "google_container_node_pool" "pools" { content { type = local.node_pools_guest_accelerator[each.key].type count = local.node_pools_guest_accelerator[each.key].count + + gpu_driver_installation_config { + gpu_driver_version = local.node_pools_guest_accelerator[each.key].gpu_driver_version + } } } diff --git a/google_gke/variables.tf b/google_gke/variables.tf index e6699cff..28863ad0 100644 --- a/google_gke/variables.tf +++ b/google_gke/variables.tf @@ -267,10 +267,12 @@ variable "node_pools_taints" { variable "node_pools_guest_accelerator" { description = "Map containing node pools guest accelerator. Each node pool's name is the key. See locals.tf for defaults." - type = map(map(string)) - default = { - tf-default-node-pool = {} - } + type = map(object({ + type = string + count = number + gpu_driver_version = optional(string, "LATEST") + })) + default = {} } variable "node_pools_spot_enabled" {