You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docker tag ${DOCKER_IMAGE_KITCHEN_TERRAFORM}:${DOCKER_TAG_KITCHEN_TERRAFORM}${DOCKER_ORG}/${DOCKER_IMAGE_KITCHEN_TERRAFORM}:${DOCKER_TAG_KITCHEN_TERRAFORM}
Copy file name to clipboardExpand all lines: README.md
+35-26Lines changed: 35 additions & 26 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,6 +8,14 @@ The resources/services/activations/deletions that this module will create/trigge
8
8
- Activate network policy if `network_policy` is true
9
9
- Add `ip-masq-agent` configmap with provided `non_masquerade_cidrs` if `network_policy` is true
10
10
11
+
12
+
## Compatibility
13
+
14
+
This module is meant for use with Terraform 0.12. If you haven't
15
+
[upgraded][terraform-0.12-upgrade] and need a Terraform
16
+
0.11.x-compatible version of this module, the last released version
17
+
intended for Terraform 0.11.x is [3.0.0].
18
+
11
19
## Usage
12
20
There are multiple examples included in the [examples](./examples/) folder but simple usage is as follows:
13
21
@@ -56,7 +64,7 @@ module "gke" {
56
64
all = {}
57
65
58
66
default-node-pool = {
59
-
default-node-pool = "true"
67
+
default-node-pool = true
60
68
}
61
69
}
62
70
@@ -74,7 +82,7 @@ module "gke" {
74
82
default-node-pool = [
75
83
{
76
84
key = "default-node-pool"
77
-
value = "true"
85
+
value = true
78
86
effect = "PREFER_NO_SCHEDULE"
79
87
},
80
88
]
@@ -113,8 +121,7 @@ Version 1.0.0 of this module introduces a breaking change: adding the `disable-l
113
121
114
122
In either case, upgrading to module version `v1.0.0` will trigger a recreation of all node pools in the cluster.
115
123
116
-
[^]: (autogen_docs_start)
117
-
124
+
<!-- BEGINNING OF PRE-COMMIT-TERRAFORM DOCS HOOK -->
118
125
## Inputs
119
126
120
127
| Name | Description | Type | Default | Required |
@@ -124,43 +131,43 @@ In either case, upgrading to module version `v1.0.0` will trigger a recreation o
124
131
| cluster\_ipv4\_cidr | The IP address range of the kubernetes pods in this cluster. Default is an automatically assigned CIDR. | string |`""`| no |
125
132
| configure\_ip\_masq | Enables the installation of ip masquerading, which is usually no longer required when using aliasied IP addresses. IP masquerading uses a kubectl call, so when you have a private cluster, you will need access to the API server. | string |`"false"`| no |
126
133
| description | The description of the cluster | string |`""`| no |
127
-
| disable\_legacy\_metadata\_endpoints | Disable the /0.1/ and /v1beta1/ metadata server endpoints on the node. Changing this value will cause all node pools to be recreated. |string|`"true"`| no |
128
-
| horizontal\_pod\_autoscaling | Enable horizontal pod autoscaling addon |string|`"true"`| no |
129
-
| http\_load\_balancing | Enable httpload balancer addon |string|`"true"`| no |
130
-
| initial\_node\_count | The number of nodes to create in this cluster's default node pool. |string|`"0"`| no |
131
-
| ip\_masq\_link\_local | Whether to masquerade traffic to the link-local prefix (169.254.0.0/16). |string|`"false"`| no |
134
+
| disable\_legacy\_metadata\_endpoints | Disable the /0.1/ and /v1beta1/ metadata server endpoints on the node. Changing this value will cause all node pools to be recreated. |bool|`"true"`| no |
135
+
| horizontal\_pod\_autoscaling | Enable horizontal pod autoscaling addon |bool|`"true"`| no |
136
+
| http\_load\_balancing | Enable httpload balancer addon |bool|`"true"`| no |
137
+
| initial\_node\_count | The number of nodes to create in this cluster's default node pool. |number|`"0"`| no |
138
+
| ip\_masq\_link\_local | Whether to masquerade traffic to the link-local prefix (169.254.0.0/16). |bool|`"false"`| no |
132
139
| ip\_masq\_resync\_interval | The interval at which the agent attempts to sync its ConfigMap file from the disk. | string |`"60s"`| no |
133
140
| ip\_range\_pods | The _name_ of the secondary subnet ip range to use for pods | string | n/a | yes |
134
141
| ip\_range\_services | The _name_ of the secondary subnet range to use for services | string | n/a | yes |
135
-
| issue\_client\_certificate | Issues a client certificate to authenticate to the cluster endpoint. To maximize the security of your cluster, leave this option disabled. Client certificates don't automatically rotate and aren't easily revocable. WARNING: changing this after cluster creation is destructive! |string|`"false"`| no |
136
-
| kubernetes\_dashboard | Enable kubernetes dashboard addon |string|`"false"`| no |
142
+
| issue\_client\_certificate | Issues a client certificate to authenticate to the cluster endpoint. To maximize the security of your cluster, leave this option disabled. Client certificates don't automatically rotate and aren't easily revocable. WARNING: changing this after cluster creation is destructive! |bool|`"false"`| no |
143
+
| kubernetes\_dashboard | Enable kubernetes dashboard addon |bool|`"false"`| no |
137
144
| kubernetes\_version | The Kubernetes version of the masters. If set to 'latest' it will pull latest available version in the selected region. | string |`"latest"`| no |
138
145
| logging\_service | The logging service that the cluster should write logs to. Available options include logging.googleapis.com, logging.googleapis.com/kubernetes (beta), and none | string |`"logging.googleapis.com"`| no |
139
146
| maintenance\_start\_time | Time window specified for daily maintenance operations in RFC3339 format | string |`"05:00"`| no |
140
-
| master\_authorized\_networks\_config | The desired configuration options for master authorized networks. Omit the nested cidr_blocks attribute to disallow external access (except the cluster node IPs, which GKE automatically whitelists)<br><br> ### example format ### master_authorized_networks_config = [{ cidr_blocks = [{ cidr_block = "10.0.0.0/8" display_name = "example_network" }], }]| list|`<list>`| no |
147
+
| master\_authorized\_networks\_config | The desired configuration options for master authorized networks. The object format is {cidr_blocks = list(object({cidr_block = string, display_name = string}))}. Omit the nested cidr_blocks attribute to disallow external access (except the cluster node IPs, which GKE automatically whitelists). | object|`<list>`| no |
141
148
| monitoring\_service | The monitoring service that the cluster should write metrics to. Automatically send metrics from pods in the cluster to the Google Cloud Monitoring API. VM metrics will be collected by Google Compute Engine regardless of this setting Available options include monitoring.googleapis.com, monitoring.googleapis.com/kubernetes (beta) and none | string |`"monitoring.googleapis.com"`| no |
142
149
| name | The name of the cluster (required) | string | n/a | yes |
143
150
| network | The VPC network to host the cluster in (required) | string | n/a | yes |
144
-
| network\_policy | Enable network policy addon |string|`"false"`| no |
151
+
| network\_policy | Enable network policy addon |bool|`"false"`| no |
145
152
| network\_policy\_provider | The network policy provider. | string |`"CALICO"`| no |
146
153
| network\_project\_id | The project ID of the shared VPC's host (for shared vpc support) | string |`""`| no |
147
-
| node\_pools | List of maps containing node pools | list |`<list>`| no |
148
-
| node\_pools\_labels | Map of maps containing node labels by node-pool name | map |`<map>`| no |
149
-
| node\_pools\_metadata | Map of maps containing node metadata by node-pool name | map |`<map>`| no |
150
-
| node\_pools\_oauth\_scopes | Map of lists containing node oauth scopes by node-pool name | map |`<map>`| no |
151
-
| node\_pools\_tags | Map of lists containing node network tags by node-pool name | map |`<map>`| no |
152
-
| node\_pools\_taints | Map of lists containing node taints by node-pool name |map|`<map>`| no |
154
+
| node\_pools | List of maps containing node pools | list(map(string))|`<list>`| no |
155
+
| node\_pools\_labels | Map of maps containing node labels by node-pool name | map(map(string))|`<map>`| no |
156
+
| node\_pools\_metadata | Map of maps containing node metadata by node-pool name | map(map(string))|`<map>`| no |
157
+
| node\_pools\_oauth\_scopes | Map of lists containing node oauth scopes by node-pool name | map(list(string))|`<map>`| no |
158
+
| node\_pools\_tags | Map of lists containing node network tags by node-pool name | map(list(string))|`<map>`| no |
159
+
| node\_pools\_taints | Map of lists containing node taints by node-pool name |object|`<map>`| no |
153
160
| node\_version | The Kubernetes version of the node pools. Defaults kubernetes_version (master) variable and can be overridden for individual node pools by setting the `version` key on them. Must be empyty or set the same as master at cluster creation. | string |`""`| no |
154
-
| non\_masquerade\_cidrs | List of strings in CIDR notation that specify the IP address ranges that do not use IP masquerading. | list |`<list>`| no |
161
+
| non\_masquerade\_cidrs | List of strings in CIDR notation that specify the IP address ranges that do not use IP masquerading. | list(string)|`<list>`| no |
155
162
| project\_id | The project ID to host the cluster in (required) | string | n/a | yes |
156
163
| region | The region to host the cluster in (required) | string | n/a | yes |
157
-
| regional | Whether is a regional cluster (zonal cluster if set false. WARNING: changing this after cluster creation is destructive!) |string|`"true"`| no |
158
-
| remove\_default\_node\_pool | Remove default node pool while setting up the cluster |string|`"false"`| no |
164
+
| regional | Whether is a regional cluster (zonal cluster if set false. WARNING: changing this after cluster creation is destructive!) |bool|`"true"`| no |
165
+
| remove\_default\_node\_pool | Remove default node pool while setting up the cluster |bool|`"false"`| no |
159
166
| service\_account | The service account to run nodes as if not overridden in `node_pools`. The default value will cause a cluster-specific service account to be created. | string |`"create"`| no |
160
-
| stub\_domains | Map of stub domains and their resolvers to forward DNS queries for a certain domain to an external DNS server | map |`<map>`| no |
167
+
| stub\_domains | Map of stub domains and their resolvers to forward DNS queries for a certain domain to an external DNS server | map(list(string))|`<map>`| no |
161
168
| subnetwork | The subnetwork to host the cluster in (required) | string | n/a | yes |
162
169
| upstream\_nameservers | If specified, the values replace the nameservers taken by default from the node’s /etc/resolv.conf | list |`<list>`| no |
163
-
| zones | The zones to host the cluster in (optional if regional cluster / required if zonal) | list |`<list>`| no |
170
+
| zones | The zones to host the cluster in (optional if regional cluster / required if zonal) | list(string)|`<list>`| no |
164
171
165
172
## Outputs
166
173
@@ -186,7 +193,7 @@ In either case, upgrading to module version `v1.0.0` will trigger a recreation o
186
193
| type | Cluster type (regional / zonal) |
187
194
| zones | List of zones in which the cluster resides |
188
195
189
-
[^]: (autogen_docs_end)
196
+
<!-- END OF PRE-COMMIT-TERRAFORM DOCS HOOK -->
190
197
191
198
## Requirements
192
199
@@ -203,7 +210,7 @@ The [project factory](https://github.com/terraform-google-modules/terraform-goog
0 commit comments