blob: 56dcab21839304b7f88bf567a9d9e1ba5aaea19c [file] [log] [blame]
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001<html><body>
2<style>
3
4body, h1, h2, h3, div, span, p, pre, a {
5 margin: 0;
6 padding: 0;
7 border: 0;
8 font-weight: inherit;
9 font-style: inherit;
10 font-size: 100%;
11 font-family: inherit;
12 vertical-align: baseline;
13}
14
15body {
16 font-size: 13px;
17 padding: 1em;
18}
19
20h1 {
21 font-size: 26px;
22 margin-bottom: 1em;
23}
24
25h2 {
26 font-size: 24px;
27 margin-bottom: 1em;
28}
29
30h3 {
31 font-size: 20px;
32 margin-bottom: 1em;
33 margin-top: 1em;
34}
35
36pre, code {
37 line-height: 1.5;
38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
39}
40
41pre {
42 margin-top: 0.5em;
43}
44
45h1, h2, h3, p {
46 font-family: Arial, sans serif;
47}
48
49h1, h2, h3 {
50 border-bottom: solid #CCC 1px;
51}
52
53.toc_element {
54 margin-top: 0.5em;
55}
56
57.firstline {
58 margin-left: 2 em;
59}
60
61.method {
62 margin-top: 1em;
63 border: solid 1px #CCC;
64 padding: 1em;
65 background: #EEE;
66}
67
68.details {
69 font-weight: bold;
70 font-size: 14px;
71}
72
73</style>
74
75<h1><a href="container_v1beta1.html">Kubernetes Engine API</a> . <a href="container_v1beta1.projects.html">projects</a> . <a href="container_v1beta1.projects.locations.html">locations</a> . <a href="container_v1beta1.projects.locations.clusters.html">clusters</a></h1>
76<h2>Instance Methods</h2>
77<p class="toc_element">
78 <code><a href="container_v1beta1.projects.locations.clusters.nodePools.html">nodePools()</a></code>
79</p>
80<p class="firstline">Returns the nodePools Resource.</p>
81
82<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070083 <code><a href="container_v1beta1.projects.locations.clusters.well_known.html">well_known()</a></code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070084</p>
Dan O'Mearadd494642020-05-01 07:42:23 -070085<p class="firstline">Returns the well_known Resource.</p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070086
87<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070088 <code><a href="#completeIpRotation">completeIpRotation(name, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070089<p class="firstline">Completes master IP rotation.</p>
90<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070091 <code><a href="#create">create(parent, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070092<p class="firstline">Creates a cluster, consisting of the specified number and type of Google</p>
93<p class="toc_element">
94 <code><a href="#delete">delete(name, projectId=None, clusterId=None, zone=None, x__xgafv=None)</a></code></p>
95<p class="firstline">Deletes the cluster, including the Kubernetes endpoint and all worker</p>
96<p class="toc_element">
97 <code><a href="#get">get(name, projectId=None, clusterId=None, zone=None, x__xgafv=None)</a></code></p>
98<p class="firstline">Gets the details for a specific cluster.</p>
99<p class="toc_element">
100 <code><a href="#getJwks">getJwks(parent, x__xgafv=None)</a></code></p>
101<p class="firstline">Gets the public component of the cluster signing keys in</p>
102<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700103 <code><a href="#list">list(parent, zone=None, projectId=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700104<p class="firstline">Lists all clusters owned by a project in either the specified zone or all</p>
105<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700106 <code><a href="#setAddons">setAddons(name, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700107<p class="firstline">Sets the addons for a specific cluster.</p>
108<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700109 <code><a href="#setLegacyAbac">setLegacyAbac(name, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700110<p class="firstline">Enables or disables the ABAC authorization mechanism on a cluster.</p>
111<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700112 <code><a href="#setLocations">setLocations(name, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700113<p class="firstline">Sets the locations for a specific cluster.</p>
114<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700115 <code><a href="#setLogging">setLogging(name, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700116<p class="firstline">Sets the logging service for a specific cluster.</p>
117<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700118 <code><a href="#setMaintenancePolicy">setMaintenancePolicy(name, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700119<p class="firstline">Sets the maintenance policy for a cluster.</p>
120<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700121 <code><a href="#setMasterAuth">setMasterAuth(name, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700122<p class="firstline">Sets master auth materials. Currently supports changing the admin password</p>
123<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700124 <code><a href="#setMonitoring">setMonitoring(name, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700125<p class="firstline">Sets the monitoring service for a specific cluster.</p>
126<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700127 <code><a href="#setNetworkPolicy">setNetworkPolicy(name, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700128<p class="firstline">Enables or disables Network Policy for a cluster.</p>
129<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700130 <code><a href="#setResourceLabels">setResourceLabels(name, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700131<p class="firstline">Sets labels on a cluster.</p>
132<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700133 <code><a href="#startIpRotation">startIpRotation(name, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700134<p class="firstline">Starts master IP rotation.</p>
135<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700136 <code><a href="#update">update(name, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700137<p class="firstline">Updates the settings for a specific cluster.</p>
138<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700139 <code><a href="#updateMaster">updateMaster(name, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700140<p class="firstline">Updates the master for a specific cluster.</p>
141<h3>Method Details</h3>
142<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700143 <code class="details" id="completeIpRotation">completeIpRotation(name, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700144 <pre>Completes master IP rotation.
145
146Args:
147 name: string, The name (project, location, cluster id) of the cluster to complete IP
148rotation. Specified in the format 'projects/*/locations/*/clusters/*'. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700149 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700150 The object takes the form of:
151
152{ # CompleteIPRotationRequest moves the cluster master back into single-IP mode.
Dan O'Mearadd494642020-05-01 07:42:23 -0700153 "projectId": "A String", # Required. Deprecated. The Google Developers Console [project ID or project
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700154 # number](https://developers.google.com/console/help/new/#projectnumber).
155 # This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -0700156 "clusterId": "A String", # Required. Deprecated. The name of the cluster.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700157 # This field has been deprecated and replaced by the name field.
158 "name": "A String", # The name (project, location, cluster id) of the cluster to complete IP
159 # rotation. Specified in the format 'projects/*/locations/*/clusters/*'.
Dan O'Mearadd494642020-05-01 07:42:23 -0700160 "zone": "A String", # Required. Deprecated. The name of the Google Compute Engine
161 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
162 # cluster resides. This field has been deprecated and replaced by the name
163 # field.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700164 }
165
166 x__xgafv: string, V1 error format.
167 Allowed values
168 1 - v1 error format
169 2 - v2 error format
170
171Returns:
172 An object of the form:
173
174 { # This operation resource represents operations that may have happened or are
175 # happening on the cluster. All fields are output only.
176 "status": "A String", # The current status of the operation.
Dan O'Mearadd494642020-05-01 07:42:23 -0700177 "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700178 "endTime": "A String", # [Output only] The time the operation completed, in
179 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
180 "name": "A String", # The server-assigned ID for the operation.
181 "zone": "A String", # The name of the Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -0700182 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
183 # operation is taking place. This field is deprecated, use location instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700184 "clusterConditions": [ # Which conditions caused the current cluster state.
185 { # StatusCondition describes why a cluster or a node pool has a certain status
186 # (e.g., ERROR or DEGRADED).
187 "message": "A String", # Human-friendly representation of the condition
188 "code": "A String", # Machine-friendly representation of the condition
189 },
190 ],
Dan O'Mearadd494642020-05-01 07:42:23 -0700191 "startTime": "A String", # [Output only] The time the operation started, in
192 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
193 "detail": "A String", # Detailed operation progress, if available.
194 "targetLink": "A String", # Server-defined URL for the target of the operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700195 "operationType": "A String", # The operation type.
Dan O'Mearadd494642020-05-01 07:42:23 -0700196 "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700197 "status": "A String", # Status of an operation stage.
198 # Unset for single-stage operations.
199 "metrics": [ # Progress metric bundle, for example:
200 # metrics: [{name: "nodes done", int_value: 15},
201 # {name: "nodes total", int_value: 32}]
202 # or
203 # metrics: [{name: "progress", double_value: 0.56},
204 # {name: "progress scale", double_value: 1.0}]
205 { # Progress metric is (string, int|float|string) pair.
206 "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
207 "intValue": "A String", # For metrics with integer value.
Dan O'Mearadd494642020-05-01 07:42:23 -0700208 "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700209 "doubleValue": 3.14, # For metrics with floating point value.
210 },
211 ],
212 "stages": [ # Substages of an operation or a stage.
213 # Object with schema name: OperationProgress
214 ],
215 "name": "A String", # A non-parameterized string describing an operation stage.
216 # Unset for single-stage operations.
217 },
218 "nodepoolConditions": [ # Which conditions caused the current node pool state.
219 { # StatusCondition describes why a cluster or a node pool has a certain status
220 # (e.g., ERROR or DEGRADED).
221 "message": "A String", # Human-friendly representation of the condition
222 "code": "A String", # Machine-friendly representation of the condition
223 },
224 ],
225 "selfLink": "A String", # Server-defined URL for the resource.
Dan O'Mearadd494642020-05-01 07:42:23 -0700226 "location": "A String", # [Output only] The name of the Google Compute Engine
227 # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
228 # or
229 # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
230 # in which the cluster resides.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700231 }</pre>
232</div>
233
234<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700235 <code class="details" id="create">create(parent, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700236 <pre>Creates a cluster, consisting of the specified number and type of Google
237Compute Engine instances.
238
239By default, the cluster is created in the project's
Dan O'Mearadd494642020-05-01 07:42:23 -0700240[default
241network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks).
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700242
243One firewall is added for the cluster. After cluster creation,
244the Kubelet creates routes for each node to allow the containers
245on that node to communicate with all other instances in the
246cluster.
247
248Finally, an entry is added to the project's global metadata indicating
249which CIDR range the cluster is using.
250
251Args:
252 parent: string, The parent (project and location) where the cluster will be created.
253Specified in the format 'projects/*/locations/*'. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700254 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700255 The object takes the form of:
256
257{ # CreateClusterRequest creates a cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -0700258 "projectId": "A String", # Required. Deprecated. The Google Developers Console [project ID or project
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700259 # number](https://support.google.com/cloud/answer/6158840).
260 # This field has been deprecated and replaced by the parent field.
261 "parent": "A String", # The parent (project and location) where the cluster will be created.
262 # Specified in the format 'projects/*/locations/*'.
Dan O'Mearadd494642020-05-01 07:42:23 -0700263 "zone": "A String", # Required. Deprecated. The name of the Google Compute Engine
264 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
265 # cluster resides. This field has been deprecated and replaced by the parent
266 # field.
267 "cluster": { # A Google Kubernetes Engine cluster. # Required. A [cluster
268 # resource](https://cloud.google.com/container-engine/reference/rest/v1beta1/projects.zones.clusters)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700269 "nodeIpv4CidrSize": 42, # [Output only] The size of the address space on each node for hosting
270 # containers. This is provisioned from within the `container_ipv4_cidr`
271 # range. This field will only be set when cluster is in route-based network
272 # mode.
273 "maintenancePolicy": { # MaintenancePolicy defines the maintenance policy to be used for the cluster. # Configure the maintenance policy for this cluster.
274 "window": { # MaintenanceWindow defines the maintenance window to be used for the cluster. # Specifies the maintenance window in which maintenance may be performed.
Dan O'Mearadd494642020-05-01 07:42:23 -0700275 "recurringWindow": { # Represents an arbitrary window of time that recurs. # RecurringWindow specifies some number of recurring time periods for
276 # maintenance to occur. The time windows may be overlapping. If no
277 # maintenance windows are set, maintenance can occur at any time.
278 "recurrence": "A String", # An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how
279 # this window reccurs. They go on for the span of time between the start and
280 # end time.
281 #
282 # For example, to have something repeat every weekday, you'd use:
283 # &lt;code&gt;FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR&lt;/code&gt;
284 # To repeat some window daily (equivalent to the DailyMaintenanceWindow):
285 # &lt;code&gt;FREQ=DAILY&lt;/code&gt;
286 # For the first weekend of every month:
287 # &lt;code&gt;FREQ=MONTHLY;BYSETPOS=1;BYDAY=SA,SU&lt;/code&gt;
288 # This specifies how frequently the window starts. Eg, if you wanted to have
289 # a 9-5 UTC-4 window every weekday, you'd use something like:
290 # &lt;code&gt;
291 # start time = 2019-01-01T09:00:00-0400
292 # end time = 2019-01-01T17:00:00-0400
293 # recurrence = FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR
294 # &lt;/code&gt;
295 # Windows can span multiple days. Eg, to make the window encompass every
296 # weekend from midnight Saturday till the last minute of Sunday UTC:
297 # &lt;code&gt;
298 # start time = 2019-01-05T00:00:00Z
299 # end time = 2019-01-07T23:59:00Z
300 # recurrence = FREQ=WEEKLY;BYDAY=SA
301 # &lt;/code&gt;
302 # Note the start and end time's specific dates are largely arbitrary except
303 # to specify duration of the window and when it first starts.
304 # The FREQ values of HOURLY, MINUTELY, and SECONDLY are not supported.
305 "window": { # Represents an arbitrary window of time. # The window of the first recurrence.
306 "endTime": "A String", # The time that the window ends. The end time should take place after the
307 # start time.
308 "startTime": "A String", # The time that the window first starts.
309 },
310 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700311 "dailyMaintenanceWindow": { # Time window specified for daily maintenance operations. # DailyMaintenanceWindow specifies a daily maintenance operation window.
312 "duration": "A String", # [Output only] Duration of the time window, automatically chosen to be
313 # smallest possible in the given scenario.
314 "startTime": "A String", # Time within the maintenance window to start the maintenance operations.
315 # It must be in format "HH:MM", where HH : [00-23] and MM : [00-59] GMT.
316 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700317 "maintenanceExclusions": { # Exceptions to maintenance window. Non-emergency maintenance should not
318 # occur in these windows.
319 "a_key": { # Represents an arbitrary window of time.
320 "endTime": "A String", # The time that the window ends. The end time should take place after the
321 # start time.
322 "startTime": "A String", # The time that the window first starts.
323 },
324 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700325 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700326 "resourceVersion": "A String", # A hash identifying the version of this policy, so that updates to fields of
327 # the policy won't accidentally undo intermediate changes (and so that users
328 # of the API unaware of some fields won't accidentally remove other fields).
329 # Make a &lt;code&gt;get()&lt;/code&gt; request to the cluster to get the current
330 # resource version and include it with requests to set the policy.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700331 },
332 "networkPolicy": { # Configuration options for the NetworkPolicy feature. # Configuration options for the NetworkPolicy feature.
333 # https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
334 "enabled": True or False, # Whether network policy is enabled on the cluster.
335 "provider": "A String", # The selected network policy provider.
336 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700337 "masterAuthorizedNetworksConfig": { # Configuration options for the master authorized networks feature. Enabled # The configuration options for master authorized networks feature.
338 # master authorized networks will disallow all external traffic to access
339 # Kubernetes master through HTTPS except traffic from the given CIDR blocks,
340 # Google Compute Engine Public IPs and Google Prod IPs.
341 "enabled": True or False, # Whether or not master authorized networks is enabled.
342 "cidrBlocks": [ # cidr_blocks define up to 10 external networks that could access
343 # Kubernetes master through HTTPS.
344 { # CidrBlock contains an optional name and one CIDR block.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700345 "cidrBlock": "A String", # cidr_block must be specified in CIDR notation.
Dan O'Mearadd494642020-05-01 07:42:23 -0700346 "displayName": "A String", # display_name is an optional field for users to identify CIDR blocks.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700347 },
348 ],
349 },
350 "addonsConfig": { # Configuration for the addons that can be automatically spun up in the # Configurations for the various addons available to run in the cluster.
351 # cluster, enabling additional functionality.
352 "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
353 # is enabled or not on the Master, it does not track whether network policy
354 # is enabled for the nodes.
355 # is enabled or not on the Master, it does not track whether network policy
356 # is enabled for the nodes.
357 "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
358 },
359 "cloudRunConfig": { # Configuration options for the Cloud Run feature. # Configuration for the Cloud Run addon. The `IstioConfig` addon must be
360 # enabled in order to enable Cloud Run addon. This option can only be enabled
361 # at cluster creation time.
362 "disabled": True or False, # Whether Cloud Run addon is enabled for this cluster.
363 },
364 "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
365 # makes it easy to set up HTTP load balancers for services in a cluster.
366 # which makes it easy to set up HTTP load balancers for services in a cluster.
367 "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
368 # When enabled, it runs a small pod in the cluster that manages the load
369 # balancers.
370 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700371 "kalmConfig": { # Configuration options for the KALM addon. # Configuration for the KALM addon, which manages the lifecycle of k8s
372 # applications.
373 "enabled": True or False, # Whether KALM is enabled for this cluster.
374 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700375 "horizontalPodAutoscaling": { # Configuration options for the horizontal pod autoscaling feature, which # Configuration for the horizontal pod autoscaling feature, which
376 # increases or decreases the number of replica pods a replication controller
377 # has based on the resource usage of the existing pods.
378 # increases or decreases the number of replica pods a replication controller
379 # has based on the resource usage of the existing pods.
380 "disabled": True or False, # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -0700381 # When enabled, it ensures that metrics are collected into Stackdriver
382 # Monitoring.
383 },
384 "gcePersistentDiskCsiDriverConfig": { # Configuration for the Compute Engine PD CSI driver. This option can only be # Configuration for the Compute Engine Persistent Disk CSI driver.
385 # enabled at cluster creation time.
386 "enabled": True or False, # Whether the Compute Engine PD CSI driver is enabled for this cluster.
387 },
388 "configConnectorConfig": { # Configuration options for the Config Connector add-on. # Configuration for the ConfigConnector add-on, a Kubernetes
389 # extension to manage hosted GCP services through the Kubernetes API
390 "enabled": True or False, # Whether Cloud Connector is enabled for this cluster.
391 },
392 "dnsCacheConfig": { # Configuration for NodeLocal DNSCache # Configuration for NodeLocalDNS, a dns cache running on cluster nodes
393 "enabled": True or False, # Whether NodeLocal DNSCache is enabled for this cluster.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700394 },
395 "istioConfig": { # Configuration options for Istio addon. # Configuration for Istio, an open platform to connect, manage, and secure
396 # microservices.
397 "disabled": True or False, # Whether Istio is enabled for this cluster.
398 "auth": "A String", # The specified Istio auth mode, either none, or mutual TLS.
399 },
400 "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
401 # This addon is deprecated, and will be disabled in 1.15. It is recommended
402 # to use the Cloud Console to manage and monitor your Kubernetes clusters,
403 # workloads and applications. For more information, see:
404 # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
405 "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
406 },
407 },
408 "locations": [ # The list of Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -0700409 # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
410 # cluster's nodes should be located.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700411 "A String",
412 ],
Dan O'Mearadd494642020-05-01 07:42:23 -0700413 "enableKubernetesAlpha": True or False, # Kubernetes alpha features are enabled on this cluster. This includes alpha
414 # API groups (e.g. v1beta1) and features that may not be production ready in
415 # the kubernetes version of the master and nodes.
416 # The cluster has no SLA for uptime and master/node upgrades are disabled.
417 # Alpha enabled clusters are automatically deleted thirty days after
418 # creation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700419 "enableTpu": True or False, # Enable the ability to use Cloud TPUs in this cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -0700420 # This field is deprecated, use tpu_config.enabled instead.
421 "releaseChannel": { # ReleaseChannel indicates which release channel a cluster is # Release channel configuration.
422 # subscribed to. Release channels are arranged in order of risk and
423 # frequency of updates.
424 #
425 # When a cluster is subscribed to a release channel, Google maintains
426 # both the master version and the node version. Node auto-upgrade
427 # defaults to true and cannot be disabled. Updates to version related
428 # fields (e.g. current_master_version) return an error.
429 "channel": "A String", # channel specifies which release channel the cluster is subscribed to.
430 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700431 "defaultMaxPodsConstraint": { # Constraints applied to pods. # The default constraint on the maximum number of pods that can be run
432 # simultaneously on a node in the node pool of this cluster. Only honored
433 # if cluster created with IP Alias support.
434 "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
435 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700436 "network": "A String", # The name of the Google Compute Engine
437 # [network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
438 # to which the cluster is connected. If left unspecified, the `default`
439 # network will be used. On output this shows the network ID instead of the
440 # name.
441 "loggingService": "A String", # The logging service the cluster should use to write logs.
442 # Currently available options:
443 #
444 # * `logging.googleapis.com/kubernetes` - The Cloud Logging
445 # service with a Kubernetes-native resource model
446 # * `logging.googleapis.com` - The legacy Cloud Logging service (no longer
447 # available as of GKE 1.15).
448 # * `none` - no logs will be exported from the cluster.
449 #
450 # If left as an empty string,`logging.googleapis.com/kubernetes` will be
451 # used for GKE 1.14+ or `logging.googleapis.com` for earlier versions.
452 "instanceGroupUrls": [ # Deprecated. Use node_pools.instance_group_urls.
453 "A String",
454 ],
455 "networkConfig": { # NetworkConfig reports the relative names of network &amp; subnetwork. # Configuration for cluster networking.
456 "subnetwork": "A String", # Output only. The relative name of the Google Compute Engine
457 # [subnetwork](https://cloud.google.com/compute/docs/vpc) to which the
458 # cluster is connected. Example:
459 # projects/my-project/regions/us-central1/subnetworks/my-subnet
460 "network": "A String", # Output only. The relative name of the Google Compute Engine
461 # network(https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
462 # to which the cluster is connected. Example:
463 # projects/my-project/global/networks/my-network
464 "enableIntraNodeVisibility": True or False, # Whether Intra-node visibility is enabled for this cluster.
465 # This makes same node pod to pod traffic visible for VPC network.
466 },
467 "privateCluster": True or False, # If this is a private cluster setup. Private clusters are clusters that, by
468 # default have no external IP addresses on the nodes and where nodes and the
469 # master communicate over private IP addresses.
470 # This field is deprecated, use private_cluster_config.enable_private_nodes
471 # instead.
472 "podSecurityPolicyConfig": { # Configuration for the PodSecurityPolicy feature. # Configuration for the PodSecurityPolicy feature.
473 "enabled": True or False, # Enable the PodSecurityPolicy controller for this cluster. If enabled, pods
474 # must be valid under a PodSecurityPolicy to be created.
475 },
476 "shieldedNodes": { # Configuration of Shielded Nodes feature. # Shielded Nodes configuration.
477 "enabled": True or False, # Whether Shielded Nodes features are enabled on all nodes in this cluster.
478 },
479 "location": "A String", # [Output only] The name of the Google Compute Engine
480 # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
481 # or
482 # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
483 # in which the cluster resides.
484 "workloadIdentityConfig": { # Configuration for the use of Kubernetes Service Accounts in GCP IAM # Configuration for the use of Kubernetes Service Accounts in GCP IAM
485 # policies.
486 # policies.
487 "workloadPool": "A String", # The workload pool to attach all Kubernetes service accounts to.
488 "identityNamespace": "A String", # IAM Identity Namespace to attach all Kubernetes Service Accounts to.
489 },
490 "resourceUsageExportConfig": { # Configuration for exporting cluster resource usages. # Configuration for exporting resource usages. Resource usage export is
491 # disabled when this config unspecified.
492 "bigqueryDestination": { # Parameters for using BigQuery as the destination of resource usage export. # Configuration to use BigQuery as usage export destination.
493 "datasetId": "A String", # The ID of a BigQuery Dataset.
494 },
495 "enableNetworkEgressMetering": True or False, # Whether to enable network egress metering for this cluster. If enabled, a
496 # daemonset will be created in the cluster to meter network egress traffic.
497 "consumptionMeteringConfig": { # Parameters for controlling consumption metering. # Configuration to enable resource consumption metering.
498 "enabled": True or False, # Whether to enable consumption metering for this cluster. If enabled, a
499 # second BigQuery table will be created to hold resource consumption
500 # records.
501 },
502 },
503 "privateClusterConfig": { # Configuration options for private clusters. # Configuration for private cluster.
504 "enablePrivateEndpoint": True or False, # Whether the master's internal IP address is used as the cluster endpoint.
505 "publicEndpoint": "A String", # Output only. The external IP address of this cluster's master endpoint.
506 "masterGlobalAccessConfig": { # Configuration for controlling master global access settings. # Controls master global access settings.
507 "enabled": True or False, # Whenever master is accessible globally or not.
508 },
509 "enablePrivateNodes": True or False, # Whether nodes have internal IP addresses only. If enabled, all nodes are
510 # given only RFC 1918 private addresses and communicate with the master via
511 # private networking.
512 "privateEndpoint": "A String", # Output only. The internal IP address of this cluster's master endpoint.
513 "masterIpv4CidrBlock": "A String", # The IP range in CIDR notation to use for the hosted master network. This
514 # range will be used for assigning internal IP addresses to the master or
515 # set of masters, as well as the ILB VIP. This range must not overlap with
516 # any other ranges in use within the cluster's network.
517 "peeringName": "A String", # Output only. The peering name in the customer VPC used by this cluster.
518 },
519 "conditions": [ # Which conditions caused the current cluster state.
520 { # StatusCondition describes why a cluster or a node pool has a certain status
521 # (e.g., ERROR or DEGRADED).
522 "message": "A String", # Human-friendly representation of the condition
523 "code": "A String", # Machine-friendly representation of the condition
524 },
525 ],
526 "statusMessage": "A String", # [Output only] Additional information about the current status of this
527 # cluster, if available.
528 "servicesIpv4Cidr": "A String", # [Output only] The IP address range of the Kubernetes services in
529 # this cluster, in
530 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
531 # notation (e.g. `1.2.3.4/29`). Service addresses are
532 # typically put in the last `/16` from the container CIDR.
533 "status": "A String", # [Output only] The current status of this cluster.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700534 "ipAllocationPolicy": { # Configuration for controlling how IPs are allocated in the cluster. # Configuration for cluster IP allocation.
Dan O'Mearadd494642020-05-01 07:42:23 -0700535 "allowRouteOverlap": True or False, # If true, allow allocation of cluster CIDR ranges that overlap with certain
536 # kinds of network routes. By default we do not allow cluster CIDR ranges to
537 # intersect with any user declared routes. With allow_route_overlap == true,
538 # we allow overlapping with CIDR ranges that are larger than the cluster CIDR
539 # range.
540 #
541 # If this field is set to true, then cluster and services CIDRs must be
542 # fully-specified (e.g. `10.96.0.0/14`, but not `/14`), which means:
543 # 1) When `use_ip_aliases` is true, `cluster_ipv4_cidr_block` and
544 # `services_ipv4_cidr_block` must be fully-specified.
545 # 2) When `use_ip_aliases` is false, `cluster.cluster_ipv4_cidr` muse be
546 # fully-specified.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700547 "useIpAliases": True or False, # Whether alias IPs will be used for pod IPs in the cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -0700548 # This is used in conjunction with use_routes. It cannot
549 # be true if use_routes is true. If both use_ip_aliases and use_routes are
550 # false, then the server picks the default IP allocation mode
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700551 "nodeIpv4Cidr": "A String", # This field is deprecated, use node_ipv4_cidr_block.
552 "clusterIpv4CidrBlock": "A String", # The IP address range for the cluster pod IPs. If this field is set, then
553 # `cluster.cluster_ipv4_cidr` must be left blank.
554 #
555 # This field is only applicable when `use_ip_aliases` is true.
556 #
557 # Set to blank to have a range chosen with the default size.
558 #
559 # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
560 # netmask.
561 #
562 # Set to a
563 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
564 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
565 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
566 # to use.
567 "clusterSecondaryRangeName": "A String", # The name of the secondary range to be used for the cluster CIDR
568 # block. The secondary range will be used for pod IP
569 # addresses. This must be an existing secondary range associated
570 # with the cluster subnetwork.
571 #
572 # This field is only applicable with use_ip_aliases and
573 # create_subnetwork is false.
574 "servicesIpv4CidrBlock": "A String", # The IP address range of the services IPs in this cluster. If blank, a range
575 # will be automatically chosen with the default size.
576 #
577 # This field is only applicable when `use_ip_aliases` is true.
578 #
579 # Set to blank to have a range chosen with the default size.
580 #
581 # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
582 # netmask.
583 #
584 # Set to a
585 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
586 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
587 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
588 # to use.
589 "createSubnetwork": True or False, # Whether a new subnetwork will be created automatically for the cluster.
590 #
591 # This field is only applicable when `use_ip_aliases` is true.
592 "nodeIpv4CidrBlock": "A String", # The IP address range of the instance IPs in this cluster.
593 #
594 # This is applicable only if `create_subnetwork` is true.
595 #
596 # Set to blank to have a range chosen with the default size.
597 #
598 # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
599 # netmask.
600 #
601 # Set to a
602 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
603 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
604 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
605 # to use.
606 "tpuIpv4CidrBlock": "A String", # The IP address range of the Cloud TPUs in this cluster. If unspecified, a
607 # range will be automatically chosen with the default size.
608 #
609 # This field is only applicable when `use_ip_aliases` is true.
610 #
611 # If unspecified, the range will use the default size.
612 #
613 # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
614 # netmask.
615 #
616 # Set to a
617 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
618 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
619 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
620 # to use.
Dan O'Mearadd494642020-05-01 07:42:23 -0700621 # This field is deprecated, use cluster.tpu_config.ipv4_cidr_block instead.
622 "clusterIpv4Cidr": "A String", # This field is deprecated, use cluster_ipv4_cidr_block.
623 "useRoutes": True or False, # Whether routes will be used for pod IPs in the cluster.
624 # This is used in conjunction with use_ip_aliases. It cannot be true if
625 # use_ip_aliases is true. If both use_ip_aliases and use_routes are false,
626 # then the server picks the default IP allocation mode
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700627 "subnetworkName": "A String", # A custom subnetwork name to be used if `create_subnetwork` is true. If
628 # this field is empty, then an automatic name will be chosen for the new
629 # subnetwork.
630 "servicesSecondaryRangeName": "A String", # The name of the secondary range to be used as for the services
631 # CIDR block. The secondary range will be used for service
632 # ClusterIPs. This must be an existing secondary range associated
633 # with the cluster subnetwork.
634 #
635 # This field is only applicable with use_ip_aliases and
636 # create_subnetwork is false.
637 "servicesIpv4Cidr": "A String", # This field is deprecated, use services_ipv4_cidr_block.
638 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700639 "currentMasterVersion": "A String", # [Output only] The current software version of the master endpoint.
640 "description": "A String", # An optional description of this cluster.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700641 "currentNodeVersion": "A String", # [Output only] Deprecated, use
Dan O'Mearadd494642020-05-01 07:42:23 -0700642 # [NodePool.version](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1beta1/projects.locations.clusters.nodePools)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700643 # instead. The current version of the node software components.
644 # If they are currently at multiple versions because they're in the process
645 # of being upgraded, this reflects the minimum version of all nodes.
646 "binaryAuthorization": { # Configuration for Binary Authorization. # Configuration for Binary Authorization.
647 "enabled": True or False, # Enable Binary Authorization for this cluster. If enabled, all container
648 # images will be validated by Google Binauthz.
649 },
650 "labelFingerprint": "A String", # The fingerprint of the set of labels for this cluster.
651 "autoscaling": { # ClusterAutoscaling contains global, per-cluster information # Cluster-level autoscaling configuration.
652 # required by Cluster Autoscaler to automatically adjust
653 # the size of the cluster and create/delete
654 # node pools based on the current needs.
655 "autoprovisioningNodePoolDefaults": { # AutoprovisioningNodePoolDefaults contains defaults for a node pool created # AutoprovisioningNodePoolDefaults contains defaults for a node pool
656 # created by NAP.
657 # by NAP.
Dan O'Mearadd494642020-05-01 07:42:23 -0700658 "minCpuPlatform": "A String", # Minimum CPU platform to be used for NAP created node pools.
659 # The instance may be scheduled on the specified or newer CPU platform.
660 # Applicable values are the friendly names of CPU platforms, such as
661 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Haswell&amp;quot;&lt;/code&gt; or
662 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Sandy Bridge&amp;quot;&lt;/code&gt;. For more
663 # information, read [how to specify min CPU
664 # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
665 # To unset the min cpu platform field pass "automatic" as field value.
666 "management": { # NodeManagement defines the set of node management services turned on for the # Specifies the node management options for NAP created node-pools.
667 # node pool.
668 "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
669 # the Auto Upgrades will proceed.
670 "description": "A String", # [Output only] This field is set when upgrades are about to commence
671 # with the description of the upgrade.
672 "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
673 # with the approximate start time for the upgrades, in
674 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
675 },
676 "autoRepair": True or False, # Whether the nodes will be automatically repaired.
677 "autoUpgrade": True or False, # Whether the nodes will be automatically upgraded.
678 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700679 "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If
680 # service_account is specified, scopes should be empty.
681 "oauthScopes": [ # Scopes that are used by NAP when creating node pools. If oauth_scopes are
682 # specified, service_account should be empty.
683 "A String",
684 ],
Dan O'Mearadd494642020-05-01 07:42:23 -0700685 "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Specifies the upgrade settings for NAP created node pools
686 # disruption caused by an upgrade.
687 #
688 # maxUnavailable controls the number of nodes that can be simultaneously
689 # unavailable.
690 #
691 # maxSurge controls the number of additional nodes that can be added to the
692 # node pool temporarily for the time of the upgrade to increase the number of
693 # available nodes.
694 #
695 # (maxUnavailable + maxSurge) determines the level of parallelism (how many
696 # nodes are being upgraded at the same time).
697 #
698 # Note: upgrades inevitably introduce some disruption since workloads need to
699 # be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
700 # this holds true. (Disruption stays within the limits of
701 # PodDisruptionBudget, if it is configured.)
702 #
703 # Consider a hypothetical node pool with 5 nodes having maxSurge=2,
704 # maxUnavailable=1. This means the upgrade process upgrades 3 nodes
705 # simultaneously. It creates 2 additional (upgraded) nodes, then it brings
706 # down 3 old (not yet upgraded) nodes at the same time. This ensures that
707 # there are always at least 4 nodes available.
708 "maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
709 # of the node pool during the upgrade process.
710 "maxUnavailable": 42, # The maximum number of nodes that can be simultaneously unavailable during
711 # the upgrade process. A node is considered available if its status is
712 # Ready.
713 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700714 },
715 "resourceLimits": [ # Contains global constraints regarding minimum and maximum
716 # amount of resources in the cluster.
717 { # Contains information about amount of some resource in the cluster.
718 # For memory, value should be in GB.
719 "resourceType": "A String", # Resource name "cpu", "memory" or gpu-specific string.
720 "minimum": "A String", # Minimum amount of the resource in the cluster.
721 "maximum": "A String", # Maximum amount of the resource in the cluster.
722 },
723 ],
Dan O'Mearadd494642020-05-01 07:42:23 -0700724 "autoprovisioningLocations": [ # The list of Google Compute Engine
725 # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
726 # NodePool's nodes can be created by NAP.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700727 "A String",
728 ],
Dan O'Mearadd494642020-05-01 07:42:23 -0700729 "autoscalingProfile": "A String", # Defines autoscaling behaviour.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700730 "enableNodeAutoprovisioning": True or False, # Enables automatic node pool creation and deletion.
731 },
732 "masterAuth": { # The authentication information for accessing the master endpoint. # The authentication information for accessing the master endpoint.
733 # If unspecified, the defaults are used:
734 # For clusters before v1.12, if master_auth is unspecified, `username` will
735 # be set to "admin", a random password will be generated, and a client
736 # certificate will be issued.
737 # Authentication can be done using HTTP basic auth or using client
738 # certificates.
739 "username": "A String", # The username to use for HTTP basic authentication to the master endpoint.
740 # For clusters v1.6.0 and later, basic authentication can be disabled by
741 # leaving username unspecified (or setting it to the empty string).
742 "clientKey": "A String", # [Output only] Base64-encoded private key used by clients to authenticate
743 # to the cluster endpoint.
744 "clientCertificate": "A String", # [Output only] Base64-encoded public certificate used by clients to
745 # authenticate to the cluster endpoint.
Dan O'Mearadd494642020-05-01 07:42:23 -0700746 "clusterCaCertificate": "A String",
747 "password": "A String", # The password to use for HTTP basic authentication to the master endpoint.
748 # Because the master endpoint is open to the Internet, you should create a
749 # strong password. If a password is provided for cluster creation, username
750 # must be non-empty.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700751 "clientCertificateConfig": { # Configuration for client certificates on the cluster. # Configuration for client certificate authentication on the cluster. For
752 # clusters before v1.12, if no configuration is specified, a client
753 # certificate is issued.
754 "issueClientCertificate": True or False, # Issue a client certificate.
755 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700756 },
757 "expireTime": "A String", # [Output only] The time the cluster will be automatically
758 # deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
Dan O'Mearadd494642020-05-01 07:42:23 -0700759 "masterIpv4CidrBlock": "A String", # The IP prefix in CIDR notation to use for the hosted master network.
760 # This prefix will be used for assigning private IP addresses to the
761 # master or set of masters, as well as the ILB VIP.
762 # This field is deprecated, use
763 # private_cluster_config.master_ipv4_cidr_block instead.
764 "clusterTelemetry": { # Telemetry integration for the cluster. # Telemetry integration for the cluster.
765 "type": "A String", # Type of the integration.
766 },
767 "tpuIpv4CidrBlock": "A String", # [Output only] The IP address range of the Cloud TPUs in this cluster, in
768 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
769 # notation (e.g. `1.2.3.4/29`).
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700770 "nodePools": [ # The node pools associated with this cluster.
771 # This field should not be set if "node_config" or "initial_node_count" are
772 # specified.
773 { # NodePool contains the name and configuration for a cluster's node pool.
774 # Node pools are a set of nodes (i.e. VM's), with a common configuration and
775 # specification, under the control of the cluster master. They may have a set
776 # of Kubernetes labels applied to them, which may be used to reference them
777 # during pod scheduling. They may also be resized up or down, to accommodate
778 # the workload.
779 "status": "A String", # [Output only] The status of the nodes in this pool instance.
Dan O'Mearadd494642020-05-01 07:42:23 -0700780 "selfLink": "A String", # [Output only] Server-defined URL for the resource.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700781 "management": { # NodeManagement defines the set of node management services turned on for the # NodeManagement configuration for this NodePool.
782 # node pool.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700783 "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
784 # the Auto Upgrades will proceed.
785 "description": "A String", # [Output only] This field is set when upgrades are about to commence
786 # with the description of the upgrade.
787 "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
788 # with the approximate start time for the upgrades, in
789 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
790 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700791 "autoRepair": True or False, # Whether the nodes will be automatically repaired.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700792 "autoUpgrade": True or False, # Whether the nodes will be automatically upgraded.
793 },
794 "name": "A String", # The name of the node pool.
Dan O'Mearadd494642020-05-01 07:42:23 -0700795 "conditions": [ # Which conditions caused the current node pool state.
796 { # StatusCondition describes why a cluster or a node pool has a certain status
797 # (e.g., ERROR or DEGRADED).
798 "message": "A String", # Human-friendly representation of the condition
799 "code": "A String", # Machine-friendly representation of the condition
800 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700801 ],
802 "autoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for this NodePool. Autoscaler is enabled
803 # only if a valid configuration is present.
804 # adjust the size of the node pool to the current cluster usage.
Dan O'Mearadd494642020-05-01 07:42:23 -0700805 "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be &gt;= 1 and &lt;=
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700806 # max_node_count.
807 "autoprovisioned": True or False, # Can this node pool be deleted automatically.
808 "enabled": True or False, # Is autoscaling enabled for this node pool.
Dan O'Mearadd494642020-05-01 07:42:23 -0700809 "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be &gt;= min_node_count. There
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700810 # has to enough quota to scale up the cluster.
811 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700812 "locations": [ # The list of Google Compute Engine
813 # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
814 # NodePool's nodes should be located.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700815 "A String",
816 ],
817 "maxPodsConstraint": { # Constraints applied to pods. # The constraint on the maximum number of pods that can be run
818 # simultaneously on a node in the node pool.
819 "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
820 },
821 "version": "A String", # The version of the Kubernetes of this node.
Dan O'Mearadd494642020-05-01 07:42:23 -0700822 "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Upgrade settings control disruption and speed of the upgrade.
823 # disruption caused by an upgrade.
824 #
825 # maxUnavailable controls the number of nodes that can be simultaneously
826 # unavailable.
827 #
828 # maxSurge controls the number of additional nodes that can be added to the
829 # node pool temporarily for the time of the upgrade to increase the number of
830 # available nodes.
831 #
832 # (maxUnavailable + maxSurge) determines the level of parallelism (how many
833 # nodes are being upgraded at the same time).
834 #
835 # Note: upgrades inevitably introduce some disruption since workloads need to
836 # be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
837 # this holds true. (Disruption stays within the limits of
838 # PodDisruptionBudget, if it is configured.)
839 #
840 # Consider a hypothetical node pool with 5 nodes having maxSurge=2,
841 # maxUnavailable=1. This means the upgrade process upgrades 3 nodes
842 # simultaneously. It creates 2 additional (upgraded) nodes, then it brings
843 # down 3 old (not yet upgraded) nodes at the same time. This ensures that
844 # there are always at least 4 nodes available.
845 "maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
846 # of the node pool during the upgrade process.
847 "maxUnavailable": 42, # The maximum number of nodes that can be simultaneously unavailable during
848 # the upgrade process. A node is considered available if its status is
849 # Ready.
850 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700851 "initialNodeCount": 42, # The initial node count for the pool. You must ensure that your
Dan O'Mearadd494642020-05-01 07:42:23 -0700852 # Compute Engine &lt;a href="/compute/docs/resource-quotas"&gt;resource quota&lt;/a&gt;
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700853 # is sufficient for this number of instances. You must also have available
854 # firewall and routes quota.
855 "podIpv4CidrSize": 42, # [Output only] The pod CIDR block size per node in this node pool.
Dan O'Mearadd494642020-05-01 07:42:23 -0700856 "instanceGroupUrls": [ # [Output only] The resource URLs of the [managed instance
857 # groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
858 # associated with this node pool.
859 "A String",
860 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700861 "config": { # Parameters that describe the nodes in a cluster. # The node configuration of the pool.
Dan O'Mearadd494642020-05-01 07:42:23 -0700862 "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
863 # the specified [Zonal Compute
864 # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
865 # to this node pool.
866 # is the configuration of desired reservation which instances could take
867 # capacity from.
868 "values": [ # Corresponds to the label value(s) of reservation resource(s).
869 "A String",
870 ],
871 "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
872 "key": "A String", # Corresponds to the label key of a reservation resource. To target a
873 # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
874 # the key and specify the name of your reservation as its value.
875 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700876 "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
Dan O'Mearadd494642020-05-01 07:42:23 -0700877 "type": "A String", # Type of the sandbox to use for the node.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700878 "sandboxType": "A String", # Type of the sandbox to use for the node (e.g. 'gvisor')
879 },
880 "machineType": "A String", # The name of a Google Compute Engine [machine
Dan O'Mearadd494642020-05-01 07:42:23 -0700881 # type](https://cloud.google.com/compute/docs/machine-types) (e.g.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700882 # `n1-standard-1`).
883 #
884 # If unspecified, the default machine type is
885 # `n1-standard-1`.
886 "shieldedInstanceConfig": { # A set of Shielded Instance options. # Shielded Instance options.
887 "enableIntegrityMonitoring": True or False, # Defines whether the instance has integrity monitoring enabled.
888 #
889 # Enables monitoring and attestation of the boot integrity of the instance.
890 # The attestation is performed against the integrity policy baseline. This
891 # baseline is initially derived from the implicitly trusted boot image when
892 # the instance is created.
893 "enableSecureBoot": True or False, # Defines whether the instance has Secure Boot enabled.
894 #
895 # Secure Boot helps ensure that the system only runs authentic software by
896 # verifying the digital signature of all boot components, and halting the
897 # boot process if signature verification fails.
898 },
899 "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
900 #
901 # If unspecified, the default disk type is 'pd-standard'
902 "tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
903 # valid sources or targets for network firewalls and are specified by
904 # the client during cluster or node pool creation. Each tag within the list
905 # must comply with RFC1035.
906 "A String",
907 ],
908 "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
909 # https://cloud.google.com/compute/docs/instances/preemptible for more
910 # inforamtion about preemptible VM instances.
911 "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
912 # These will added in addition to any default label(s) that
913 # Kubernetes may apply to the node.
914 # In case of conflict in label keys, the applied set may differ depending on
915 # the Kubernetes version -- it's best to assume the behavior is undefined
916 # and conflicts should be avoided.
917 # For more information, including usage and the valid values, see:
918 # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
919 "a_key": "A String",
920 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700921 "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
922 # Specify the email address of the Service Account; otherwise, if no Service
923 # Account is specified, the "default" service account is used.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700924 "oauthScopes": [ # The set of Google API scopes to be made available on all of the
925 # node VMs under the "default" service account.
926 #
927 # The following scopes are recommended, but not required, and by default are
928 # not included:
929 #
930 # * `https://www.googleapis.com/auth/compute` is required for mounting
931 # persistent storage on your nodes.
932 # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
933 # communicating with **gcr.io**
Dan O'Mearadd494642020-05-01 07:42:23 -0700934 # (the [Google Container
935 # Registry](https://cloud.google.com/container-registry/)).
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700936 #
937 # If unspecified, no scopes are added, unless Cloud Logging or Cloud
938 # Monitoring are enabled, in which case their required scopes will be added.
939 "A String",
940 ],
941 "taints": [ # List of kubernetes taints to be applied to each node.
942 #
943 # For more information, including usage and the valid values, see:
944 # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
945 { # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
946 # can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute.
947 #
948 # For more information, including usage and the valid values, see:
949 # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
Dan O'Mearadd494642020-05-01 07:42:23 -0700950 "value": "A String", # Value for taint.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700951 "key": "A String", # Key for taint.
952 "effect": "A String", # Effect for taint.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700953 },
954 ],
955 "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
956 # workloads on the node pool.
Dan O'Mearadd494642020-05-01 07:42:23 -0700957 "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
958 # on the node pool.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700959 "nodeMetadata": "A String", # NodeMetadata is the configuration for how to expose metadata to the
960 # workloads running on the node.
961 },
962 "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
963 # The smallest allowed disk size is 10GB.
964 #
965 # If unspecified, the default disk size is 100GB.
966 "accelerators": [ # A list of hardware accelerators to be attached to each node.
967 # See https://cloud.google.com/compute/docs/gpus for more information about
968 # support for GPUs.
969 { # AcceleratorConfig represents a Hardware Accelerator request.
970 "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
971 "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
Dan O'Mearadd494642020-05-01 07:42:23 -0700972 # [here](https://cloud.google.com/compute/docs/gpus)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700973 },
974 ],
975 "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
976 # scheduled on the specified or newer CPU platform. Applicable values are the
977 # friendly names of CPU platforms, such as
Dan O'Mearadd494642020-05-01 07:42:23 -0700978 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Haswell&amp;quot;&lt;/code&gt; or
979 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Sandy Bridge&amp;quot;&lt;/code&gt;. For more
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700980 # information, read [how to specify min CPU
981 # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
Dan O'Mearadd494642020-05-01 07:42:23 -0700982 "bootDiskKmsKey": "A String", #
983 # The Customer Managed Encryption Key used to encrypt the boot disk attached
984 # to each node in the node pool. This should be of the form
985 # projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
986 # For more information about protecting resources with Cloud KMS Keys please
987 # see:
988 # https://cloud.google.com/compute/docs/disks/customer-managed-encryption
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700989 "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
990 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700991 # The limit for this value is dependent upon the maximum number of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700992 # disks available on a machine per zone. See:
Dan O'Mearadd494642020-05-01 07:42:23 -0700993 # https://cloud.google.com/compute/docs/disks/local-ssd
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700994 # for more information.
995 "imageType": "A String", # The image type to use for this node. Note that for a given image type,
996 # the latest version of it will be used.
997 "metadata": { # The metadata key/value pairs assigned to instances in the cluster.
998 #
999 # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
1000 # in length. These are reflected as part of a URL in the metadata server.
1001 # Additionally, to avoid ambiguity, keys must not conflict with any other
1002 # metadata keys for the project or be one of the reserved keys:
1003 # "cluster-location"
1004 # "cluster-name"
1005 # "cluster-uid"
1006 # "configure-sh"
1007 # "containerd-configure-sh"
1008 # "enable-oslogin"
1009 # "gci-ensure-gke-docker"
Dan O'Mearadd494642020-05-01 07:42:23 -07001010 # "gci-metrics-enabled"
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001011 # "gci-update-strategy"
1012 # "instance-template"
1013 # "kube-env"
1014 # "startup-script"
1015 # "user-data"
1016 # "disable-address-manager"
1017 # "windows-startup-script-ps1"
1018 # "common-psm1"
1019 # "k8s-node-setup-psm1"
1020 # "install-ssh-psm1"
1021 # "user-profile-psm1"
1022 # "serial-port-logging-enable"
1023 # Values are free-form strings, and only have meaning as interpreted by
1024 # the image running in the instance. The only restriction placed on them is
1025 # that each value's size must be less than or equal to 32 KB.
1026 #
1027 # The total size of all keys and values must be less than 512 KB.
1028 "a_key": "A String",
1029 },
1030 },
Dan O'Mearadd494642020-05-01 07:42:23 -07001031 "statusMessage": "A String", # [Output only] Additional information about the current status of this
1032 # node pool instance, if available.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001033 },
1034 ],
1035 "monitoringService": "A String", # The monitoring service the cluster should use to write metrics.
1036 # Currently available options:
1037 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001038 # * "monitoring.googleapis.com/kubernetes" - The Cloud Monitoring
1039 # service with a Kubernetes-native resource model
1040 # * `monitoring.googleapis.com` - The legacy Cloud Monitoring service (no
1041 # longer available as of GKE 1.15).
1042 # * `none` - No metrics will be exported from the cluster.
1043 #
1044 # If left as an empty string,`monitoring.googleapis.com/kubernetes` will be
1045 # used for GKE 1.14+ or `monitoring.googleapis.com` for earlier versions.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001046 "createTime": "A String", # [Output only] The time the cluster was created, in
1047 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
Dan O'Mearadd494642020-05-01 07:42:23 -07001048 "databaseEncryption": { # Configuration of etcd encryption. # Configuration of etcd encryption.
1049 "state": "A String", # Denotes the state of etcd encryption.
1050 "keyName": "A String", # Name of CloudKMS key to use for the encryption of secrets in etcd.
1051 # Ex. projects/my-project/locations/global/keyRings/my-ring/cryptoKeys/my-key
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001052 },
Dan O'Mearadd494642020-05-01 07:42:23 -07001053 "name": "A String", # The name of this cluster. The name must be unique within this project
1054 # and location (e.g. zone or region), and can be up to 40 characters with
1055 # the following restrictions:
1056 #
1057 # * Lowercase letters, numbers, and hyphens only.
1058 # * Must start with a letter.
1059 # * Must end with a number or a letter.
1060 "legacyAbac": { # Configuration for the legacy Attribute Based Access Control authorization # Configuration for the legacy ABAC authorization mode.
1061 # mode.
1062 "enabled": True or False, # Whether the ABAC authorizer is enabled for this cluster. When enabled,
1063 # identities in the system, including service accounts, nodes, and
1064 # controllers, will have statically granted permissions beyond those
1065 # provided by the RBAC configuration or IAM.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001066 },
1067 "endpoint": "A String", # [Output only] The IP address of this cluster's master endpoint.
1068 # The endpoint can be accessed from the internet at
1069 # `https://username:password@endpoint/`.
1070 #
1071 # See the `masterAuth` property of this resource for username and
1072 # password information.
1073 "currentNodeCount": 42, # [Output only] The number of nodes currently in the cluster. Deprecated.
1074 # Call Kubernetes API directly to retrieve node information.
Dan O'Mearadd494642020-05-01 07:42:23 -07001075 "zone": "A String", # [Output only] The name of the Google Compute Engine
1076 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
1077 # cluster resides. This field is deprecated, use location instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001078 "verticalPodAutoscaling": { # VerticalPodAutoscaling contains global, per-cluster information # Cluster-level Vertical Pod Autoscaling configuration.
1079 # required by Vertical Pod Autoscaler to automatically adjust
1080 # the resources of pods controlled by it.
1081 "enabled": True or False, # Enables vertical pod autoscaling.
1082 },
Dan O'Mearadd494642020-05-01 07:42:23 -07001083 "tpuConfig": { # Configuration for Cloud TPU. # Configuration for Cloud TPU support;
1084 "useServiceNetworking": True or False, # Whether to use service networking for Cloud TPU or not.
1085 "ipv4CidrBlock": "A String", # IPv4 CIDR block reserved for Cloud TPU in the VPC.
1086 "enabled": True or False, # Whether Cloud TPU integration is enabled or not.
1087 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001088 "initialClusterVersion": "A String", # The initial Kubernetes version for this cluster. Valid versions are those
1089 # found in validMasterVersions returned by getServerConfig. The version can
1090 # be upgraded over time; such upgrades are reflected in
1091 # currentMasterVersion and currentNodeVersion.
1092 #
1093 # Users may specify either explicit versions offered by
1094 # Kubernetes Engine or version aliases, which have the following behavior:
1095 #
1096 # - "latest": picks the highest valid Kubernetes version
1097 # - "1.X": picks the highest valid patch+gke.N patch in the 1.X version
1098 # - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
1099 # - "1.X.Y-gke.N": picks an explicit Kubernetes version
1100 # - "","-": picks the default Kubernetes version
1101 "nodeConfig": { # Parameters that describe the nodes in a cluster. # Parameters used in creating the cluster's nodes.
1102 # For requests, this field should only be used in lieu of a
1103 # "node_pool" object, since this configuration (along with the
1104 # "initial_node_count") will be used to create a "NodePool" object with an
1105 # auto-generated name. Do not use this and a node_pool at the same time.
1106 # For responses, this field will be populated with the node configuration of
1107 # the first node pool. (For configuration of each node pool, see
1108 # `node_pool.config`)
1109 #
1110 # If unspecified, the defaults are used.
1111 # This field is deprecated, use node_pool.config instead.
Dan O'Mearadd494642020-05-01 07:42:23 -07001112 "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
1113 # the specified [Zonal Compute
1114 # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
1115 # to this node pool.
1116 # is the configuration of desired reservation which instances could take
1117 # capacity from.
1118 "values": [ # Corresponds to the label value(s) of reservation resource(s).
1119 "A String",
1120 ],
1121 "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
1122 "key": "A String", # Corresponds to the label key of a reservation resource. To target a
1123 # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
1124 # the key and specify the name of your reservation as its value.
1125 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001126 "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
Dan O'Mearadd494642020-05-01 07:42:23 -07001127 "type": "A String", # Type of the sandbox to use for the node.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001128 "sandboxType": "A String", # Type of the sandbox to use for the node (e.g. 'gvisor')
1129 },
1130 "machineType": "A String", # The name of a Google Compute Engine [machine
Dan O'Mearadd494642020-05-01 07:42:23 -07001131 # type](https://cloud.google.com/compute/docs/machine-types) (e.g.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001132 # `n1-standard-1`).
1133 #
1134 # If unspecified, the default machine type is
1135 # `n1-standard-1`.
1136 "shieldedInstanceConfig": { # A set of Shielded Instance options. # Shielded Instance options.
1137 "enableIntegrityMonitoring": True or False, # Defines whether the instance has integrity monitoring enabled.
1138 #
1139 # Enables monitoring and attestation of the boot integrity of the instance.
1140 # The attestation is performed against the integrity policy baseline. This
1141 # baseline is initially derived from the implicitly trusted boot image when
1142 # the instance is created.
1143 "enableSecureBoot": True or False, # Defines whether the instance has Secure Boot enabled.
1144 #
1145 # Secure Boot helps ensure that the system only runs authentic software by
1146 # verifying the digital signature of all boot components, and halting the
1147 # boot process if signature verification fails.
1148 },
1149 "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
1150 #
1151 # If unspecified, the default disk type is 'pd-standard'
1152 "tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
1153 # valid sources or targets for network firewalls and are specified by
1154 # the client during cluster or node pool creation. Each tag within the list
1155 # must comply with RFC1035.
1156 "A String",
1157 ],
1158 "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
1159 # https://cloud.google.com/compute/docs/instances/preemptible for more
1160 # inforamtion about preemptible VM instances.
1161 "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
1162 # These will added in addition to any default label(s) that
1163 # Kubernetes may apply to the node.
1164 # In case of conflict in label keys, the applied set may differ depending on
1165 # the Kubernetes version -- it's best to assume the behavior is undefined
1166 # and conflicts should be avoided.
1167 # For more information, including usage and the valid values, see:
1168 # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
1169 "a_key": "A String",
1170 },
Dan O'Mearadd494642020-05-01 07:42:23 -07001171 "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
1172 # Specify the email address of the Service Account; otherwise, if no Service
1173 # Account is specified, the "default" service account is used.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001174 "oauthScopes": [ # The set of Google API scopes to be made available on all of the
1175 # node VMs under the "default" service account.
1176 #
1177 # The following scopes are recommended, but not required, and by default are
1178 # not included:
1179 #
1180 # * `https://www.googleapis.com/auth/compute` is required for mounting
1181 # persistent storage on your nodes.
1182 # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
1183 # communicating with **gcr.io**
Dan O'Mearadd494642020-05-01 07:42:23 -07001184 # (the [Google Container
1185 # Registry](https://cloud.google.com/container-registry/)).
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001186 #
1187 # If unspecified, no scopes are added, unless Cloud Logging or Cloud
1188 # Monitoring are enabled, in which case their required scopes will be added.
1189 "A String",
1190 ],
1191 "taints": [ # List of kubernetes taints to be applied to each node.
1192 #
1193 # For more information, including usage and the valid values, see:
1194 # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
1195 { # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
1196 # can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute.
1197 #
1198 # For more information, including usage and the valid values, see:
1199 # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
Dan O'Mearadd494642020-05-01 07:42:23 -07001200 "value": "A String", # Value for taint.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001201 "key": "A String", # Key for taint.
1202 "effect": "A String", # Effect for taint.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001203 },
1204 ],
1205 "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
1206 # workloads on the node pool.
Dan O'Mearadd494642020-05-01 07:42:23 -07001207 "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
1208 # on the node pool.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001209 "nodeMetadata": "A String", # NodeMetadata is the configuration for how to expose metadata to the
1210 # workloads running on the node.
1211 },
1212 "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
1213 # The smallest allowed disk size is 10GB.
1214 #
1215 # If unspecified, the default disk size is 100GB.
1216 "accelerators": [ # A list of hardware accelerators to be attached to each node.
1217 # See https://cloud.google.com/compute/docs/gpus for more information about
1218 # support for GPUs.
1219 { # AcceleratorConfig represents a Hardware Accelerator request.
1220 "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
1221 "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
Dan O'Mearadd494642020-05-01 07:42:23 -07001222 # [here](https://cloud.google.com/compute/docs/gpus)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001223 },
1224 ],
1225 "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
1226 # scheduled on the specified or newer CPU platform. Applicable values are the
1227 # friendly names of CPU platforms, such as
Dan O'Mearadd494642020-05-01 07:42:23 -07001228 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Haswell&amp;quot;&lt;/code&gt; or
1229 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Sandy Bridge&amp;quot;&lt;/code&gt;. For more
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001230 # information, read [how to specify min CPU
1231 # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
Dan O'Mearadd494642020-05-01 07:42:23 -07001232 "bootDiskKmsKey": "A String", #
1233 # The Customer Managed Encryption Key used to encrypt the boot disk attached
1234 # to each node in the node pool. This should be of the form
1235 # projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
1236 # For more information about protecting resources with Cloud KMS Keys please
1237 # see:
1238 # https://cloud.google.com/compute/docs/disks/customer-managed-encryption
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001239 "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
1240 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001241 # The limit for this value is dependent upon the maximum number of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001242 # disks available on a machine per zone. See:
Dan O'Mearadd494642020-05-01 07:42:23 -07001243 # https://cloud.google.com/compute/docs/disks/local-ssd
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001244 # for more information.
1245 "imageType": "A String", # The image type to use for this node. Note that for a given image type,
1246 # the latest version of it will be used.
1247 "metadata": { # The metadata key/value pairs assigned to instances in the cluster.
1248 #
1249 # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
1250 # in length. These are reflected as part of a URL in the metadata server.
1251 # Additionally, to avoid ambiguity, keys must not conflict with any other
1252 # metadata keys for the project or be one of the reserved keys:
1253 # "cluster-location"
1254 # "cluster-name"
1255 # "cluster-uid"
1256 # "configure-sh"
1257 # "containerd-configure-sh"
1258 # "enable-oslogin"
1259 # "gci-ensure-gke-docker"
Dan O'Mearadd494642020-05-01 07:42:23 -07001260 # "gci-metrics-enabled"
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001261 # "gci-update-strategy"
1262 # "instance-template"
1263 # "kube-env"
1264 # "startup-script"
1265 # "user-data"
1266 # "disable-address-manager"
1267 # "windows-startup-script-ps1"
1268 # "common-psm1"
1269 # "k8s-node-setup-psm1"
1270 # "install-ssh-psm1"
1271 # "user-profile-psm1"
1272 # "serial-port-logging-enable"
1273 # Values are free-form strings, and only have meaning as interpreted by
1274 # the image running in the instance. The only restriction placed on them is
1275 # that each value's size must be less than or equal to 32 KB.
1276 #
1277 # The total size of all keys and values must be less than 512 KB.
1278 "a_key": "A String",
1279 },
1280 },
1281 "clusterIpv4Cidr": "A String", # The IP address range of the container pods in this cluster, in
1282 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1283 # notation (e.g. `10.96.0.0/14`). Leave blank to have
1284 # one automatically chosen or specify a `/14` block in `10.0.0.0/8`.
Dan O'Mearadd494642020-05-01 07:42:23 -07001285 "authenticatorGroupsConfig": { # Configuration for returning group information from authenticators. # Configuration controlling RBAC group membership information.
1286 "enabled": True or False, # Whether this cluster should return group membership lookups
1287 # during authentication using a group of security groups.
1288 "securityGroup": "A String", # The name of the security group-of-groups to be used. Only relevant
1289 # if enabled = true.
1290 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001291 "subnetwork": "A String", # The name of the Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -07001292 # [subnetwork](https://cloud.google.com/compute/docs/subnetworks) to which
1293 # the cluster is connected. On output this shows the subnetwork ID instead of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001294 # the name.
1295 "resourceLabels": { # The resource labels for the cluster to use to annotate any related
1296 # Google Compute Engine resources.
1297 "a_key": "A String",
1298 },
1299 "selfLink": "A String", # [Output only] Server-defined URL for the resource.
Dan O'Mearadd494642020-05-01 07:42:23 -07001300 "initialNodeCount": 42, # The number of nodes to create in this cluster. You must ensure that your
1301 # Compute Engine &lt;a href="/compute/docs/resource-quotas"&gt;resource quota&lt;/a&gt;
1302 # is sufficient for this number of instances. You must also have available
1303 # firewall and routes quota.
1304 # For requests, this field should only be used in lieu of a
1305 # "node_pool" object, since this configuration (along with the
1306 # "node_config") will be used to create a "NodePool" object with an
1307 # auto-generated name. Do not use this and a node_pool at the same time.
1308 #
1309 # This field is deprecated, use node_pool.initial_node_count instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001310 },
1311 }
1312
1313 x__xgafv: string, V1 error format.
1314 Allowed values
1315 1 - v1 error format
1316 2 - v2 error format
1317
1318Returns:
1319 An object of the form:
1320
1321 { # This operation resource represents operations that may have happened or are
1322 # happening on the cluster. All fields are output only.
1323 "status": "A String", # The current status of the operation.
Dan O'Mearadd494642020-05-01 07:42:23 -07001324 "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001325 "endTime": "A String", # [Output only] The time the operation completed, in
1326 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
1327 "name": "A String", # The server-assigned ID for the operation.
1328 "zone": "A String", # The name of the Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -07001329 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
1330 # operation is taking place. This field is deprecated, use location instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001331 "clusterConditions": [ # Which conditions caused the current cluster state.
1332 { # StatusCondition describes why a cluster or a node pool has a certain status
1333 # (e.g., ERROR or DEGRADED).
1334 "message": "A String", # Human-friendly representation of the condition
1335 "code": "A String", # Machine-friendly representation of the condition
1336 },
1337 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07001338 "startTime": "A String", # [Output only] The time the operation started, in
1339 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
1340 "detail": "A String", # Detailed operation progress, if available.
1341 "targetLink": "A String", # Server-defined URL for the target of the operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001342 "operationType": "A String", # The operation type.
Dan O'Mearadd494642020-05-01 07:42:23 -07001343 "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001344 "status": "A String", # Status of an operation stage.
1345 # Unset for single-stage operations.
1346 "metrics": [ # Progress metric bundle, for example:
1347 # metrics: [{name: "nodes done", int_value: 15},
1348 # {name: "nodes total", int_value: 32}]
1349 # or
1350 # metrics: [{name: "progress", double_value: 0.56},
1351 # {name: "progress scale", double_value: 1.0}]
1352 { # Progress metric is (string, int|float|string) pair.
1353 "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
1354 "intValue": "A String", # For metrics with integer value.
Dan O'Mearadd494642020-05-01 07:42:23 -07001355 "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001356 "doubleValue": 3.14, # For metrics with floating point value.
1357 },
1358 ],
1359 "stages": [ # Substages of an operation or a stage.
1360 # Object with schema name: OperationProgress
1361 ],
1362 "name": "A String", # A non-parameterized string describing an operation stage.
1363 # Unset for single-stage operations.
1364 },
1365 "nodepoolConditions": [ # Which conditions caused the current node pool state.
1366 { # StatusCondition describes why a cluster or a node pool has a certain status
1367 # (e.g., ERROR or DEGRADED).
1368 "message": "A String", # Human-friendly representation of the condition
1369 "code": "A String", # Machine-friendly representation of the condition
1370 },
1371 ],
1372 "selfLink": "A String", # Server-defined URL for the resource.
Dan O'Mearadd494642020-05-01 07:42:23 -07001373 "location": "A String", # [Output only] The name of the Google Compute Engine
1374 # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
1375 # or
1376 # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
1377 # in which the cluster resides.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001378 }</pre>
1379</div>
1380
1381<div class="method">
1382 <code class="details" id="delete">delete(name, projectId=None, clusterId=None, zone=None, x__xgafv=None)</code>
1383 <pre>Deletes the cluster, including the Kubernetes endpoint and all worker
1384nodes.
1385
1386Firewalls and routes that were configured during cluster creation
1387are also deleted.
1388
1389Other Google Compute Engine resources that might be in use by the cluster,
1390such as load balancer resources, are not deleted if they weren't present
1391when the cluster was initially created.
1392
1393Args:
1394 name: string, The name (project, location, cluster) of the cluster to delete.
1395Specified in the format 'projects/*/locations/*/clusters/*'. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07001396 projectId: string, Required. Deprecated. The Google Developers Console [project ID or project
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001397number](https://support.google.com/cloud/answer/6158840).
1398This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07001399 clusterId: string, Required. Deprecated. The name of the cluster to delete.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001400This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07001401 zone: string, Required. Deprecated. The name of the Google Compute Engine
1402[zone](https://cloud.google.com/compute/docs/zones#available) in which the
1403cluster resides. This field has been deprecated and replaced by the name
1404field.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001405 x__xgafv: string, V1 error format.
1406 Allowed values
1407 1 - v1 error format
1408 2 - v2 error format
1409
1410Returns:
1411 An object of the form:
1412
1413 { # This operation resource represents operations that may have happened or are
1414 # happening on the cluster. All fields are output only.
1415 "status": "A String", # The current status of the operation.
Dan O'Mearadd494642020-05-01 07:42:23 -07001416 "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001417 "endTime": "A String", # [Output only] The time the operation completed, in
1418 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
1419 "name": "A String", # The server-assigned ID for the operation.
1420 "zone": "A String", # The name of the Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -07001421 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
1422 # operation is taking place. This field is deprecated, use location instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001423 "clusterConditions": [ # Which conditions caused the current cluster state.
1424 { # StatusCondition describes why a cluster or a node pool has a certain status
1425 # (e.g., ERROR or DEGRADED).
1426 "message": "A String", # Human-friendly representation of the condition
1427 "code": "A String", # Machine-friendly representation of the condition
1428 },
1429 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07001430 "startTime": "A String", # [Output only] The time the operation started, in
1431 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
1432 "detail": "A String", # Detailed operation progress, if available.
1433 "targetLink": "A String", # Server-defined URL for the target of the operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001434 "operationType": "A String", # The operation type.
Dan O'Mearadd494642020-05-01 07:42:23 -07001435 "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001436 "status": "A String", # Status of an operation stage.
1437 # Unset for single-stage operations.
1438 "metrics": [ # Progress metric bundle, for example:
1439 # metrics: [{name: "nodes done", int_value: 15},
1440 # {name: "nodes total", int_value: 32}]
1441 # or
1442 # metrics: [{name: "progress", double_value: 0.56},
1443 # {name: "progress scale", double_value: 1.0}]
1444 { # Progress metric is (string, int|float|string) pair.
1445 "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
1446 "intValue": "A String", # For metrics with integer value.
Dan O'Mearadd494642020-05-01 07:42:23 -07001447 "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001448 "doubleValue": 3.14, # For metrics with floating point value.
1449 },
1450 ],
1451 "stages": [ # Substages of an operation or a stage.
1452 # Object with schema name: OperationProgress
1453 ],
1454 "name": "A String", # A non-parameterized string describing an operation stage.
1455 # Unset for single-stage operations.
1456 },
1457 "nodepoolConditions": [ # Which conditions caused the current node pool state.
1458 { # StatusCondition describes why a cluster or a node pool has a certain status
1459 # (e.g., ERROR or DEGRADED).
1460 "message": "A String", # Human-friendly representation of the condition
1461 "code": "A String", # Machine-friendly representation of the condition
1462 },
1463 ],
1464 "selfLink": "A String", # Server-defined URL for the resource.
Dan O'Mearadd494642020-05-01 07:42:23 -07001465 "location": "A String", # [Output only] The name of the Google Compute Engine
1466 # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
1467 # or
1468 # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
1469 # in which the cluster resides.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001470 }</pre>
1471</div>
1472
1473<div class="method">
1474 <code class="details" id="get">get(name, projectId=None, clusterId=None, zone=None, x__xgafv=None)</code>
1475 <pre>Gets the details for a specific cluster.
1476
1477Args:
1478 name: string, The name (project, location, cluster) of the cluster to retrieve.
1479Specified in the format 'projects/*/locations/*/clusters/*'. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07001480 projectId: string, Required. Deprecated. The Google Developers Console [project ID or project
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001481number](https://support.google.com/cloud/answer/6158840).
1482This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07001483 clusterId: string, Required. Deprecated. The name of the cluster to retrieve.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001484This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07001485 zone: string, Required. Deprecated. The name of the Google Compute Engine
1486[zone](https://cloud.google.com/compute/docs/zones#available) in which the
1487cluster resides. This field has been deprecated and replaced by the name
1488field.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001489 x__xgafv: string, V1 error format.
1490 Allowed values
1491 1 - v1 error format
1492 2 - v2 error format
1493
1494Returns:
1495 An object of the form:
1496
1497 { # A Google Kubernetes Engine cluster.
1498 "nodeIpv4CidrSize": 42, # [Output only] The size of the address space on each node for hosting
1499 # containers. This is provisioned from within the `container_ipv4_cidr`
1500 # range. This field will only be set when cluster is in route-based network
1501 # mode.
1502 "maintenancePolicy": { # MaintenancePolicy defines the maintenance policy to be used for the cluster. # Configure the maintenance policy for this cluster.
1503 "window": { # MaintenanceWindow defines the maintenance window to be used for the cluster. # Specifies the maintenance window in which maintenance may be performed.
Dan O'Mearadd494642020-05-01 07:42:23 -07001504 "recurringWindow": { # Represents an arbitrary window of time that recurs. # RecurringWindow specifies some number of recurring time periods for
1505 # maintenance to occur. The time windows may be overlapping. If no
1506 # maintenance windows are set, maintenance can occur at any time.
1507 "recurrence": "A String", # An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how
1508 # this window reccurs. They go on for the span of time between the start and
1509 # end time.
1510 #
1511 # For example, to have something repeat every weekday, you'd use:
1512 # &lt;code&gt;FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR&lt;/code&gt;
1513 # To repeat some window daily (equivalent to the DailyMaintenanceWindow):
1514 # &lt;code&gt;FREQ=DAILY&lt;/code&gt;
1515 # For the first weekend of every month:
1516 # &lt;code&gt;FREQ=MONTHLY;BYSETPOS=1;BYDAY=SA,SU&lt;/code&gt;
1517 # This specifies how frequently the window starts. Eg, if you wanted to have
1518 # a 9-5 UTC-4 window every weekday, you'd use something like:
1519 # &lt;code&gt;
1520 # start time = 2019-01-01T09:00:00-0400
1521 # end time = 2019-01-01T17:00:00-0400
1522 # recurrence = FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR
1523 # &lt;/code&gt;
1524 # Windows can span multiple days. Eg, to make the window encompass every
1525 # weekend from midnight Saturday till the last minute of Sunday UTC:
1526 # &lt;code&gt;
1527 # start time = 2019-01-05T00:00:00Z
1528 # end time = 2019-01-07T23:59:00Z
1529 # recurrence = FREQ=WEEKLY;BYDAY=SA
1530 # &lt;/code&gt;
1531 # Note the start and end time's specific dates are largely arbitrary except
1532 # to specify duration of the window and when it first starts.
1533 # The FREQ values of HOURLY, MINUTELY, and SECONDLY are not supported.
1534 "window": { # Represents an arbitrary window of time. # The window of the first recurrence.
1535 "endTime": "A String", # The time that the window ends. The end time should take place after the
1536 # start time.
1537 "startTime": "A String", # The time that the window first starts.
1538 },
1539 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001540 "dailyMaintenanceWindow": { # Time window specified for daily maintenance operations. # DailyMaintenanceWindow specifies a daily maintenance operation window.
1541 "duration": "A String", # [Output only] Duration of the time window, automatically chosen to be
1542 # smallest possible in the given scenario.
1543 "startTime": "A String", # Time within the maintenance window to start the maintenance operations.
1544 # It must be in format "HH:MM", where HH : [00-23] and MM : [00-59] GMT.
1545 },
Dan O'Mearadd494642020-05-01 07:42:23 -07001546 "maintenanceExclusions": { # Exceptions to maintenance window. Non-emergency maintenance should not
1547 # occur in these windows.
1548 "a_key": { # Represents an arbitrary window of time.
1549 "endTime": "A String", # The time that the window ends. The end time should take place after the
1550 # start time.
1551 "startTime": "A String", # The time that the window first starts.
1552 },
1553 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001554 },
Dan O'Mearadd494642020-05-01 07:42:23 -07001555 "resourceVersion": "A String", # A hash identifying the version of this policy, so that updates to fields of
1556 # the policy won't accidentally undo intermediate changes (and so that users
1557 # of the API unaware of some fields won't accidentally remove other fields).
1558 # Make a &lt;code&gt;get()&lt;/code&gt; request to the cluster to get the current
1559 # resource version and include it with requests to set the policy.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001560 },
1561 "networkPolicy": { # Configuration options for the NetworkPolicy feature. # Configuration options for the NetworkPolicy feature.
1562 # https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
1563 "enabled": True or False, # Whether network policy is enabled on the cluster.
1564 "provider": "A String", # The selected network policy provider.
1565 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001566 "masterAuthorizedNetworksConfig": { # Configuration options for the master authorized networks feature. Enabled # The configuration options for master authorized networks feature.
1567 # master authorized networks will disallow all external traffic to access
1568 # Kubernetes master through HTTPS except traffic from the given CIDR blocks,
1569 # Google Compute Engine Public IPs and Google Prod IPs.
1570 "enabled": True or False, # Whether or not master authorized networks is enabled.
1571 "cidrBlocks": [ # cidr_blocks define up to 10 external networks that could access
1572 # Kubernetes master through HTTPS.
1573 { # CidrBlock contains an optional name and one CIDR block.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001574 "cidrBlock": "A String", # cidr_block must be specified in CIDR notation.
Dan O'Mearadd494642020-05-01 07:42:23 -07001575 "displayName": "A String", # display_name is an optional field for users to identify CIDR blocks.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001576 },
1577 ],
1578 },
1579 "addonsConfig": { # Configuration for the addons that can be automatically spun up in the # Configurations for the various addons available to run in the cluster.
1580 # cluster, enabling additional functionality.
1581 "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
1582 # is enabled or not on the Master, it does not track whether network policy
1583 # is enabled for the nodes.
1584 # is enabled or not on the Master, it does not track whether network policy
1585 # is enabled for the nodes.
1586 "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
1587 },
1588 "cloudRunConfig": { # Configuration options for the Cloud Run feature. # Configuration for the Cloud Run addon. The `IstioConfig` addon must be
1589 # enabled in order to enable Cloud Run addon. This option can only be enabled
1590 # at cluster creation time.
1591 "disabled": True or False, # Whether Cloud Run addon is enabled for this cluster.
1592 },
1593 "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
1594 # makes it easy to set up HTTP load balancers for services in a cluster.
1595 # which makes it easy to set up HTTP load balancers for services in a cluster.
1596 "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
1597 # When enabled, it runs a small pod in the cluster that manages the load
1598 # balancers.
1599 },
Dan O'Mearadd494642020-05-01 07:42:23 -07001600 "kalmConfig": { # Configuration options for the KALM addon. # Configuration for the KALM addon, which manages the lifecycle of k8s
1601 # applications.
1602 "enabled": True or False, # Whether KALM is enabled for this cluster.
1603 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001604 "horizontalPodAutoscaling": { # Configuration options for the horizontal pod autoscaling feature, which # Configuration for the horizontal pod autoscaling feature, which
1605 # increases or decreases the number of replica pods a replication controller
1606 # has based on the resource usage of the existing pods.
1607 # increases or decreases the number of replica pods a replication controller
1608 # has based on the resource usage of the existing pods.
1609 "disabled": True or False, # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -07001610 # When enabled, it ensures that metrics are collected into Stackdriver
1611 # Monitoring.
1612 },
1613 "gcePersistentDiskCsiDriverConfig": { # Configuration for the Compute Engine PD CSI driver. This option can only be # Configuration for the Compute Engine Persistent Disk CSI driver.
1614 # enabled at cluster creation time.
1615 "enabled": True or False, # Whether the Compute Engine PD CSI driver is enabled for this cluster.
1616 },
1617 "configConnectorConfig": { # Configuration options for the Config Connector add-on. # Configuration for the ConfigConnector add-on, a Kubernetes
1618 # extension to manage hosted GCP services through the Kubernetes API
1619 "enabled": True or False, # Whether Cloud Connector is enabled for this cluster.
1620 },
1621 "dnsCacheConfig": { # Configuration for NodeLocal DNSCache # Configuration for NodeLocalDNS, a dns cache running on cluster nodes
1622 "enabled": True or False, # Whether NodeLocal DNSCache is enabled for this cluster.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001623 },
1624 "istioConfig": { # Configuration options for Istio addon. # Configuration for Istio, an open platform to connect, manage, and secure
1625 # microservices.
1626 "disabled": True or False, # Whether Istio is enabled for this cluster.
1627 "auth": "A String", # The specified Istio auth mode, either none, or mutual TLS.
1628 },
1629 "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
1630 # This addon is deprecated, and will be disabled in 1.15. It is recommended
1631 # to use the Cloud Console to manage and monitor your Kubernetes clusters,
1632 # workloads and applications. For more information, see:
1633 # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
1634 "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
1635 },
1636 },
1637 "locations": [ # The list of Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -07001638 # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
1639 # cluster's nodes should be located.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001640 "A String",
1641 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07001642 "enableKubernetesAlpha": True or False, # Kubernetes alpha features are enabled on this cluster. This includes alpha
1643 # API groups (e.g. v1beta1) and features that may not be production ready in
1644 # the kubernetes version of the master and nodes.
1645 # The cluster has no SLA for uptime and master/node upgrades are disabled.
1646 # Alpha enabled clusters are automatically deleted thirty days after
1647 # creation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001648 "enableTpu": True or False, # Enable the ability to use Cloud TPUs in this cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -07001649 # This field is deprecated, use tpu_config.enabled instead.
1650 "releaseChannel": { # ReleaseChannel indicates which release channel a cluster is # Release channel configuration.
1651 # subscribed to. Release channels are arranged in order of risk and
1652 # frequency of updates.
1653 #
1654 # When a cluster is subscribed to a release channel, Google maintains
1655 # both the master version and the node version. Node auto-upgrade
1656 # defaults to true and cannot be disabled. Updates to version related
1657 # fields (e.g. current_master_version) return an error.
1658 "channel": "A String", # channel specifies which release channel the cluster is subscribed to.
1659 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001660 "defaultMaxPodsConstraint": { # Constraints applied to pods. # The default constraint on the maximum number of pods that can be run
1661 # simultaneously on a node in the node pool of this cluster. Only honored
1662 # if cluster created with IP Alias support.
1663 "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
1664 },
Dan O'Mearadd494642020-05-01 07:42:23 -07001665 "network": "A String", # The name of the Google Compute Engine
1666 # [network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
1667 # to which the cluster is connected. If left unspecified, the `default`
1668 # network will be used. On output this shows the network ID instead of the
1669 # name.
1670 "loggingService": "A String", # The logging service the cluster should use to write logs.
1671 # Currently available options:
1672 #
1673 # * `logging.googleapis.com/kubernetes` - The Cloud Logging
1674 # service with a Kubernetes-native resource model
1675 # * `logging.googleapis.com` - The legacy Cloud Logging service (no longer
1676 # available as of GKE 1.15).
1677 # * `none` - no logs will be exported from the cluster.
1678 #
1679 # If left as an empty string,`logging.googleapis.com/kubernetes` will be
1680 # used for GKE 1.14+ or `logging.googleapis.com` for earlier versions.
1681 "instanceGroupUrls": [ # Deprecated. Use node_pools.instance_group_urls.
1682 "A String",
1683 ],
1684 "networkConfig": { # NetworkConfig reports the relative names of network &amp; subnetwork. # Configuration for cluster networking.
1685 "subnetwork": "A String", # Output only. The relative name of the Google Compute Engine
1686 # [subnetwork](https://cloud.google.com/compute/docs/vpc) to which the
1687 # cluster is connected. Example:
1688 # projects/my-project/regions/us-central1/subnetworks/my-subnet
1689 "network": "A String", # Output only. The relative name of the Google Compute Engine
1690 # network(https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
1691 # to which the cluster is connected. Example:
1692 # projects/my-project/global/networks/my-network
1693 "enableIntraNodeVisibility": True or False, # Whether Intra-node visibility is enabled for this cluster.
1694 # This makes same node pod to pod traffic visible for VPC network.
1695 },
1696 "privateCluster": True or False, # If this is a private cluster setup. Private clusters are clusters that, by
1697 # default have no external IP addresses on the nodes and where nodes and the
1698 # master communicate over private IP addresses.
1699 # This field is deprecated, use private_cluster_config.enable_private_nodes
1700 # instead.
1701 "podSecurityPolicyConfig": { # Configuration for the PodSecurityPolicy feature. # Configuration for the PodSecurityPolicy feature.
1702 "enabled": True or False, # Enable the PodSecurityPolicy controller for this cluster. If enabled, pods
1703 # must be valid under a PodSecurityPolicy to be created.
1704 },
1705 "shieldedNodes": { # Configuration of Shielded Nodes feature. # Shielded Nodes configuration.
1706 "enabled": True or False, # Whether Shielded Nodes features are enabled on all nodes in this cluster.
1707 },
1708 "location": "A String", # [Output only] The name of the Google Compute Engine
1709 # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
1710 # or
1711 # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
1712 # in which the cluster resides.
1713 "workloadIdentityConfig": { # Configuration for the use of Kubernetes Service Accounts in GCP IAM # Configuration for the use of Kubernetes Service Accounts in GCP IAM
1714 # policies.
1715 # policies.
1716 "workloadPool": "A String", # The workload pool to attach all Kubernetes service accounts to.
1717 "identityNamespace": "A String", # IAM Identity Namespace to attach all Kubernetes Service Accounts to.
1718 },
1719 "resourceUsageExportConfig": { # Configuration for exporting cluster resource usages. # Configuration for exporting resource usages. Resource usage export is
1720 # disabled when this config unspecified.
1721 "bigqueryDestination": { # Parameters for using BigQuery as the destination of resource usage export. # Configuration to use BigQuery as usage export destination.
1722 "datasetId": "A String", # The ID of a BigQuery Dataset.
1723 },
1724 "enableNetworkEgressMetering": True or False, # Whether to enable network egress metering for this cluster. If enabled, a
1725 # daemonset will be created in the cluster to meter network egress traffic.
1726 "consumptionMeteringConfig": { # Parameters for controlling consumption metering. # Configuration to enable resource consumption metering.
1727 "enabled": True or False, # Whether to enable consumption metering for this cluster. If enabled, a
1728 # second BigQuery table will be created to hold resource consumption
1729 # records.
1730 },
1731 },
1732 "privateClusterConfig": { # Configuration options for private clusters. # Configuration for private cluster.
1733 "enablePrivateEndpoint": True or False, # Whether the master's internal IP address is used as the cluster endpoint.
1734 "publicEndpoint": "A String", # Output only. The external IP address of this cluster's master endpoint.
1735 "masterGlobalAccessConfig": { # Configuration for controlling master global access settings. # Controls master global access settings.
1736 "enabled": True or False, # Whenever master is accessible globally or not.
1737 },
1738 "enablePrivateNodes": True or False, # Whether nodes have internal IP addresses only. If enabled, all nodes are
1739 # given only RFC 1918 private addresses and communicate with the master via
1740 # private networking.
1741 "privateEndpoint": "A String", # Output only. The internal IP address of this cluster's master endpoint.
1742 "masterIpv4CidrBlock": "A String", # The IP range in CIDR notation to use for the hosted master network. This
1743 # range will be used for assigning internal IP addresses to the master or
1744 # set of masters, as well as the ILB VIP. This range must not overlap with
1745 # any other ranges in use within the cluster's network.
1746 "peeringName": "A String", # Output only. The peering name in the customer VPC used by this cluster.
1747 },
1748 "conditions": [ # Which conditions caused the current cluster state.
1749 { # StatusCondition describes why a cluster or a node pool has a certain status
1750 # (e.g., ERROR or DEGRADED).
1751 "message": "A String", # Human-friendly representation of the condition
1752 "code": "A String", # Machine-friendly representation of the condition
1753 },
1754 ],
1755 "statusMessage": "A String", # [Output only] Additional information about the current status of this
1756 # cluster, if available.
1757 "servicesIpv4Cidr": "A String", # [Output only] The IP address range of the Kubernetes services in
1758 # this cluster, in
1759 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1760 # notation (e.g. `1.2.3.4/29`). Service addresses are
1761 # typically put in the last `/16` from the container CIDR.
1762 "status": "A String", # [Output only] The current status of this cluster.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001763 "ipAllocationPolicy": { # Configuration for controlling how IPs are allocated in the cluster. # Configuration for cluster IP allocation.
Dan O'Mearadd494642020-05-01 07:42:23 -07001764 "allowRouteOverlap": True or False, # If true, allow allocation of cluster CIDR ranges that overlap with certain
1765 # kinds of network routes. By default we do not allow cluster CIDR ranges to
1766 # intersect with any user declared routes. With allow_route_overlap == true,
1767 # we allow overlapping with CIDR ranges that are larger than the cluster CIDR
1768 # range.
1769 #
1770 # If this field is set to true, then cluster and services CIDRs must be
1771 # fully-specified (e.g. `10.96.0.0/14`, but not `/14`), which means:
1772 # 1) When `use_ip_aliases` is true, `cluster_ipv4_cidr_block` and
1773 # `services_ipv4_cidr_block` must be fully-specified.
1774 # 2) When `use_ip_aliases` is false, `cluster.cluster_ipv4_cidr` muse be
1775 # fully-specified.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001776 "useIpAliases": True or False, # Whether alias IPs will be used for pod IPs in the cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -07001777 # This is used in conjunction with use_routes. It cannot
1778 # be true if use_routes is true. If both use_ip_aliases and use_routes are
1779 # false, then the server picks the default IP allocation mode
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001780 "nodeIpv4Cidr": "A String", # This field is deprecated, use node_ipv4_cidr_block.
1781 "clusterIpv4CidrBlock": "A String", # The IP address range for the cluster pod IPs. If this field is set, then
1782 # `cluster.cluster_ipv4_cidr` must be left blank.
1783 #
1784 # This field is only applicable when `use_ip_aliases` is true.
1785 #
1786 # Set to blank to have a range chosen with the default size.
1787 #
1788 # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
1789 # netmask.
1790 #
1791 # Set to a
1792 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1793 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
1794 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
1795 # to use.
1796 "clusterSecondaryRangeName": "A String", # The name of the secondary range to be used for the cluster CIDR
1797 # block. The secondary range will be used for pod IP
1798 # addresses. This must be an existing secondary range associated
1799 # with the cluster subnetwork.
1800 #
1801 # This field is only applicable with use_ip_aliases and
1802 # create_subnetwork is false.
1803 "servicesIpv4CidrBlock": "A String", # The IP address range of the services IPs in this cluster. If blank, a range
1804 # will be automatically chosen with the default size.
1805 #
1806 # This field is only applicable when `use_ip_aliases` is true.
1807 #
1808 # Set to blank to have a range chosen with the default size.
1809 #
1810 # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
1811 # netmask.
1812 #
1813 # Set to a
1814 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1815 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
1816 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
1817 # to use.
1818 "createSubnetwork": True or False, # Whether a new subnetwork will be created automatically for the cluster.
1819 #
1820 # This field is only applicable when `use_ip_aliases` is true.
1821 "nodeIpv4CidrBlock": "A String", # The IP address range of the instance IPs in this cluster.
1822 #
1823 # This is applicable only if `create_subnetwork` is true.
1824 #
1825 # Set to blank to have a range chosen with the default size.
1826 #
1827 # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
1828 # netmask.
1829 #
1830 # Set to a
1831 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1832 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
1833 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
1834 # to use.
1835 "tpuIpv4CidrBlock": "A String", # The IP address range of the Cloud TPUs in this cluster. If unspecified, a
1836 # range will be automatically chosen with the default size.
1837 #
1838 # This field is only applicable when `use_ip_aliases` is true.
1839 #
1840 # If unspecified, the range will use the default size.
1841 #
1842 # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
1843 # netmask.
1844 #
1845 # Set to a
1846 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1847 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
1848 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
1849 # to use.
Dan O'Mearadd494642020-05-01 07:42:23 -07001850 # This field is deprecated, use cluster.tpu_config.ipv4_cidr_block instead.
1851 "clusterIpv4Cidr": "A String", # This field is deprecated, use cluster_ipv4_cidr_block.
1852 "useRoutes": True or False, # Whether routes will be used for pod IPs in the cluster.
1853 # This is used in conjunction with use_ip_aliases. It cannot be true if
1854 # use_ip_aliases is true. If both use_ip_aliases and use_routes are false,
1855 # then the server picks the default IP allocation mode
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001856 "subnetworkName": "A String", # A custom subnetwork name to be used if `create_subnetwork` is true. If
1857 # this field is empty, then an automatic name will be chosen for the new
1858 # subnetwork.
1859 "servicesSecondaryRangeName": "A String", # The name of the secondary range to be used as for the services
1860 # CIDR block. The secondary range will be used for service
1861 # ClusterIPs. This must be an existing secondary range associated
1862 # with the cluster subnetwork.
1863 #
1864 # This field is only applicable with use_ip_aliases and
1865 # create_subnetwork is false.
1866 "servicesIpv4Cidr": "A String", # This field is deprecated, use services_ipv4_cidr_block.
1867 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001868 "currentMasterVersion": "A String", # [Output only] The current software version of the master endpoint.
1869 "description": "A String", # An optional description of this cluster.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001870 "currentNodeVersion": "A String", # [Output only] Deprecated, use
Dan O'Mearadd494642020-05-01 07:42:23 -07001871 # [NodePool.version](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1beta1/projects.locations.clusters.nodePools)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001872 # instead. The current version of the node software components.
1873 # If they are currently at multiple versions because they're in the process
1874 # of being upgraded, this reflects the minimum version of all nodes.
1875 "binaryAuthorization": { # Configuration for Binary Authorization. # Configuration for Binary Authorization.
1876 "enabled": True or False, # Enable Binary Authorization for this cluster. If enabled, all container
1877 # images will be validated by Google Binauthz.
1878 },
1879 "labelFingerprint": "A String", # The fingerprint of the set of labels for this cluster.
1880 "autoscaling": { # ClusterAutoscaling contains global, per-cluster information # Cluster-level autoscaling configuration.
1881 # required by Cluster Autoscaler to automatically adjust
1882 # the size of the cluster and create/delete
1883 # node pools based on the current needs.
1884 "autoprovisioningNodePoolDefaults": { # AutoprovisioningNodePoolDefaults contains defaults for a node pool created # AutoprovisioningNodePoolDefaults contains defaults for a node pool
1885 # created by NAP.
1886 # by NAP.
Dan O'Mearadd494642020-05-01 07:42:23 -07001887 "minCpuPlatform": "A String", # Minimum CPU platform to be used for NAP created node pools.
1888 # The instance may be scheduled on the specified or newer CPU platform.
1889 # Applicable values are the friendly names of CPU platforms, such as
1890 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Haswell&amp;quot;&lt;/code&gt; or
1891 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Sandy Bridge&amp;quot;&lt;/code&gt;. For more
1892 # information, read [how to specify min CPU
1893 # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
1894 # To unset the min cpu platform field pass "automatic" as field value.
1895 "management": { # NodeManagement defines the set of node management services turned on for the # Specifies the node management options for NAP created node-pools.
1896 # node pool.
1897 "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
1898 # the Auto Upgrades will proceed.
1899 "description": "A String", # [Output only] This field is set when upgrades are about to commence
1900 # with the description of the upgrade.
1901 "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
1902 # with the approximate start time for the upgrades, in
1903 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
1904 },
1905 "autoRepair": True or False, # Whether the nodes will be automatically repaired.
1906 "autoUpgrade": True or False, # Whether the nodes will be automatically upgraded.
1907 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001908 "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If
1909 # service_account is specified, scopes should be empty.
1910 "oauthScopes": [ # Scopes that are used by NAP when creating node pools. If oauth_scopes are
1911 # specified, service_account should be empty.
1912 "A String",
1913 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07001914 "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Specifies the upgrade settings for NAP created node pools
1915 # disruption caused by an upgrade.
1916 #
1917 # maxUnavailable controls the number of nodes that can be simultaneously
1918 # unavailable.
1919 #
1920 # maxSurge controls the number of additional nodes that can be added to the
1921 # node pool temporarily for the time of the upgrade to increase the number of
1922 # available nodes.
1923 #
1924 # (maxUnavailable + maxSurge) determines the level of parallelism (how many
1925 # nodes are being upgraded at the same time).
1926 #
1927 # Note: upgrades inevitably introduce some disruption since workloads need to
1928 # be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
1929 # this holds true. (Disruption stays within the limits of
1930 # PodDisruptionBudget, if it is configured.)
1931 #
1932 # Consider a hypothetical node pool with 5 nodes having maxSurge=2,
1933 # maxUnavailable=1. This means the upgrade process upgrades 3 nodes
1934 # simultaneously. It creates 2 additional (upgraded) nodes, then it brings
1935 # down 3 old (not yet upgraded) nodes at the same time. This ensures that
1936 # there are always at least 4 nodes available.
1937 "maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
1938 # of the node pool during the upgrade process.
1939 "maxUnavailable": 42, # The maximum number of nodes that can be simultaneously unavailable during
1940 # the upgrade process. A node is considered available if its status is
1941 # Ready.
1942 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001943 },
1944 "resourceLimits": [ # Contains global constraints regarding minimum and maximum
1945 # amount of resources in the cluster.
1946 { # Contains information about amount of some resource in the cluster.
1947 # For memory, value should be in GB.
1948 "resourceType": "A String", # Resource name "cpu", "memory" or gpu-specific string.
1949 "minimum": "A String", # Minimum amount of the resource in the cluster.
1950 "maximum": "A String", # Maximum amount of the resource in the cluster.
1951 },
1952 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07001953 "autoprovisioningLocations": [ # The list of Google Compute Engine
1954 # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
1955 # NodePool's nodes can be created by NAP.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001956 "A String",
1957 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07001958 "autoscalingProfile": "A String", # Defines autoscaling behaviour.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001959 "enableNodeAutoprovisioning": True or False, # Enables automatic node pool creation and deletion.
1960 },
1961 "masterAuth": { # The authentication information for accessing the master endpoint. # The authentication information for accessing the master endpoint.
1962 # If unspecified, the defaults are used:
1963 # For clusters before v1.12, if master_auth is unspecified, `username` will
1964 # be set to "admin", a random password will be generated, and a client
1965 # certificate will be issued.
1966 # Authentication can be done using HTTP basic auth or using client
1967 # certificates.
1968 "username": "A String", # The username to use for HTTP basic authentication to the master endpoint.
1969 # For clusters v1.6.0 and later, basic authentication can be disabled by
1970 # leaving username unspecified (or setting it to the empty string).
1971 "clientKey": "A String", # [Output only] Base64-encoded private key used by clients to authenticate
1972 # to the cluster endpoint.
1973 "clientCertificate": "A String", # [Output only] Base64-encoded public certificate used by clients to
1974 # authenticate to the cluster endpoint.
Dan O'Mearadd494642020-05-01 07:42:23 -07001975 "clusterCaCertificate": "A String",
1976 "password": "A String", # The password to use for HTTP basic authentication to the master endpoint.
1977 # Because the master endpoint is open to the Internet, you should create a
1978 # strong password. If a password is provided for cluster creation, username
1979 # must be non-empty.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001980 "clientCertificateConfig": { # Configuration for client certificates on the cluster. # Configuration for client certificate authentication on the cluster. For
1981 # clusters before v1.12, if no configuration is specified, a client
1982 # certificate is issued.
1983 "issueClientCertificate": True or False, # Issue a client certificate.
1984 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001985 },
1986 "expireTime": "A String", # [Output only] The time the cluster will be automatically
1987 # deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
Dan O'Mearadd494642020-05-01 07:42:23 -07001988 "masterIpv4CidrBlock": "A String", # The IP prefix in CIDR notation to use for the hosted master network.
1989 # This prefix will be used for assigning private IP addresses to the
1990 # master or set of masters, as well as the ILB VIP.
1991 # This field is deprecated, use
1992 # private_cluster_config.master_ipv4_cidr_block instead.
1993 "clusterTelemetry": { # Telemetry integration for the cluster. # Telemetry integration for the cluster.
1994 "type": "A String", # Type of the integration.
1995 },
1996 "tpuIpv4CidrBlock": "A String", # [Output only] The IP address range of the Cloud TPUs in this cluster, in
1997 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1998 # notation (e.g. `1.2.3.4/29`).
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001999 "nodePools": [ # The node pools associated with this cluster.
2000 # This field should not be set if "node_config" or "initial_node_count" are
2001 # specified.
2002 { # NodePool contains the name and configuration for a cluster's node pool.
2003 # Node pools are a set of nodes (i.e. VM's), with a common configuration and
2004 # specification, under the control of the cluster master. They may have a set
2005 # of Kubernetes labels applied to them, which may be used to reference them
2006 # during pod scheduling. They may also be resized up or down, to accommodate
2007 # the workload.
2008 "status": "A String", # [Output only] The status of the nodes in this pool instance.
Dan O'Mearadd494642020-05-01 07:42:23 -07002009 "selfLink": "A String", # [Output only] Server-defined URL for the resource.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002010 "management": { # NodeManagement defines the set of node management services turned on for the # NodeManagement configuration for this NodePool.
2011 # node pool.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002012 "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
2013 # the Auto Upgrades will proceed.
2014 "description": "A String", # [Output only] This field is set when upgrades are about to commence
2015 # with the description of the upgrade.
2016 "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
2017 # with the approximate start time for the upgrades, in
2018 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
2019 },
Dan O'Mearadd494642020-05-01 07:42:23 -07002020 "autoRepair": True or False, # Whether the nodes will be automatically repaired.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002021 "autoUpgrade": True or False, # Whether the nodes will be automatically upgraded.
2022 },
2023 "name": "A String", # The name of the node pool.
Dan O'Mearadd494642020-05-01 07:42:23 -07002024 "conditions": [ # Which conditions caused the current node pool state.
2025 { # StatusCondition describes why a cluster or a node pool has a certain status
2026 # (e.g., ERROR or DEGRADED).
2027 "message": "A String", # Human-friendly representation of the condition
2028 "code": "A String", # Machine-friendly representation of the condition
2029 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002030 ],
2031 "autoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for this NodePool. Autoscaler is enabled
2032 # only if a valid configuration is present.
2033 # adjust the size of the node pool to the current cluster usage.
Dan O'Mearadd494642020-05-01 07:42:23 -07002034 "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be &gt;= 1 and &lt;=
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002035 # max_node_count.
2036 "autoprovisioned": True or False, # Can this node pool be deleted automatically.
2037 "enabled": True or False, # Is autoscaling enabled for this node pool.
Dan O'Mearadd494642020-05-01 07:42:23 -07002038 "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be &gt;= min_node_count. There
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002039 # has to enough quota to scale up the cluster.
2040 },
Dan O'Mearadd494642020-05-01 07:42:23 -07002041 "locations": [ # The list of Google Compute Engine
2042 # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
2043 # NodePool's nodes should be located.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002044 "A String",
2045 ],
2046 "maxPodsConstraint": { # Constraints applied to pods. # The constraint on the maximum number of pods that can be run
2047 # simultaneously on a node in the node pool.
2048 "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
2049 },
2050 "version": "A String", # The version of the Kubernetes of this node.
Dan O'Mearadd494642020-05-01 07:42:23 -07002051 "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Upgrade settings control disruption and speed of the upgrade.
2052 # disruption caused by an upgrade.
2053 #
2054 # maxUnavailable controls the number of nodes that can be simultaneously
2055 # unavailable.
2056 #
2057 # maxSurge controls the number of additional nodes that can be added to the
2058 # node pool temporarily for the time of the upgrade to increase the number of
2059 # available nodes.
2060 #
2061 # (maxUnavailable + maxSurge) determines the level of parallelism (how many
2062 # nodes are being upgraded at the same time).
2063 #
2064 # Note: upgrades inevitably introduce some disruption since workloads need to
2065 # be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
2066 # this holds true. (Disruption stays within the limits of
2067 # PodDisruptionBudget, if it is configured.)
2068 #
2069 # Consider a hypothetical node pool with 5 nodes having maxSurge=2,
2070 # maxUnavailable=1. This means the upgrade process upgrades 3 nodes
2071 # simultaneously. It creates 2 additional (upgraded) nodes, then it brings
2072 # down 3 old (not yet upgraded) nodes at the same time. This ensures that
2073 # there are always at least 4 nodes available.
2074 "maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
2075 # of the node pool during the upgrade process.
2076 "maxUnavailable": 42, # The maximum number of nodes that can be simultaneously unavailable during
2077 # the upgrade process. A node is considered available if its status is
2078 # Ready.
2079 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002080 "initialNodeCount": 42, # The initial node count for the pool. You must ensure that your
Dan O'Mearadd494642020-05-01 07:42:23 -07002081 # Compute Engine &lt;a href="/compute/docs/resource-quotas"&gt;resource quota&lt;/a&gt;
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002082 # is sufficient for this number of instances. You must also have available
2083 # firewall and routes quota.
2084 "podIpv4CidrSize": 42, # [Output only] The pod CIDR block size per node in this node pool.
Dan O'Mearadd494642020-05-01 07:42:23 -07002085 "instanceGroupUrls": [ # [Output only] The resource URLs of the [managed instance
2086 # groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
2087 # associated with this node pool.
2088 "A String",
2089 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002090 "config": { # Parameters that describe the nodes in a cluster. # The node configuration of the pool.
Dan O'Mearadd494642020-05-01 07:42:23 -07002091 "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
2092 # the specified [Zonal Compute
2093 # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
2094 # to this node pool.
2095 # is the configuration of desired reservation which instances could take
2096 # capacity from.
2097 "values": [ # Corresponds to the label value(s) of reservation resource(s).
2098 "A String",
2099 ],
2100 "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
2101 "key": "A String", # Corresponds to the label key of a reservation resource. To target a
2102 # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
2103 # the key and specify the name of your reservation as its value.
2104 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002105 "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
Dan O'Mearadd494642020-05-01 07:42:23 -07002106 "type": "A String", # Type of the sandbox to use for the node.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002107 "sandboxType": "A String", # Type of the sandbox to use for the node (e.g. 'gvisor')
2108 },
2109 "machineType": "A String", # The name of a Google Compute Engine [machine
Dan O'Mearadd494642020-05-01 07:42:23 -07002110 # type](https://cloud.google.com/compute/docs/machine-types) (e.g.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002111 # `n1-standard-1`).
2112 #
2113 # If unspecified, the default machine type is
2114 # `n1-standard-1`.
2115 "shieldedInstanceConfig": { # A set of Shielded Instance options. # Shielded Instance options.
2116 "enableIntegrityMonitoring": True or False, # Defines whether the instance has integrity monitoring enabled.
2117 #
2118 # Enables monitoring and attestation of the boot integrity of the instance.
2119 # The attestation is performed against the integrity policy baseline. This
2120 # baseline is initially derived from the implicitly trusted boot image when
2121 # the instance is created.
2122 "enableSecureBoot": True or False, # Defines whether the instance has Secure Boot enabled.
2123 #
2124 # Secure Boot helps ensure that the system only runs authentic software by
2125 # verifying the digital signature of all boot components, and halting the
2126 # boot process if signature verification fails.
2127 },
2128 "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
2129 #
2130 # If unspecified, the default disk type is 'pd-standard'
2131 "tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
2132 # valid sources or targets for network firewalls and are specified by
2133 # the client during cluster or node pool creation. Each tag within the list
2134 # must comply with RFC1035.
2135 "A String",
2136 ],
2137 "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
2138 # https://cloud.google.com/compute/docs/instances/preemptible for more
2139 # inforamtion about preemptible VM instances.
2140 "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
2141 # These will added in addition to any default label(s) that
2142 # Kubernetes may apply to the node.
2143 # In case of conflict in label keys, the applied set may differ depending on
2144 # the Kubernetes version -- it's best to assume the behavior is undefined
2145 # and conflicts should be avoided.
2146 # For more information, including usage and the valid values, see:
2147 # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
2148 "a_key": "A String",
2149 },
Dan O'Mearadd494642020-05-01 07:42:23 -07002150 "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
2151 # Specify the email address of the Service Account; otherwise, if no Service
2152 # Account is specified, the "default" service account is used.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002153 "oauthScopes": [ # The set of Google API scopes to be made available on all of the
2154 # node VMs under the "default" service account.
2155 #
2156 # The following scopes are recommended, but not required, and by default are
2157 # not included:
2158 #
2159 # * `https://www.googleapis.com/auth/compute` is required for mounting
2160 # persistent storage on your nodes.
2161 # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
2162 # communicating with **gcr.io**
Dan O'Mearadd494642020-05-01 07:42:23 -07002163 # (the [Google Container
2164 # Registry](https://cloud.google.com/container-registry/)).
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002165 #
2166 # If unspecified, no scopes are added, unless Cloud Logging or Cloud
2167 # Monitoring are enabled, in which case their required scopes will be added.
2168 "A String",
2169 ],
2170 "taints": [ # List of kubernetes taints to be applied to each node.
2171 #
2172 # For more information, including usage and the valid values, see:
2173 # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
2174 { # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
2175 # can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute.
2176 #
2177 # For more information, including usage and the valid values, see:
2178 # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
Dan O'Mearadd494642020-05-01 07:42:23 -07002179 "value": "A String", # Value for taint.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002180 "key": "A String", # Key for taint.
2181 "effect": "A String", # Effect for taint.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002182 },
2183 ],
2184 "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
2185 # workloads on the node pool.
Dan O'Mearadd494642020-05-01 07:42:23 -07002186 "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
2187 # on the node pool.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002188 "nodeMetadata": "A String", # NodeMetadata is the configuration for how to expose metadata to the
2189 # workloads running on the node.
2190 },
2191 "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
2192 # The smallest allowed disk size is 10GB.
2193 #
2194 # If unspecified, the default disk size is 100GB.
2195 "accelerators": [ # A list of hardware accelerators to be attached to each node.
2196 # See https://cloud.google.com/compute/docs/gpus for more information about
2197 # support for GPUs.
2198 { # AcceleratorConfig represents a Hardware Accelerator request.
2199 "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
2200 "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
Dan O'Mearadd494642020-05-01 07:42:23 -07002201 # [here](https://cloud.google.com/compute/docs/gpus)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002202 },
2203 ],
2204 "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
2205 # scheduled on the specified or newer CPU platform. Applicable values are the
2206 # friendly names of CPU platforms, such as
Dan O'Mearadd494642020-05-01 07:42:23 -07002207 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Haswell&amp;quot;&lt;/code&gt; or
2208 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Sandy Bridge&amp;quot;&lt;/code&gt;. For more
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002209 # information, read [how to specify min CPU
2210 # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
Dan O'Mearadd494642020-05-01 07:42:23 -07002211 "bootDiskKmsKey": "A String", #
2212 # The Customer Managed Encryption Key used to encrypt the boot disk attached
2213 # to each node in the node pool. This should be of the form
2214 # projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
2215 # For more information about protecting resources with Cloud KMS Keys please
2216 # see:
2217 # https://cloud.google.com/compute/docs/disks/customer-managed-encryption
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002218 "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
2219 #
Dan O'Mearadd494642020-05-01 07:42:23 -07002220 # The limit for this value is dependent upon the maximum number of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002221 # disks available on a machine per zone. See:
Dan O'Mearadd494642020-05-01 07:42:23 -07002222 # https://cloud.google.com/compute/docs/disks/local-ssd
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002223 # for more information.
2224 "imageType": "A String", # The image type to use for this node. Note that for a given image type,
2225 # the latest version of it will be used.
2226 "metadata": { # The metadata key/value pairs assigned to instances in the cluster.
2227 #
2228 # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
2229 # in length. These are reflected as part of a URL in the metadata server.
2230 # Additionally, to avoid ambiguity, keys must not conflict with any other
2231 # metadata keys for the project or be one of the reserved keys:
2232 # "cluster-location"
2233 # "cluster-name"
2234 # "cluster-uid"
2235 # "configure-sh"
2236 # "containerd-configure-sh"
2237 # "enable-oslogin"
2238 # "gci-ensure-gke-docker"
Dan O'Mearadd494642020-05-01 07:42:23 -07002239 # "gci-metrics-enabled"
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002240 # "gci-update-strategy"
2241 # "instance-template"
2242 # "kube-env"
2243 # "startup-script"
2244 # "user-data"
2245 # "disable-address-manager"
2246 # "windows-startup-script-ps1"
2247 # "common-psm1"
2248 # "k8s-node-setup-psm1"
2249 # "install-ssh-psm1"
2250 # "user-profile-psm1"
2251 # "serial-port-logging-enable"
2252 # Values are free-form strings, and only have meaning as interpreted by
2253 # the image running in the instance. The only restriction placed on them is
2254 # that each value's size must be less than or equal to 32 KB.
2255 #
2256 # The total size of all keys and values must be less than 512 KB.
2257 "a_key": "A String",
2258 },
2259 },
Dan O'Mearadd494642020-05-01 07:42:23 -07002260 "statusMessage": "A String", # [Output only] Additional information about the current status of this
2261 # node pool instance, if available.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002262 },
2263 ],
2264 "monitoringService": "A String", # The monitoring service the cluster should use to write metrics.
2265 # Currently available options:
2266 #
Dan O'Mearadd494642020-05-01 07:42:23 -07002267 # * "monitoring.googleapis.com/kubernetes" - The Cloud Monitoring
2268 # service with a Kubernetes-native resource model
2269 # * `monitoring.googleapis.com` - The legacy Cloud Monitoring service (no
2270 # longer available as of GKE 1.15).
2271 # * `none` - No metrics will be exported from the cluster.
2272 #
2273 # If left as an empty string,`monitoring.googleapis.com/kubernetes` will be
2274 # used for GKE 1.14+ or `monitoring.googleapis.com` for earlier versions.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002275 "createTime": "A String", # [Output only] The time the cluster was created, in
2276 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
Dan O'Mearadd494642020-05-01 07:42:23 -07002277 "databaseEncryption": { # Configuration of etcd encryption. # Configuration of etcd encryption.
2278 "state": "A String", # Denotes the state of etcd encryption.
2279 "keyName": "A String", # Name of CloudKMS key to use for the encryption of secrets in etcd.
2280 # Ex. projects/my-project/locations/global/keyRings/my-ring/cryptoKeys/my-key
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002281 },
Dan O'Mearadd494642020-05-01 07:42:23 -07002282 "name": "A String", # The name of this cluster. The name must be unique within this project
2283 # and location (e.g. zone or region), and can be up to 40 characters with
2284 # the following restrictions:
2285 #
2286 # * Lowercase letters, numbers, and hyphens only.
2287 # * Must start with a letter.
2288 # * Must end with a number or a letter.
2289 "legacyAbac": { # Configuration for the legacy Attribute Based Access Control authorization # Configuration for the legacy ABAC authorization mode.
2290 # mode.
2291 "enabled": True or False, # Whether the ABAC authorizer is enabled for this cluster. When enabled,
2292 # identities in the system, including service accounts, nodes, and
2293 # controllers, will have statically granted permissions beyond those
2294 # provided by the RBAC configuration or IAM.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002295 },
2296 "endpoint": "A String", # [Output only] The IP address of this cluster's master endpoint.
2297 # The endpoint can be accessed from the internet at
2298 # `https://username:password@endpoint/`.
2299 #
2300 # See the `masterAuth` property of this resource for username and
2301 # password information.
2302 "currentNodeCount": 42, # [Output only] The number of nodes currently in the cluster. Deprecated.
2303 # Call Kubernetes API directly to retrieve node information.
Dan O'Mearadd494642020-05-01 07:42:23 -07002304 "zone": "A String", # [Output only] The name of the Google Compute Engine
2305 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
2306 # cluster resides. This field is deprecated, use location instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002307 "verticalPodAutoscaling": { # VerticalPodAutoscaling contains global, per-cluster information # Cluster-level Vertical Pod Autoscaling configuration.
2308 # required by Vertical Pod Autoscaler to automatically adjust
2309 # the resources of pods controlled by it.
2310 "enabled": True or False, # Enables vertical pod autoscaling.
2311 },
Dan O'Mearadd494642020-05-01 07:42:23 -07002312 "tpuConfig": { # Configuration for Cloud TPU. # Configuration for Cloud TPU support;
2313 "useServiceNetworking": True or False, # Whether to use service networking for Cloud TPU or not.
2314 "ipv4CidrBlock": "A String", # IPv4 CIDR block reserved for Cloud TPU in the VPC.
2315 "enabled": True or False, # Whether Cloud TPU integration is enabled or not.
2316 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002317 "initialClusterVersion": "A String", # The initial Kubernetes version for this cluster. Valid versions are those
2318 # found in validMasterVersions returned by getServerConfig. The version can
2319 # be upgraded over time; such upgrades are reflected in
2320 # currentMasterVersion and currentNodeVersion.
2321 #
2322 # Users may specify either explicit versions offered by
2323 # Kubernetes Engine or version aliases, which have the following behavior:
2324 #
2325 # - "latest": picks the highest valid Kubernetes version
2326 # - "1.X": picks the highest valid patch+gke.N patch in the 1.X version
2327 # - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
2328 # - "1.X.Y-gke.N": picks an explicit Kubernetes version
2329 # - "","-": picks the default Kubernetes version
2330 "nodeConfig": { # Parameters that describe the nodes in a cluster. # Parameters used in creating the cluster's nodes.
2331 # For requests, this field should only be used in lieu of a
2332 # "node_pool" object, since this configuration (along with the
2333 # "initial_node_count") will be used to create a "NodePool" object with an
2334 # auto-generated name. Do not use this and a node_pool at the same time.
2335 # For responses, this field will be populated with the node configuration of
2336 # the first node pool. (For configuration of each node pool, see
2337 # `node_pool.config`)
2338 #
2339 # If unspecified, the defaults are used.
2340 # This field is deprecated, use node_pool.config instead.
Dan O'Mearadd494642020-05-01 07:42:23 -07002341 "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
2342 # the specified [Zonal Compute
2343 # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
2344 # to this node pool.
2345 # is the configuration of desired reservation which instances could take
2346 # capacity from.
2347 "values": [ # Corresponds to the label value(s) of reservation resource(s).
2348 "A String",
2349 ],
2350 "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
2351 "key": "A String", # Corresponds to the label key of a reservation resource. To target a
2352 # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
2353 # the key and specify the name of your reservation as its value.
2354 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002355 "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
Dan O'Mearadd494642020-05-01 07:42:23 -07002356 "type": "A String", # Type of the sandbox to use for the node.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002357 "sandboxType": "A String", # Type of the sandbox to use for the node (e.g. 'gvisor')
2358 },
2359 "machineType": "A String", # The name of a Google Compute Engine [machine
Dan O'Mearadd494642020-05-01 07:42:23 -07002360 # type](https://cloud.google.com/compute/docs/machine-types) (e.g.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002361 # `n1-standard-1`).
2362 #
2363 # If unspecified, the default machine type is
2364 # `n1-standard-1`.
2365 "shieldedInstanceConfig": { # A set of Shielded Instance options. # Shielded Instance options.
2366 "enableIntegrityMonitoring": True or False, # Defines whether the instance has integrity monitoring enabled.
2367 #
2368 # Enables monitoring and attestation of the boot integrity of the instance.
2369 # The attestation is performed against the integrity policy baseline. This
2370 # baseline is initially derived from the implicitly trusted boot image when
2371 # the instance is created.
2372 "enableSecureBoot": True or False, # Defines whether the instance has Secure Boot enabled.
2373 #
2374 # Secure Boot helps ensure that the system only runs authentic software by
2375 # verifying the digital signature of all boot components, and halting the
2376 # boot process if signature verification fails.
2377 },
2378 "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
2379 #
2380 # If unspecified, the default disk type is 'pd-standard'
2381 "tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
2382 # valid sources or targets for network firewalls and are specified by
2383 # the client during cluster or node pool creation. Each tag within the list
2384 # must comply with RFC1035.
2385 "A String",
2386 ],
2387 "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
2388 # https://cloud.google.com/compute/docs/instances/preemptible for more
2389 # inforamtion about preemptible VM instances.
2390 "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
2391 # These will added in addition to any default label(s) that
2392 # Kubernetes may apply to the node.
2393 # In case of conflict in label keys, the applied set may differ depending on
2394 # the Kubernetes version -- it's best to assume the behavior is undefined
2395 # and conflicts should be avoided.
2396 # For more information, including usage and the valid values, see:
2397 # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
2398 "a_key": "A String",
2399 },
Dan O'Mearadd494642020-05-01 07:42:23 -07002400 "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
2401 # Specify the email address of the Service Account; otherwise, if no Service
2402 # Account is specified, the "default" service account is used.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002403 "oauthScopes": [ # The set of Google API scopes to be made available on all of the
2404 # node VMs under the "default" service account.
2405 #
2406 # The following scopes are recommended, but not required, and by default are
2407 # not included:
2408 #
2409 # * `https://www.googleapis.com/auth/compute` is required for mounting
2410 # persistent storage on your nodes.
2411 # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
2412 # communicating with **gcr.io**
Dan O'Mearadd494642020-05-01 07:42:23 -07002413 # (the [Google Container
2414 # Registry](https://cloud.google.com/container-registry/)).
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002415 #
2416 # If unspecified, no scopes are added, unless Cloud Logging or Cloud
2417 # Monitoring are enabled, in which case their required scopes will be added.
2418 "A String",
2419 ],
2420 "taints": [ # List of kubernetes taints to be applied to each node.
2421 #
2422 # For more information, including usage and the valid values, see:
2423 # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
2424 { # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
2425 # can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute.
2426 #
2427 # For more information, including usage and the valid values, see:
2428 # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
Dan O'Mearadd494642020-05-01 07:42:23 -07002429 "value": "A String", # Value for taint.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002430 "key": "A String", # Key for taint.
2431 "effect": "A String", # Effect for taint.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002432 },
2433 ],
2434 "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
2435 # workloads on the node pool.
Dan O'Mearadd494642020-05-01 07:42:23 -07002436 "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
2437 # on the node pool.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002438 "nodeMetadata": "A String", # NodeMetadata is the configuration for how to expose metadata to the
2439 # workloads running on the node.
2440 },
2441 "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
2442 # The smallest allowed disk size is 10GB.
2443 #
2444 # If unspecified, the default disk size is 100GB.
2445 "accelerators": [ # A list of hardware accelerators to be attached to each node.
2446 # See https://cloud.google.com/compute/docs/gpus for more information about
2447 # support for GPUs.
2448 { # AcceleratorConfig represents a Hardware Accelerator request.
2449 "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
2450 "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
Dan O'Mearadd494642020-05-01 07:42:23 -07002451 # [here](https://cloud.google.com/compute/docs/gpus)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002452 },
2453 ],
2454 "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
2455 # scheduled on the specified or newer CPU platform. Applicable values are the
2456 # friendly names of CPU platforms, such as
Dan O'Mearadd494642020-05-01 07:42:23 -07002457 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Haswell&amp;quot;&lt;/code&gt; or
2458 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Sandy Bridge&amp;quot;&lt;/code&gt;. For more
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002459 # information, read [how to specify min CPU
2460 # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
Dan O'Mearadd494642020-05-01 07:42:23 -07002461 "bootDiskKmsKey": "A String", #
2462 # The Customer Managed Encryption Key used to encrypt the boot disk attached
2463 # to each node in the node pool. This should be of the form
2464 # projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
2465 # For more information about protecting resources with Cloud KMS Keys please
2466 # see:
2467 # https://cloud.google.com/compute/docs/disks/customer-managed-encryption
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002468 "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
2469 #
Dan O'Mearadd494642020-05-01 07:42:23 -07002470 # The limit for this value is dependent upon the maximum number of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002471 # disks available on a machine per zone. See:
Dan O'Mearadd494642020-05-01 07:42:23 -07002472 # https://cloud.google.com/compute/docs/disks/local-ssd
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002473 # for more information.
2474 "imageType": "A String", # The image type to use for this node. Note that for a given image type,
2475 # the latest version of it will be used.
2476 "metadata": { # The metadata key/value pairs assigned to instances in the cluster.
2477 #
2478 # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
2479 # in length. These are reflected as part of a URL in the metadata server.
2480 # Additionally, to avoid ambiguity, keys must not conflict with any other
2481 # metadata keys for the project or be one of the reserved keys:
2482 # "cluster-location"
2483 # "cluster-name"
2484 # "cluster-uid"
2485 # "configure-sh"
2486 # "containerd-configure-sh"
2487 # "enable-oslogin"
2488 # "gci-ensure-gke-docker"
Dan O'Mearadd494642020-05-01 07:42:23 -07002489 # "gci-metrics-enabled"
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002490 # "gci-update-strategy"
2491 # "instance-template"
2492 # "kube-env"
2493 # "startup-script"
2494 # "user-data"
2495 # "disable-address-manager"
2496 # "windows-startup-script-ps1"
2497 # "common-psm1"
2498 # "k8s-node-setup-psm1"
2499 # "install-ssh-psm1"
2500 # "user-profile-psm1"
2501 # "serial-port-logging-enable"
2502 # Values are free-form strings, and only have meaning as interpreted by
2503 # the image running in the instance. The only restriction placed on them is
2504 # that each value's size must be less than or equal to 32 KB.
2505 #
2506 # The total size of all keys and values must be less than 512 KB.
2507 "a_key": "A String",
2508 },
2509 },
2510 "clusterIpv4Cidr": "A String", # The IP address range of the container pods in this cluster, in
2511 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
2512 # notation (e.g. `10.96.0.0/14`). Leave blank to have
2513 # one automatically chosen or specify a `/14` block in `10.0.0.0/8`.
Dan O'Mearadd494642020-05-01 07:42:23 -07002514 "authenticatorGroupsConfig": { # Configuration for returning group information from authenticators. # Configuration controlling RBAC group membership information.
2515 "enabled": True or False, # Whether this cluster should return group membership lookups
2516 # during authentication using a group of security groups.
2517 "securityGroup": "A String", # The name of the security group-of-groups to be used. Only relevant
2518 # if enabled = true.
2519 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002520 "subnetwork": "A String", # The name of the Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -07002521 # [subnetwork](https://cloud.google.com/compute/docs/subnetworks) to which
2522 # the cluster is connected. On output this shows the subnetwork ID instead of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002523 # the name.
2524 "resourceLabels": { # The resource labels for the cluster to use to annotate any related
2525 # Google Compute Engine resources.
2526 "a_key": "A String",
2527 },
2528 "selfLink": "A String", # [Output only] Server-defined URL for the resource.
Dan O'Mearadd494642020-05-01 07:42:23 -07002529 "initialNodeCount": 42, # The number of nodes to create in this cluster. You must ensure that your
2530 # Compute Engine &lt;a href="/compute/docs/resource-quotas"&gt;resource quota&lt;/a&gt;
2531 # is sufficient for this number of instances. You must also have available
2532 # firewall and routes quota.
2533 # For requests, this field should only be used in lieu of a
2534 # "node_pool" object, since this configuration (along with the
2535 # "node_config") will be used to create a "NodePool" object with an
2536 # auto-generated name. Do not use this and a node_pool at the same time.
2537 #
2538 # This field is deprecated, use node_pool.initial_node_count instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002539 }</pre>
2540</div>
2541
2542<div class="method">
2543 <code class="details" id="getJwks">getJwks(parent, x__xgafv=None)</code>
2544 <pre>Gets the public component of the cluster signing keys in
2545JSON Web Key format.
2546This API is not yet intended for general use, and is not available for all
2547clusters.
2548
2549Args:
2550 parent: string, The cluster (project, location, cluster id) to get keys for. Specified in
2551the format 'projects/*/locations/*/clusters/*'. (required)
2552 x__xgafv: string, V1 error format.
2553 Allowed values
2554 1 - v1 error format
2555 2 - v2 error format
2556
2557Returns:
2558 An object of the form:
2559
2560 { # GetJSONWebKeysResponse is a valid JSON Web Key Set as specififed in rfc 7517
2561 "keys": [ # The public component of the keys used by the cluster to sign token
2562 # requests.
2563 { # Jwk is a JSON Web Key as specified in RFC 7517
2564 "use": "A String", # Permitted uses for the public keys.
Dan O'Mearadd494642020-05-01 07:42:23 -07002565 "e": "A String", # Used for RSA keys.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002566 "kty": "A String", # Key Type.
2567 "alg": "A String", # Algorithm.
2568 "n": "A String", # Used for RSA keys.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002569 "x": "A String", # Used for ECDSA keys.
Dan O'Mearadd494642020-05-01 07:42:23 -07002570 "y": "A String", # Used for ECDSA keys.
2571 "crv": "A String", # Used for ECDSA keys.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002572 "kid": "A String", # Key ID.
2573 },
2574 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07002575 "cacheHeader": { # RFC-2616: cache control support # OnePlatform automatically extracts this field and uses it to set the HTTP
2576 # Cache-Control header.
2577 "age": "A String", # 14.6 response cache age, in seconds since the response is generated
2578 "expires": "A String", # 14.21 response cache expires, in RFC 1123 date format
2579 "directive": "A String", # 14.9 request and response directives
2580 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002581 }</pre>
2582</div>
2583
2584<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07002585 <code class="details" id="list">list(parent, zone=None, projectId=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002586 <pre>Lists all clusters owned by a project in either the specified zone or all
2587zones.
2588
2589Args:
2590 parent: string, The parent (project and location) where the clusters will be listed.
2591Specified in the format 'projects/*/locations/*'.
2592Location "-" matches all zones and all regions. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07002593 zone: string, Required. Deprecated. The name of the Google Compute Engine
2594[zone](https://cloud.google.com/compute/docs/zones#available) in which the
2595cluster resides, or "-" for all zones. This field has been deprecated and
2596replaced by the parent field.
2597 projectId: string, Required. Deprecated. The Google Developers Console [project ID or project
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002598number](https://support.google.com/cloud/answer/6158840).
2599This field has been deprecated and replaced by the parent field.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002600 x__xgafv: string, V1 error format.
2601 Allowed values
2602 1 - v1 error format
2603 2 - v2 error format
2604
2605Returns:
2606 An object of the form:
2607
2608 { # ListClustersResponse is the result of ListClustersRequest.
2609 "clusters": [ # A list of clusters in the project in the specified zone, or
2610 # across all ones.
2611 { # A Google Kubernetes Engine cluster.
2612 "nodeIpv4CidrSize": 42, # [Output only] The size of the address space on each node for hosting
2613 # containers. This is provisioned from within the `container_ipv4_cidr`
2614 # range. This field will only be set when cluster is in route-based network
2615 # mode.
2616 "maintenancePolicy": { # MaintenancePolicy defines the maintenance policy to be used for the cluster. # Configure the maintenance policy for this cluster.
2617 "window": { # MaintenanceWindow defines the maintenance window to be used for the cluster. # Specifies the maintenance window in which maintenance may be performed.
Dan O'Mearadd494642020-05-01 07:42:23 -07002618 "recurringWindow": { # Represents an arbitrary window of time that recurs. # RecurringWindow specifies some number of recurring time periods for
2619 # maintenance to occur. The time windows may be overlapping. If no
2620 # maintenance windows are set, maintenance can occur at any time.
2621 "recurrence": "A String", # An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how
2622 # this window reccurs. They go on for the span of time between the start and
2623 # end time.
2624 #
2625 # For example, to have something repeat every weekday, you'd use:
2626 # &lt;code&gt;FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR&lt;/code&gt;
2627 # To repeat some window daily (equivalent to the DailyMaintenanceWindow):
2628 # &lt;code&gt;FREQ=DAILY&lt;/code&gt;
2629 # For the first weekend of every month:
2630 # &lt;code&gt;FREQ=MONTHLY;BYSETPOS=1;BYDAY=SA,SU&lt;/code&gt;
2631 # This specifies how frequently the window starts. Eg, if you wanted to have
2632 # a 9-5 UTC-4 window every weekday, you'd use something like:
2633 # &lt;code&gt;
2634 # start time = 2019-01-01T09:00:00-0400
2635 # end time = 2019-01-01T17:00:00-0400
2636 # recurrence = FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR
2637 # &lt;/code&gt;
2638 # Windows can span multiple days. Eg, to make the window encompass every
2639 # weekend from midnight Saturday till the last minute of Sunday UTC:
2640 # &lt;code&gt;
2641 # start time = 2019-01-05T00:00:00Z
2642 # end time = 2019-01-07T23:59:00Z
2643 # recurrence = FREQ=WEEKLY;BYDAY=SA
2644 # &lt;/code&gt;
2645 # Note the start and end time's specific dates are largely arbitrary except
2646 # to specify duration of the window and when it first starts.
2647 # The FREQ values of HOURLY, MINUTELY, and SECONDLY are not supported.
2648 "window": { # Represents an arbitrary window of time. # The window of the first recurrence.
2649 "endTime": "A String", # The time that the window ends. The end time should take place after the
2650 # start time.
2651 "startTime": "A String", # The time that the window first starts.
2652 },
2653 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002654 "dailyMaintenanceWindow": { # Time window specified for daily maintenance operations. # DailyMaintenanceWindow specifies a daily maintenance operation window.
2655 "duration": "A String", # [Output only] Duration of the time window, automatically chosen to be
2656 # smallest possible in the given scenario.
2657 "startTime": "A String", # Time within the maintenance window to start the maintenance operations.
2658 # It must be in format "HH:MM", where HH : [00-23] and MM : [00-59] GMT.
2659 },
Dan O'Mearadd494642020-05-01 07:42:23 -07002660 "maintenanceExclusions": { # Exceptions to maintenance window. Non-emergency maintenance should not
2661 # occur in these windows.
2662 "a_key": { # Represents an arbitrary window of time.
2663 "endTime": "A String", # The time that the window ends. The end time should take place after the
2664 # start time.
2665 "startTime": "A String", # The time that the window first starts.
2666 },
2667 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002668 },
Dan O'Mearadd494642020-05-01 07:42:23 -07002669 "resourceVersion": "A String", # A hash identifying the version of this policy, so that updates to fields of
2670 # the policy won't accidentally undo intermediate changes (and so that users
2671 # of the API unaware of some fields won't accidentally remove other fields).
2672 # Make a &lt;code&gt;get()&lt;/code&gt; request to the cluster to get the current
2673 # resource version and include it with requests to set the policy.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002674 },
2675 "networkPolicy": { # Configuration options for the NetworkPolicy feature. # Configuration options for the NetworkPolicy feature.
2676 # https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
2677 "enabled": True or False, # Whether network policy is enabled on the cluster.
2678 "provider": "A String", # The selected network policy provider.
2679 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002680 "masterAuthorizedNetworksConfig": { # Configuration options for the master authorized networks feature. Enabled # The configuration options for master authorized networks feature.
2681 # master authorized networks will disallow all external traffic to access
2682 # Kubernetes master through HTTPS except traffic from the given CIDR blocks,
2683 # Google Compute Engine Public IPs and Google Prod IPs.
2684 "enabled": True or False, # Whether or not master authorized networks is enabled.
2685 "cidrBlocks": [ # cidr_blocks define up to 10 external networks that could access
2686 # Kubernetes master through HTTPS.
2687 { # CidrBlock contains an optional name and one CIDR block.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002688 "cidrBlock": "A String", # cidr_block must be specified in CIDR notation.
Dan O'Mearadd494642020-05-01 07:42:23 -07002689 "displayName": "A String", # display_name is an optional field for users to identify CIDR blocks.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002690 },
2691 ],
2692 },
2693 "addonsConfig": { # Configuration for the addons that can be automatically spun up in the # Configurations for the various addons available to run in the cluster.
2694 # cluster, enabling additional functionality.
2695 "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
2696 # is enabled or not on the Master, it does not track whether network policy
2697 # is enabled for the nodes.
2698 # is enabled or not on the Master, it does not track whether network policy
2699 # is enabled for the nodes.
2700 "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
2701 },
2702 "cloudRunConfig": { # Configuration options for the Cloud Run feature. # Configuration for the Cloud Run addon. The `IstioConfig` addon must be
2703 # enabled in order to enable Cloud Run addon. This option can only be enabled
2704 # at cluster creation time.
2705 "disabled": True or False, # Whether Cloud Run addon is enabled for this cluster.
2706 },
2707 "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
2708 # makes it easy to set up HTTP load balancers for services in a cluster.
2709 # which makes it easy to set up HTTP load balancers for services in a cluster.
2710 "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
2711 # When enabled, it runs a small pod in the cluster that manages the load
2712 # balancers.
2713 },
Dan O'Mearadd494642020-05-01 07:42:23 -07002714 "kalmConfig": { # Configuration options for the KALM addon. # Configuration for the KALM addon, which manages the lifecycle of k8s
2715 # applications.
2716 "enabled": True or False, # Whether KALM is enabled for this cluster.
2717 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002718 "horizontalPodAutoscaling": { # Configuration options for the horizontal pod autoscaling feature, which # Configuration for the horizontal pod autoscaling feature, which
2719 # increases or decreases the number of replica pods a replication controller
2720 # has based on the resource usage of the existing pods.
2721 # increases or decreases the number of replica pods a replication controller
2722 # has based on the resource usage of the existing pods.
2723 "disabled": True or False, # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -07002724 # When enabled, it ensures that metrics are collected into Stackdriver
2725 # Monitoring.
2726 },
2727 "gcePersistentDiskCsiDriverConfig": { # Configuration for the Compute Engine PD CSI driver. This option can only be # Configuration for the Compute Engine Persistent Disk CSI driver.
2728 # enabled at cluster creation time.
2729 "enabled": True or False, # Whether the Compute Engine PD CSI driver is enabled for this cluster.
2730 },
2731 "configConnectorConfig": { # Configuration options for the Config Connector add-on. # Configuration for the ConfigConnector add-on, a Kubernetes
2732 # extension to manage hosted GCP services through the Kubernetes API
2733 "enabled": True or False, # Whether Cloud Connector is enabled for this cluster.
2734 },
2735 "dnsCacheConfig": { # Configuration for NodeLocal DNSCache # Configuration for NodeLocalDNS, a dns cache running on cluster nodes
2736 "enabled": True or False, # Whether NodeLocal DNSCache is enabled for this cluster.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002737 },
2738 "istioConfig": { # Configuration options for Istio addon. # Configuration for Istio, an open platform to connect, manage, and secure
2739 # microservices.
2740 "disabled": True or False, # Whether Istio is enabled for this cluster.
2741 "auth": "A String", # The specified Istio auth mode, either none, or mutual TLS.
2742 },
2743 "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
2744 # This addon is deprecated, and will be disabled in 1.15. It is recommended
2745 # to use the Cloud Console to manage and monitor your Kubernetes clusters,
2746 # workloads and applications. For more information, see:
2747 # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
2748 "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
2749 },
2750 },
2751 "locations": [ # The list of Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -07002752 # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
2753 # cluster's nodes should be located.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002754 "A String",
2755 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07002756 "enableKubernetesAlpha": True or False, # Kubernetes alpha features are enabled on this cluster. This includes alpha
2757 # API groups (e.g. v1beta1) and features that may not be production ready in
2758 # the kubernetes version of the master and nodes.
2759 # The cluster has no SLA for uptime and master/node upgrades are disabled.
2760 # Alpha enabled clusters are automatically deleted thirty days after
2761 # creation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002762 "enableTpu": True or False, # Enable the ability to use Cloud TPUs in this cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -07002763 # This field is deprecated, use tpu_config.enabled instead.
2764 "releaseChannel": { # ReleaseChannel indicates which release channel a cluster is # Release channel configuration.
2765 # subscribed to. Release channels are arranged in order of risk and
2766 # frequency of updates.
2767 #
2768 # When a cluster is subscribed to a release channel, Google maintains
2769 # both the master version and the node version. Node auto-upgrade
2770 # defaults to true and cannot be disabled. Updates to version related
2771 # fields (e.g. current_master_version) return an error.
2772 "channel": "A String", # channel specifies which release channel the cluster is subscribed to.
2773 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002774 "defaultMaxPodsConstraint": { # Constraints applied to pods. # The default constraint on the maximum number of pods that can be run
2775 # simultaneously on a node in the node pool of this cluster. Only honored
2776 # if cluster created with IP Alias support.
2777 "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
2778 },
Dan O'Mearadd494642020-05-01 07:42:23 -07002779 "network": "A String", # The name of the Google Compute Engine
2780 # [network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
2781 # to which the cluster is connected. If left unspecified, the `default`
2782 # network will be used. On output this shows the network ID instead of the
2783 # name.
2784 "loggingService": "A String", # The logging service the cluster should use to write logs.
2785 # Currently available options:
2786 #
2787 # * `logging.googleapis.com/kubernetes` - The Cloud Logging
2788 # service with a Kubernetes-native resource model
2789 # * `logging.googleapis.com` - The legacy Cloud Logging service (no longer
2790 # available as of GKE 1.15).
2791 # * `none` - no logs will be exported from the cluster.
2792 #
2793 # If left as an empty string,`logging.googleapis.com/kubernetes` will be
2794 # used for GKE 1.14+ or `logging.googleapis.com` for earlier versions.
2795 "instanceGroupUrls": [ # Deprecated. Use node_pools.instance_group_urls.
2796 "A String",
2797 ],
2798 "networkConfig": { # NetworkConfig reports the relative names of network &amp; subnetwork. # Configuration for cluster networking.
2799 "subnetwork": "A String", # Output only. The relative name of the Google Compute Engine
2800 # [subnetwork](https://cloud.google.com/compute/docs/vpc) to which the
2801 # cluster is connected. Example:
2802 # projects/my-project/regions/us-central1/subnetworks/my-subnet
2803 "network": "A String", # Output only. The relative name of the Google Compute Engine
2804 # network(https://cloud.google.com/compute/docs/networks-and-firewalls#networks)
2805 # to which the cluster is connected. Example:
2806 # projects/my-project/global/networks/my-network
2807 "enableIntraNodeVisibility": True or False, # Whether Intra-node visibility is enabled for this cluster.
2808 # This makes same node pod to pod traffic visible for VPC network.
2809 },
2810 "privateCluster": True or False, # If this is a private cluster setup. Private clusters are clusters that, by
2811 # default have no external IP addresses on the nodes and where nodes and the
2812 # master communicate over private IP addresses.
2813 # This field is deprecated, use private_cluster_config.enable_private_nodes
2814 # instead.
2815 "podSecurityPolicyConfig": { # Configuration for the PodSecurityPolicy feature. # Configuration for the PodSecurityPolicy feature.
2816 "enabled": True or False, # Enable the PodSecurityPolicy controller for this cluster. If enabled, pods
2817 # must be valid under a PodSecurityPolicy to be created.
2818 },
2819 "shieldedNodes": { # Configuration of Shielded Nodes feature. # Shielded Nodes configuration.
2820 "enabled": True or False, # Whether Shielded Nodes features are enabled on all nodes in this cluster.
2821 },
2822 "location": "A String", # [Output only] The name of the Google Compute Engine
2823 # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
2824 # or
2825 # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
2826 # in which the cluster resides.
2827 "workloadIdentityConfig": { # Configuration for the use of Kubernetes Service Accounts in GCP IAM # Configuration for the use of Kubernetes Service Accounts in GCP IAM
2828 # policies.
2829 # policies.
2830 "workloadPool": "A String", # The workload pool to attach all Kubernetes service accounts to.
2831 "identityNamespace": "A String", # IAM Identity Namespace to attach all Kubernetes Service Accounts to.
2832 },
2833 "resourceUsageExportConfig": { # Configuration for exporting cluster resource usages. # Configuration for exporting resource usages. Resource usage export is
2834 # disabled when this config unspecified.
2835 "bigqueryDestination": { # Parameters for using BigQuery as the destination of resource usage export. # Configuration to use BigQuery as usage export destination.
2836 "datasetId": "A String", # The ID of a BigQuery Dataset.
2837 },
2838 "enableNetworkEgressMetering": True or False, # Whether to enable network egress metering for this cluster. If enabled, a
2839 # daemonset will be created in the cluster to meter network egress traffic.
2840 "consumptionMeteringConfig": { # Parameters for controlling consumption metering. # Configuration to enable resource consumption metering.
2841 "enabled": True or False, # Whether to enable consumption metering for this cluster. If enabled, a
2842 # second BigQuery table will be created to hold resource consumption
2843 # records.
2844 },
2845 },
2846 "privateClusterConfig": { # Configuration options for private clusters. # Configuration for private cluster.
2847 "enablePrivateEndpoint": True or False, # Whether the master's internal IP address is used as the cluster endpoint.
2848 "publicEndpoint": "A String", # Output only. The external IP address of this cluster's master endpoint.
2849 "masterGlobalAccessConfig": { # Configuration for controlling master global access settings. # Controls master global access settings.
2850 "enabled": True or False, # Whenever master is accessible globally or not.
2851 },
2852 "enablePrivateNodes": True or False, # Whether nodes have internal IP addresses only. If enabled, all nodes are
2853 # given only RFC 1918 private addresses and communicate with the master via
2854 # private networking.
2855 "privateEndpoint": "A String", # Output only. The internal IP address of this cluster's master endpoint.
2856 "masterIpv4CidrBlock": "A String", # The IP range in CIDR notation to use for the hosted master network. This
2857 # range will be used for assigning internal IP addresses to the master or
2858 # set of masters, as well as the ILB VIP. This range must not overlap with
2859 # any other ranges in use within the cluster's network.
2860 "peeringName": "A String", # Output only. The peering name in the customer VPC used by this cluster.
2861 },
2862 "conditions": [ # Which conditions caused the current cluster state.
2863 { # StatusCondition describes why a cluster or a node pool has a certain status
2864 # (e.g., ERROR or DEGRADED).
2865 "message": "A String", # Human-friendly representation of the condition
2866 "code": "A String", # Machine-friendly representation of the condition
2867 },
2868 ],
2869 "statusMessage": "A String", # [Output only] Additional information about the current status of this
2870 # cluster, if available.
2871 "servicesIpv4Cidr": "A String", # [Output only] The IP address range of the Kubernetes services in
2872 # this cluster, in
2873 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
2874 # notation (e.g. `1.2.3.4/29`). Service addresses are
2875 # typically put in the last `/16` from the container CIDR.
2876 "status": "A String", # [Output only] The current status of this cluster.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002877 "ipAllocationPolicy": { # Configuration for controlling how IPs are allocated in the cluster. # Configuration for cluster IP allocation.
Dan O'Mearadd494642020-05-01 07:42:23 -07002878 "allowRouteOverlap": True or False, # If true, allow allocation of cluster CIDR ranges that overlap with certain
2879 # kinds of network routes. By default we do not allow cluster CIDR ranges to
2880 # intersect with any user declared routes. With allow_route_overlap == true,
2881 # we allow overlapping with CIDR ranges that are larger than the cluster CIDR
2882 # range.
2883 #
2884 # If this field is set to true, then cluster and services CIDRs must be
2885 # fully-specified (e.g. `10.96.0.0/14`, but not `/14`), which means:
2886 # 1) When `use_ip_aliases` is true, `cluster_ipv4_cidr_block` and
2887 # `services_ipv4_cidr_block` must be fully-specified.
2888 # 2) When `use_ip_aliases` is false, `cluster.cluster_ipv4_cidr` muse be
2889 # fully-specified.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002890 "useIpAliases": True or False, # Whether alias IPs will be used for pod IPs in the cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -07002891 # This is used in conjunction with use_routes. It cannot
2892 # be true if use_routes is true. If both use_ip_aliases and use_routes are
2893 # false, then the server picks the default IP allocation mode
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002894 "nodeIpv4Cidr": "A String", # This field is deprecated, use node_ipv4_cidr_block.
2895 "clusterIpv4CidrBlock": "A String", # The IP address range for the cluster pod IPs. If this field is set, then
2896 # `cluster.cluster_ipv4_cidr` must be left blank.
2897 #
2898 # This field is only applicable when `use_ip_aliases` is true.
2899 #
2900 # Set to blank to have a range chosen with the default size.
2901 #
2902 # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
2903 # netmask.
2904 #
2905 # Set to a
2906 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
2907 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
2908 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
2909 # to use.
2910 "clusterSecondaryRangeName": "A String", # The name of the secondary range to be used for the cluster CIDR
2911 # block. The secondary range will be used for pod IP
2912 # addresses. This must be an existing secondary range associated
2913 # with the cluster subnetwork.
2914 #
2915 # This field is only applicable with use_ip_aliases and
2916 # create_subnetwork is false.
2917 "servicesIpv4CidrBlock": "A String", # The IP address range of the services IPs in this cluster. If blank, a range
2918 # will be automatically chosen with the default size.
2919 #
2920 # This field is only applicable when `use_ip_aliases` is true.
2921 #
2922 # Set to blank to have a range chosen with the default size.
2923 #
2924 # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
2925 # netmask.
2926 #
2927 # Set to a
2928 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
2929 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
2930 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
2931 # to use.
2932 "createSubnetwork": True or False, # Whether a new subnetwork will be created automatically for the cluster.
2933 #
2934 # This field is only applicable when `use_ip_aliases` is true.
2935 "nodeIpv4CidrBlock": "A String", # The IP address range of the instance IPs in this cluster.
2936 #
2937 # This is applicable only if `create_subnetwork` is true.
2938 #
2939 # Set to blank to have a range chosen with the default size.
2940 #
2941 # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
2942 # netmask.
2943 #
2944 # Set to a
2945 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
2946 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
2947 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
2948 # to use.
2949 "tpuIpv4CidrBlock": "A String", # The IP address range of the Cloud TPUs in this cluster. If unspecified, a
2950 # range will be automatically chosen with the default size.
2951 #
2952 # This field is only applicable when `use_ip_aliases` is true.
2953 #
2954 # If unspecified, the range will use the default size.
2955 #
2956 # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
2957 # netmask.
2958 #
2959 # Set to a
2960 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
2961 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
2962 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
2963 # to use.
Dan O'Mearadd494642020-05-01 07:42:23 -07002964 # This field is deprecated, use cluster.tpu_config.ipv4_cidr_block instead.
2965 "clusterIpv4Cidr": "A String", # This field is deprecated, use cluster_ipv4_cidr_block.
2966 "useRoutes": True or False, # Whether routes will be used for pod IPs in the cluster.
2967 # This is used in conjunction with use_ip_aliases. It cannot be true if
2968 # use_ip_aliases is true. If both use_ip_aliases and use_routes are false,
2969 # then the server picks the default IP allocation mode
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002970 "subnetworkName": "A String", # A custom subnetwork name to be used if `create_subnetwork` is true. If
2971 # this field is empty, then an automatic name will be chosen for the new
2972 # subnetwork.
2973 "servicesSecondaryRangeName": "A String", # The name of the secondary range to be used as for the services
2974 # CIDR block. The secondary range will be used for service
2975 # ClusterIPs. This must be an existing secondary range associated
2976 # with the cluster subnetwork.
2977 #
2978 # This field is only applicable with use_ip_aliases and
2979 # create_subnetwork is false.
2980 "servicesIpv4Cidr": "A String", # This field is deprecated, use services_ipv4_cidr_block.
2981 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002982 "currentMasterVersion": "A String", # [Output only] The current software version of the master endpoint.
2983 "description": "A String", # An optional description of this cluster.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002984 "currentNodeVersion": "A String", # [Output only] Deprecated, use
Dan O'Mearadd494642020-05-01 07:42:23 -07002985 # [NodePool.version](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1beta1/projects.locations.clusters.nodePools)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002986 # instead. The current version of the node software components.
2987 # If they are currently at multiple versions because they're in the process
2988 # of being upgraded, this reflects the minimum version of all nodes.
2989 "binaryAuthorization": { # Configuration for Binary Authorization. # Configuration for Binary Authorization.
2990 "enabled": True or False, # Enable Binary Authorization for this cluster. If enabled, all container
2991 # images will be validated by Google Binauthz.
2992 },
2993 "labelFingerprint": "A String", # The fingerprint of the set of labels for this cluster.
2994 "autoscaling": { # ClusterAutoscaling contains global, per-cluster information # Cluster-level autoscaling configuration.
2995 # required by Cluster Autoscaler to automatically adjust
2996 # the size of the cluster and create/delete
2997 # node pools based on the current needs.
2998 "autoprovisioningNodePoolDefaults": { # AutoprovisioningNodePoolDefaults contains defaults for a node pool created # AutoprovisioningNodePoolDefaults contains defaults for a node pool
2999 # created by NAP.
3000 # by NAP.
Dan O'Mearadd494642020-05-01 07:42:23 -07003001 "minCpuPlatform": "A String", # Minimum CPU platform to be used for NAP created node pools.
3002 # The instance may be scheduled on the specified or newer CPU platform.
3003 # Applicable values are the friendly names of CPU platforms, such as
3004 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Haswell&amp;quot;&lt;/code&gt; or
3005 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Sandy Bridge&amp;quot;&lt;/code&gt;. For more
3006 # information, read [how to specify min CPU
3007 # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
3008 # To unset the min cpu platform field pass "automatic" as field value.
3009 "management": { # NodeManagement defines the set of node management services turned on for the # Specifies the node management options for NAP created node-pools.
3010 # node pool.
3011 "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
3012 # the Auto Upgrades will proceed.
3013 "description": "A String", # [Output only] This field is set when upgrades are about to commence
3014 # with the description of the upgrade.
3015 "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
3016 # with the approximate start time for the upgrades, in
3017 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3018 },
3019 "autoRepair": True or False, # Whether the nodes will be automatically repaired.
3020 "autoUpgrade": True or False, # Whether the nodes will be automatically upgraded.
3021 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003022 "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If
3023 # service_account is specified, scopes should be empty.
3024 "oauthScopes": [ # Scopes that are used by NAP when creating node pools. If oauth_scopes are
3025 # specified, service_account should be empty.
3026 "A String",
3027 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07003028 "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Specifies the upgrade settings for NAP created node pools
3029 # disruption caused by an upgrade.
3030 #
3031 # maxUnavailable controls the number of nodes that can be simultaneously
3032 # unavailable.
3033 #
3034 # maxSurge controls the number of additional nodes that can be added to the
3035 # node pool temporarily for the time of the upgrade to increase the number of
3036 # available nodes.
3037 #
3038 # (maxUnavailable + maxSurge) determines the level of parallelism (how many
3039 # nodes are being upgraded at the same time).
3040 #
3041 # Note: upgrades inevitably introduce some disruption since workloads need to
3042 # be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
3043 # this holds true. (Disruption stays within the limits of
3044 # PodDisruptionBudget, if it is configured.)
3045 #
3046 # Consider a hypothetical node pool with 5 nodes having maxSurge=2,
3047 # maxUnavailable=1. This means the upgrade process upgrades 3 nodes
3048 # simultaneously. It creates 2 additional (upgraded) nodes, then it brings
3049 # down 3 old (not yet upgraded) nodes at the same time. This ensures that
3050 # there are always at least 4 nodes available.
3051 "maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
3052 # of the node pool during the upgrade process.
3053 "maxUnavailable": 42, # The maximum number of nodes that can be simultaneously unavailable during
3054 # the upgrade process. A node is considered available if its status is
3055 # Ready.
3056 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003057 },
3058 "resourceLimits": [ # Contains global constraints regarding minimum and maximum
3059 # amount of resources in the cluster.
3060 { # Contains information about amount of some resource in the cluster.
3061 # For memory, value should be in GB.
3062 "resourceType": "A String", # Resource name "cpu", "memory" or gpu-specific string.
3063 "minimum": "A String", # Minimum amount of the resource in the cluster.
3064 "maximum": "A String", # Maximum amount of the resource in the cluster.
3065 },
3066 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07003067 "autoprovisioningLocations": [ # The list of Google Compute Engine
3068 # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
3069 # NodePool's nodes can be created by NAP.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003070 "A String",
3071 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07003072 "autoscalingProfile": "A String", # Defines autoscaling behaviour.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003073 "enableNodeAutoprovisioning": True or False, # Enables automatic node pool creation and deletion.
3074 },
3075 "masterAuth": { # The authentication information for accessing the master endpoint. # The authentication information for accessing the master endpoint.
3076 # If unspecified, the defaults are used:
3077 # For clusters before v1.12, if master_auth is unspecified, `username` will
3078 # be set to "admin", a random password will be generated, and a client
3079 # certificate will be issued.
3080 # Authentication can be done using HTTP basic auth or using client
3081 # certificates.
3082 "username": "A String", # The username to use for HTTP basic authentication to the master endpoint.
3083 # For clusters v1.6.0 and later, basic authentication can be disabled by
3084 # leaving username unspecified (or setting it to the empty string).
3085 "clientKey": "A String", # [Output only] Base64-encoded private key used by clients to authenticate
3086 # to the cluster endpoint.
3087 "clientCertificate": "A String", # [Output only] Base64-encoded public certificate used by clients to
3088 # authenticate to the cluster endpoint.
Dan O'Mearadd494642020-05-01 07:42:23 -07003089 "clusterCaCertificate": "A String",
3090 "password": "A String", # The password to use for HTTP basic authentication to the master endpoint.
3091 # Because the master endpoint is open to the Internet, you should create a
3092 # strong password. If a password is provided for cluster creation, username
3093 # must be non-empty.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003094 "clientCertificateConfig": { # Configuration for client certificates on the cluster. # Configuration for client certificate authentication on the cluster. For
3095 # clusters before v1.12, if no configuration is specified, a client
3096 # certificate is issued.
3097 "issueClientCertificate": True or False, # Issue a client certificate.
3098 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003099 },
3100 "expireTime": "A String", # [Output only] The time the cluster will be automatically
3101 # deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
Dan O'Mearadd494642020-05-01 07:42:23 -07003102 "masterIpv4CidrBlock": "A String", # The IP prefix in CIDR notation to use for the hosted master network.
3103 # This prefix will be used for assigning private IP addresses to the
3104 # master or set of masters, as well as the ILB VIP.
3105 # This field is deprecated, use
3106 # private_cluster_config.master_ipv4_cidr_block instead.
3107 "clusterTelemetry": { # Telemetry integration for the cluster. # Telemetry integration for the cluster.
3108 "type": "A String", # Type of the integration.
3109 },
3110 "tpuIpv4CidrBlock": "A String", # [Output only] The IP address range of the Cloud TPUs in this cluster, in
3111 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
3112 # notation (e.g. `1.2.3.4/29`).
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003113 "nodePools": [ # The node pools associated with this cluster.
3114 # This field should not be set if "node_config" or "initial_node_count" are
3115 # specified.
3116 { # NodePool contains the name and configuration for a cluster's node pool.
3117 # Node pools are a set of nodes (i.e. VM's), with a common configuration and
3118 # specification, under the control of the cluster master. They may have a set
3119 # of Kubernetes labels applied to them, which may be used to reference them
3120 # during pod scheduling. They may also be resized up or down, to accommodate
3121 # the workload.
3122 "status": "A String", # [Output only] The status of the nodes in this pool instance.
Dan O'Mearadd494642020-05-01 07:42:23 -07003123 "selfLink": "A String", # [Output only] Server-defined URL for the resource.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003124 "management": { # NodeManagement defines the set of node management services turned on for the # NodeManagement configuration for this NodePool.
3125 # node pool.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003126 "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
3127 # the Auto Upgrades will proceed.
3128 "description": "A String", # [Output only] This field is set when upgrades are about to commence
3129 # with the description of the upgrade.
3130 "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
3131 # with the approximate start time for the upgrades, in
3132 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3133 },
Dan O'Mearadd494642020-05-01 07:42:23 -07003134 "autoRepair": True or False, # Whether the nodes will be automatically repaired.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003135 "autoUpgrade": True or False, # Whether the nodes will be automatically upgraded.
3136 },
3137 "name": "A String", # The name of the node pool.
Dan O'Mearadd494642020-05-01 07:42:23 -07003138 "conditions": [ # Which conditions caused the current node pool state.
3139 { # StatusCondition describes why a cluster or a node pool has a certain status
3140 # (e.g., ERROR or DEGRADED).
3141 "message": "A String", # Human-friendly representation of the condition
3142 "code": "A String", # Machine-friendly representation of the condition
3143 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003144 ],
3145 "autoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for this NodePool. Autoscaler is enabled
3146 # only if a valid configuration is present.
3147 # adjust the size of the node pool to the current cluster usage.
Dan O'Mearadd494642020-05-01 07:42:23 -07003148 "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be &gt;= 1 and &lt;=
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003149 # max_node_count.
3150 "autoprovisioned": True or False, # Can this node pool be deleted automatically.
3151 "enabled": True or False, # Is autoscaling enabled for this node pool.
Dan O'Mearadd494642020-05-01 07:42:23 -07003152 "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be &gt;= min_node_count. There
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003153 # has to enough quota to scale up the cluster.
3154 },
Dan O'Mearadd494642020-05-01 07:42:23 -07003155 "locations": [ # The list of Google Compute Engine
3156 # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
3157 # NodePool's nodes should be located.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003158 "A String",
3159 ],
3160 "maxPodsConstraint": { # Constraints applied to pods. # The constraint on the maximum number of pods that can be run
3161 # simultaneously on a node in the node pool.
3162 "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
3163 },
3164 "version": "A String", # The version of the Kubernetes of this node.
Dan O'Mearadd494642020-05-01 07:42:23 -07003165 "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Upgrade settings control disruption and speed of the upgrade.
3166 # disruption caused by an upgrade.
3167 #
3168 # maxUnavailable controls the number of nodes that can be simultaneously
3169 # unavailable.
3170 #
3171 # maxSurge controls the number of additional nodes that can be added to the
3172 # node pool temporarily for the time of the upgrade to increase the number of
3173 # available nodes.
3174 #
3175 # (maxUnavailable + maxSurge) determines the level of parallelism (how many
3176 # nodes are being upgraded at the same time).
3177 #
3178 # Note: upgrades inevitably introduce some disruption since workloads need to
3179 # be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
3180 # this holds true. (Disruption stays within the limits of
3181 # PodDisruptionBudget, if it is configured.)
3182 #
3183 # Consider a hypothetical node pool with 5 nodes having maxSurge=2,
3184 # maxUnavailable=1. This means the upgrade process upgrades 3 nodes
3185 # simultaneously. It creates 2 additional (upgraded) nodes, then it brings
3186 # down 3 old (not yet upgraded) nodes at the same time. This ensures that
3187 # there are always at least 4 nodes available.
3188 "maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
3189 # of the node pool during the upgrade process.
3190 "maxUnavailable": 42, # The maximum number of nodes that can be simultaneously unavailable during
3191 # the upgrade process. A node is considered available if its status is
3192 # Ready.
3193 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003194 "initialNodeCount": 42, # The initial node count for the pool. You must ensure that your
Dan O'Mearadd494642020-05-01 07:42:23 -07003195 # Compute Engine &lt;a href="/compute/docs/resource-quotas"&gt;resource quota&lt;/a&gt;
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003196 # is sufficient for this number of instances. You must also have available
3197 # firewall and routes quota.
3198 "podIpv4CidrSize": 42, # [Output only] The pod CIDR block size per node in this node pool.
Dan O'Mearadd494642020-05-01 07:42:23 -07003199 "instanceGroupUrls": [ # [Output only] The resource URLs of the [managed instance
3200 # groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
3201 # associated with this node pool.
3202 "A String",
3203 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003204 "config": { # Parameters that describe the nodes in a cluster. # The node configuration of the pool.
Dan O'Mearadd494642020-05-01 07:42:23 -07003205 "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
3206 # the specified [Zonal Compute
3207 # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
3208 # to this node pool.
3209 # is the configuration of desired reservation which instances could take
3210 # capacity from.
3211 "values": [ # Corresponds to the label value(s) of reservation resource(s).
3212 "A String",
3213 ],
3214 "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
3215 "key": "A String", # Corresponds to the label key of a reservation resource. To target a
3216 # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
3217 # the key and specify the name of your reservation as its value.
3218 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003219 "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
Dan O'Mearadd494642020-05-01 07:42:23 -07003220 "type": "A String", # Type of the sandbox to use for the node.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003221 "sandboxType": "A String", # Type of the sandbox to use for the node (e.g. 'gvisor')
3222 },
3223 "machineType": "A String", # The name of a Google Compute Engine [machine
Dan O'Mearadd494642020-05-01 07:42:23 -07003224 # type](https://cloud.google.com/compute/docs/machine-types) (e.g.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003225 # `n1-standard-1`).
3226 #
3227 # If unspecified, the default machine type is
3228 # `n1-standard-1`.
3229 "shieldedInstanceConfig": { # A set of Shielded Instance options. # Shielded Instance options.
3230 "enableIntegrityMonitoring": True or False, # Defines whether the instance has integrity monitoring enabled.
3231 #
3232 # Enables monitoring and attestation of the boot integrity of the instance.
3233 # The attestation is performed against the integrity policy baseline. This
3234 # baseline is initially derived from the implicitly trusted boot image when
3235 # the instance is created.
3236 "enableSecureBoot": True or False, # Defines whether the instance has Secure Boot enabled.
3237 #
3238 # Secure Boot helps ensure that the system only runs authentic software by
3239 # verifying the digital signature of all boot components, and halting the
3240 # boot process if signature verification fails.
3241 },
3242 "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
3243 #
3244 # If unspecified, the default disk type is 'pd-standard'
3245 "tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
3246 # valid sources or targets for network firewalls and are specified by
3247 # the client during cluster or node pool creation. Each tag within the list
3248 # must comply with RFC1035.
3249 "A String",
3250 ],
3251 "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
3252 # https://cloud.google.com/compute/docs/instances/preemptible for more
3253 # inforamtion about preemptible VM instances.
3254 "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
3255 # These will added in addition to any default label(s) that
3256 # Kubernetes may apply to the node.
3257 # In case of conflict in label keys, the applied set may differ depending on
3258 # the Kubernetes version -- it's best to assume the behavior is undefined
3259 # and conflicts should be avoided.
3260 # For more information, including usage and the valid values, see:
3261 # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
3262 "a_key": "A String",
3263 },
Dan O'Mearadd494642020-05-01 07:42:23 -07003264 "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
3265 # Specify the email address of the Service Account; otherwise, if no Service
3266 # Account is specified, the "default" service account is used.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003267 "oauthScopes": [ # The set of Google API scopes to be made available on all of the
3268 # node VMs under the "default" service account.
3269 #
3270 # The following scopes are recommended, but not required, and by default are
3271 # not included:
3272 #
3273 # * `https://www.googleapis.com/auth/compute` is required for mounting
3274 # persistent storage on your nodes.
3275 # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
3276 # communicating with **gcr.io**
Dan O'Mearadd494642020-05-01 07:42:23 -07003277 # (the [Google Container
3278 # Registry](https://cloud.google.com/container-registry/)).
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003279 #
3280 # If unspecified, no scopes are added, unless Cloud Logging or Cloud
3281 # Monitoring are enabled, in which case their required scopes will be added.
3282 "A String",
3283 ],
3284 "taints": [ # List of kubernetes taints to be applied to each node.
3285 #
3286 # For more information, including usage and the valid values, see:
3287 # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
3288 { # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
3289 # can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute.
3290 #
3291 # For more information, including usage and the valid values, see:
3292 # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
Dan O'Mearadd494642020-05-01 07:42:23 -07003293 "value": "A String", # Value for taint.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003294 "key": "A String", # Key for taint.
3295 "effect": "A String", # Effect for taint.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003296 },
3297 ],
3298 "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
3299 # workloads on the node pool.
Dan O'Mearadd494642020-05-01 07:42:23 -07003300 "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
3301 # on the node pool.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003302 "nodeMetadata": "A String", # NodeMetadata is the configuration for how to expose metadata to the
3303 # workloads running on the node.
3304 },
3305 "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
3306 # The smallest allowed disk size is 10GB.
3307 #
3308 # If unspecified, the default disk size is 100GB.
3309 "accelerators": [ # A list of hardware accelerators to be attached to each node.
3310 # See https://cloud.google.com/compute/docs/gpus for more information about
3311 # support for GPUs.
3312 { # AcceleratorConfig represents a Hardware Accelerator request.
3313 "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
3314 "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
Dan O'Mearadd494642020-05-01 07:42:23 -07003315 # [here](https://cloud.google.com/compute/docs/gpus)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003316 },
3317 ],
3318 "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
3319 # scheduled on the specified or newer CPU platform. Applicable values are the
3320 # friendly names of CPU platforms, such as
Dan O'Mearadd494642020-05-01 07:42:23 -07003321 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Haswell&amp;quot;&lt;/code&gt; or
3322 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Sandy Bridge&amp;quot;&lt;/code&gt;. For more
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003323 # information, read [how to specify min CPU
3324 # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
Dan O'Mearadd494642020-05-01 07:42:23 -07003325 "bootDiskKmsKey": "A String", #
3326 # The Customer Managed Encryption Key used to encrypt the boot disk attached
3327 # to each node in the node pool. This should be of the form
3328 # projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
3329 # For more information about protecting resources with Cloud KMS Keys please
3330 # see:
3331 # https://cloud.google.com/compute/docs/disks/customer-managed-encryption
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003332 "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
3333 #
Dan O'Mearadd494642020-05-01 07:42:23 -07003334 # The limit for this value is dependent upon the maximum number of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003335 # disks available on a machine per zone. See:
Dan O'Mearadd494642020-05-01 07:42:23 -07003336 # https://cloud.google.com/compute/docs/disks/local-ssd
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003337 # for more information.
3338 "imageType": "A String", # The image type to use for this node. Note that for a given image type,
3339 # the latest version of it will be used.
3340 "metadata": { # The metadata key/value pairs assigned to instances in the cluster.
3341 #
3342 # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
3343 # in length. These are reflected as part of a URL in the metadata server.
3344 # Additionally, to avoid ambiguity, keys must not conflict with any other
3345 # metadata keys for the project or be one of the reserved keys:
3346 # "cluster-location"
3347 # "cluster-name"
3348 # "cluster-uid"
3349 # "configure-sh"
3350 # "containerd-configure-sh"
3351 # "enable-oslogin"
3352 # "gci-ensure-gke-docker"
Dan O'Mearadd494642020-05-01 07:42:23 -07003353 # "gci-metrics-enabled"
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003354 # "gci-update-strategy"
3355 # "instance-template"
3356 # "kube-env"
3357 # "startup-script"
3358 # "user-data"
3359 # "disable-address-manager"
3360 # "windows-startup-script-ps1"
3361 # "common-psm1"
3362 # "k8s-node-setup-psm1"
3363 # "install-ssh-psm1"
3364 # "user-profile-psm1"
3365 # "serial-port-logging-enable"
3366 # Values are free-form strings, and only have meaning as interpreted by
3367 # the image running in the instance. The only restriction placed on them is
3368 # that each value's size must be less than or equal to 32 KB.
3369 #
3370 # The total size of all keys and values must be less than 512 KB.
3371 "a_key": "A String",
3372 },
3373 },
Dan O'Mearadd494642020-05-01 07:42:23 -07003374 "statusMessage": "A String", # [Output only] Additional information about the current status of this
3375 # node pool instance, if available.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003376 },
3377 ],
3378 "monitoringService": "A String", # The monitoring service the cluster should use to write metrics.
3379 # Currently available options:
3380 #
Dan O'Mearadd494642020-05-01 07:42:23 -07003381 # * "monitoring.googleapis.com/kubernetes" - The Cloud Monitoring
3382 # service with a Kubernetes-native resource model
3383 # * `monitoring.googleapis.com` - The legacy Cloud Monitoring service (no
3384 # longer available as of GKE 1.15).
3385 # * `none` - No metrics will be exported from the cluster.
3386 #
3387 # If left as an empty string,`monitoring.googleapis.com/kubernetes` will be
3388 # used for GKE 1.14+ or `monitoring.googleapis.com` for earlier versions.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003389 "createTime": "A String", # [Output only] The time the cluster was created, in
3390 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
Dan O'Mearadd494642020-05-01 07:42:23 -07003391 "databaseEncryption": { # Configuration of etcd encryption. # Configuration of etcd encryption.
3392 "state": "A String", # Denotes the state of etcd encryption.
3393 "keyName": "A String", # Name of CloudKMS key to use for the encryption of secrets in etcd.
3394 # Ex. projects/my-project/locations/global/keyRings/my-ring/cryptoKeys/my-key
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003395 },
Dan O'Mearadd494642020-05-01 07:42:23 -07003396 "name": "A String", # The name of this cluster. The name must be unique within this project
3397 # and location (e.g. zone or region), and can be up to 40 characters with
3398 # the following restrictions:
3399 #
3400 # * Lowercase letters, numbers, and hyphens only.
3401 # * Must start with a letter.
3402 # * Must end with a number or a letter.
3403 "legacyAbac": { # Configuration for the legacy Attribute Based Access Control authorization # Configuration for the legacy ABAC authorization mode.
3404 # mode.
3405 "enabled": True or False, # Whether the ABAC authorizer is enabled for this cluster. When enabled,
3406 # identities in the system, including service accounts, nodes, and
3407 # controllers, will have statically granted permissions beyond those
3408 # provided by the RBAC configuration or IAM.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003409 },
3410 "endpoint": "A String", # [Output only] The IP address of this cluster's master endpoint.
3411 # The endpoint can be accessed from the internet at
3412 # `https://username:password@endpoint/`.
3413 #
3414 # See the `masterAuth` property of this resource for username and
3415 # password information.
3416 "currentNodeCount": 42, # [Output only] The number of nodes currently in the cluster. Deprecated.
3417 # Call Kubernetes API directly to retrieve node information.
Dan O'Mearadd494642020-05-01 07:42:23 -07003418 "zone": "A String", # [Output only] The name of the Google Compute Engine
3419 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
3420 # cluster resides. This field is deprecated, use location instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003421 "verticalPodAutoscaling": { # VerticalPodAutoscaling contains global, per-cluster information # Cluster-level Vertical Pod Autoscaling configuration.
3422 # required by Vertical Pod Autoscaler to automatically adjust
3423 # the resources of pods controlled by it.
3424 "enabled": True or False, # Enables vertical pod autoscaling.
3425 },
Dan O'Mearadd494642020-05-01 07:42:23 -07003426 "tpuConfig": { # Configuration for Cloud TPU. # Configuration for Cloud TPU support;
3427 "useServiceNetworking": True or False, # Whether to use service networking for Cloud TPU or not.
3428 "ipv4CidrBlock": "A String", # IPv4 CIDR block reserved for Cloud TPU in the VPC.
3429 "enabled": True or False, # Whether Cloud TPU integration is enabled or not.
3430 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003431 "initialClusterVersion": "A String", # The initial Kubernetes version for this cluster. Valid versions are those
3432 # found in validMasterVersions returned by getServerConfig. The version can
3433 # be upgraded over time; such upgrades are reflected in
3434 # currentMasterVersion and currentNodeVersion.
3435 #
3436 # Users may specify either explicit versions offered by
3437 # Kubernetes Engine or version aliases, which have the following behavior:
3438 #
3439 # - "latest": picks the highest valid Kubernetes version
3440 # - "1.X": picks the highest valid patch+gke.N patch in the 1.X version
3441 # - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
3442 # - "1.X.Y-gke.N": picks an explicit Kubernetes version
3443 # - "","-": picks the default Kubernetes version
3444 "nodeConfig": { # Parameters that describe the nodes in a cluster. # Parameters used in creating the cluster's nodes.
3445 # For requests, this field should only be used in lieu of a
3446 # "node_pool" object, since this configuration (along with the
3447 # "initial_node_count") will be used to create a "NodePool" object with an
3448 # auto-generated name. Do not use this and a node_pool at the same time.
3449 # For responses, this field will be populated with the node configuration of
3450 # the first node pool. (For configuration of each node pool, see
3451 # `node_pool.config`)
3452 #
3453 # If unspecified, the defaults are used.
3454 # This field is deprecated, use node_pool.config instead.
Dan O'Mearadd494642020-05-01 07:42:23 -07003455 "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
3456 # the specified [Zonal Compute
3457 # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
3458 # to this node pool.
3459 # is the configuration of desired reservation which instances could take
3460 # capacity from.
3461 "values": [ # Corresponds to the label value(s) of reservation resource(s).
3462 "A String",
3463 ],
3464 "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
3465 "key": "A String", # Corresponds to the label key of a reservation resource. To target a
3466 # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
3467 # the key and specify the name of your reservation as its value.
3468 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003469 "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
Dan O'Mearadd494642020-05-01 07:42:23 -07003470 "type": "A String", # Type of the sandbox to use for the node.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003471 "sandboxType": "A String", # Type of the sandbox to use for the node (e.g. 'gvisor')
3472 },
3473 "machineType": "A String", # The name of a Google Compute Engine [machine
Dan O'Mearadd494642020-05-01 07:42:23 -07003474 # type](https://cloud.google.com/compute/docs/machine-types) (e.g.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003475 # `n1-standard-1`).
3476 #
3477 # If unspecified, the default machine type is
3478 # `n1-standard-1`.
3479 "shieldedInstanceConfig": { # A set of Shielded Instance options. # Shielded Instance options.
3480 "enableIntegrityMonitoring": True or False, # Defines whether the instance has integrity monitoring enabled.
3481 #
3482 # Enables monitoring and attestation of the boot integrity of the instance.
3483 # The attestation is performed against the integrity policy baseline. This
3484 # baseline is initially derived from the implicitly trusted boot image when
3485 # the instance is created.
3486 "enableSecureBoot": True or False, # Defines whether the instance has Secure Boot enabled.
3487 #
3488 # Secure Boot helps ensure that the system only runs authentic software by
3489 # verifying the digital signature of all boot components, and halting the
3490 # boot process if signature verification fails.
3491 },
3492 "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
3493 #
3494 # If unspecified, the default disk type is 'pd-standard'
3495 "tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
3496 # valid sources or targets for network firewalls and are specified by
3497 # the client during cluster or node pool creation. Each tag within the list
3498 # must comply with RFC1035.
3499 "A String",
3500 ],
3501 "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
3502 # https://cloud.google.com/compute/docs/instances/preemptible for more
3503 # inforamtion about preemptible VM instances.
3504 "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
3505 # These will added in addition to any default label(s) that
3506 # Kubernetes may apply to the node.
3507 # In case of conflict in label keys, the applied set may differ depending on
3508 # the Kubernetes version -- it's best to assume the behavior is undefined
3509 # and conflicts should be avoided.
3510 # For more information, including usage and the valid values, see:
3511 # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
3512 "a_key": "A String",
3513 },
Dan O'Mearadd494642020-05-01 07:42:23 -07003514 "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
3515 # Specify the email address of the Service Account; otherwise, if no Service
3516 # Account is specified, the "default" service account is used.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003517 "oauthScopes": [ # The set of Google API scopes to be made available on all of the
3518 # node VMs under the "default" service account.
3519 #
3520 # The following scopes are recommended, but not required, and by default are
3521 # not included:
3522 #
3523 # * `https://www.googleapis.com/auth/compute` is required for mounting
3524 # persistent storage on your nodes.
3525 # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
3526 # communicating with **gcr.io**
Dan O'Mearadd494642020-05-01 07:42:23 -07003527 # (the [Google Container
3528 # Registry](https://cloud.google.com/container-registry/)).
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003529 #
3530 # If unspecified, no scopes are added, unless Cloud Logging or Cloud
3531 # Monitoring are enabled, in which case their required scopes will be added.
3532 "A String",
3533 ],
3534 "taints": [ # List of kubernetes taints to be applied to each node.
3535 #
3536 # For more information, including usage and the valid values, see:
3537 # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
3538 { # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
3539 # can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute.
3540 #
3541 # For more information, including usage and the valid values, see:
3542 # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
Dan O'Mearadd494642020-05-01 07:42:23 -07003543 "value": "A String", # Value for taint.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003544 "key": "A String", # Key for taint.
3545 "effect": "A String", # Effect for taint.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003546 },
3547 ],
3548 "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
3549 # workloads on the node pool.
Dan O'Mearadd494642020-05-01 07:42:23 -07003550 "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
3551 # on the node pool.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003552 "nodeMetadata": "A String", # NodeMetadata is the configuration for how to expose metadata to the
3553 # workloads running on the node.
3554 },
3555 "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
3556 # The smallest allowed disk size is 10GB.
3557 #
3558 # If unspecified, the default disk size is 100GB.
3559 "accelerators": [ # A list of hardware accelerators to be attached to each node.
3560 # See https://cloud.google.com/compute/docs/gpus for more information about
3561 # support for GPUs.
3562 { # AcceleratorConfig represents a Hardware Accelerator request.
3563 "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
3564 "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
Dan O'Mearadd494642020-05-01 07:42:23 -07003565 # [here](https://cloud.google.com/compute/docs/gpus)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003566 },
3567 ],
3568 "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
3569 # scheduled on the specified or newer CPU platform. Applicable values are the
3570 # friendly names of CPU platforms, such as
Dan O'Mearadd494642020-05-01 07:42:23 -07003571 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Haswell&amp;quot;&lt;/code&gt; or
3572 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Sandy Bridge&amp;quot;&lt;/code&gt;. For more
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003573 # information, read [how to specify min CPU
3574 # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
Dan O'Mearadd494642020-05-01 07:42:23 -07003575 "bootDiskKmsKey": "A String", #
3576 # The Customer Managed Encryption Key used to encrypt the boot disk attached
3577 # to each node in the node pool. This should be of the form
3578 # projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
3579 # For more information about protecting resources with Cloud KMS Keys please
3580 # see:
3581 # https://cloud.google.com/compute/docs/disks/customer-managed-encryption
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003582 "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
3583 #
Dan O'Mearadd494642020-05-01 07:42:23 -07003584 # The limit for this value is dependent upon the maximum number of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003585 # disks available on a machine per zone. See:
Dan O'Mearadd494642020-05-01 07:42:23 -07003586 # https://cloud.google.com/compute/docs/disks/local-ssd
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003587 # for more information.
3588 "imageType": "A String", # The image type to use for this node. Note that for a given image type,
3589 # the latest version of it will be used.
3590 "metadata": { # The metadata key/value pairs assigned to instances in the cluster.
3591 #
3592 # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
3593 # in length. These are reflected as part of a URL in the metadata server.
3594 # Additionally, to avoid ambiguity, keys must not conflict with any other
3595 # metadata keys for the project or be one of the reserved keys:
3596 # "cluster-location"
3597 # "cluster-name"
3598 # "cluster-uid"
3599 # "configure-sh"
3600 # "containerd-configure-sh"
3601 # "enable-oslogin"
3602 # "gci-ensure-gke-docker"
Dan O'Mearadd494642020-05-01 07:42:23 -07003603 # "gci-metrics-enabled"
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003604 # "gci-update-strategy"
3605 # "instance-template"
3606 # "kube-env"
3607 # "startup-script"
3608 # "user-data"
3609 # "disable-address-manager"
3610 # "windows-startup-script-ps1"
3611 # "common-psm1"
3612 # "k8s-node-setup-psm1"
3613 # "install-ssh-psm1"
3614 # "user-profile-psm1"
3615 # "serial-port-logging-enable"
3616 # Values are free-form strings, and only have meaning as interpreted by
3617 # the image running in the instance. The only restriction placed on them is
3618 # that each value's size must be less than or equal to 32 KB.
3619 #
3620 # The total size of all keys and values must be less than 512 KB.
3621 "a_key": "A String",
3622 },
3623 },
3624 "clusterIpv4Cidr": "A String", # The IP address range of the container pods in this cluster, in
3625 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
3626 # notation (e.g. `10.96.0.0/14`). Leave blank to have
3627 # one automatically chosen or specify a `/14` block in `10.0.0.0/8`.
Dan O'Mearadd494642020-05-01 07:42:23 -07003628 "authenticatorGroupsConfig": { # Configuration for returning group information from authenticators. # Configuration controlling RBAC group membership information.
3629 "enabled": True or False, # Whether this cluster should return group membership lookups
3630 # during authentication using a group of security groups.
3631 "securityGroup": "A String", # The name of the security group-of-groups to be used. Only relevant
3632 # if enabled = true.
3633 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003634 "subnetwork": "A String", # The name of the Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -07003635 # [subnetwork](https://cloud.google.com/compute/docs/subnetworks) to which
3636 # the cluster is connected. On output this shows the subnetwork ID instead of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003637 # the name.
3638 "resourceLabels": { # The resource labels for the cluster to use to annotate any related
3639 # Google Compute Engine resources.
3640 "a_key": "A String",
3641 },
3642 "selfLink": "A String", # [Output only] Server-defined URL for the resource.
Dan O'Mearadd494642020-05-01 07:42:23 -07003643 "initialNodeCount": 42, # The number of nodes to create in this cluster. You must ensure that your
3644 # Compute Engine &lt;a href="/compute/docs/resource-quotas"&gt;resource quota&lt;/a&gt;
3645 # is sufficient for this number of instances. You must also have available
3646 # firewall and routes quota.
3647 # For requests, this field should only be used in lieu of a
3648 # "node_pool" object, since this configuration (along with the
3649 # "node_config") will be used to create a "NodePool" object with an
3650 # auto-generated name. Do not use this and a node_pool at the same time.
3651 #
3652 # This field is deprecated, use node_pool.initial_node_count instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003653 },
3654 ],
3655 "missingZones": [ # If any zones are listed here, the list of clusters returned
3656 # may be missing those zones.
3657 "A String",
3658 ],
3659 }</pre>
3660</div>
3661
3662<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07003663 <code class="details" id="setAddons">setAddons(name, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003664 <pre>Sets the addons for a specific cluster.
3665
3666Args:
3667 name: string, The name (project, location, cluster) of the cluster to set addons.
3668Specified in the format 'projects/*/locations/*/clusters/*'. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07003669 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003670 The object takes the form of:
3671
3672{ # SetAddonsRequest sets the addons associated with the cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -07003673 "projectId": "A String", # Required. Deprecated. The Google Developers Console [project ID or project
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003674 # number](https://support.google.com/cloud/answer/6158840).
3675 # This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07003676 "addonsConfig": { # Configuration for the addons that can be automatically spun up in the # Required. The desired configurations for the various addons available to run in the
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003677 # cluster.
3678 # cluster, enabling additional functionality.
3679 "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
3680 # is enabled or not on the Master, it does not track whether network policy
3681 # is enabled for the nodes.
3682 # is enabled or not on the Master, it does not track whether network policy
3683 # is enabled for the nodes.
3684 "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
3685 },
3686 "cloudRunConfig": { # Configuration options for the Cloud Run feature. # Configuration for the Cloud Run addon. The `IstioConfig` addon must be
3687 # enabled in order to enable Cloud Run addon. This option can only be enabled
3688 # at cluster creation time.
3689 "disabled": True or False, # Whether Cloud Run addon is enabled for this cluster.
3690 },
3691 "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
3692 # makes it easy to set up HTTP load balancers for services in a cluster.
3693 # which makes it easy to set up HTTP load balancers for services in a cluster.
3694 "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
3695 # When enabled, it runs a small pod in the cluster that manages the load
3696 # balancers.
3697 },
Dan O'Mearadd494642020-05-01 07:42:23 -07003698 "kalmConfig": { # Configuration options for the KALM addon. # Configuration for the KALM addon, which manages the lifecycle of k8s
3699 # applications.
3700 "enabled": True or False, # Whether KALM is enabled for this cluster.
3701 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003702 "horizontalPodAutoscaling": { # Configuration options for the horizontal pod autoscaling feature, which # Configuration for the horizontal pod autoscaling feature, which
3703 # increases or decreases the number of replica pods a replication controller
3704 # has based on the resource usage of the existing pods.
3705 # increases or decreases the number of replica pods a replication controller
3706 # has based on the resource usage of the existing pods.
3707 "disabled": True or False, # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -07003708 # When enabled, it ensures that metrics are collected into Stackdriver
3709 # Monitoring.
3710 },
3711 "gcePersistentDiskCsiDriverConfig": { # Configuration for the Compute Engine PD CSI driver. This option can only be # Configuration for the Compute Engine Persistent Disk CSI driver.
3712 # enabled at cluster creation time.
3713 "enabled": True or False, # Whether the Compute Engine PD CSI driver is enabled for this cluster.
3714 },
3715 "configConnectorConfig": { # Configuration options for the Config Connector add-on. # Configuration for the ConfigConnector add-on, a Kubernetes
3716 # extension to manage hosted GCP services through the Kubernetes API
3717 "enabled": True or False, # Whether Cloud Connector is enabled for this cluster.
3718 },
3719 "dnsCacheConfig": { # Configuration for NodeLocal DNSCache # Configuration for NodeLocalDNS, a dns cache running on cluster nodes
3720 "enabled": True or False, # Whether NodeLocal DNSCache is enabled for this cluster.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003721 },
3722 "istioConfig": { # Configuration options for Istio addon. # Configuration for Istio, an open platform to connect, manage, and secure
3723 # microservices.
3724 "disabled": True or False, # Whether Istio is enabled for this cluster.
3725 "auth": "A String", # The specified Istio auth mode, either none, or mutual TLS.
3726 },
3727 "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
3728 # This addon is deprecated, and will be disabled in 1.15. It is recommended
3729 # to use the Cloud Console to manage and monitor your Kubernetes clusters,
3730 # workloads and applications. For more information, see:
3731 # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
3732 "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
3733 },
3734 },
Dan O'Mearadd494642020-05-01 07:42:23 -07003735 "clusterId": "A String", # Required. Deprecated. The name of the cluster to upgrade.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003736 # This field has been deprecated and replaced by the name field.
3737 "name": "A String", # The name (project, location, cluster) of the cluster to set addons.
3738 # Specified in the format 'projects/*/locations/*/clusters/*'.
Dan O'Mearadd494642020-05-01 07:42:23 -07003739 "zone": "A String", # Required. Deprecated. The name of the Google Compute Engine
3740 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
3741 # cluster resides. This field has been deprecated and replaced by the name
3742 # field.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003743 }
3744
3745 x__xgafv: string, V1 error format.
3746 Allowed values
3747 1 - v1 error format
3748 2 - v2 error format
3749
3750Returns:
3751 An object of the form:
3752
3753 { # This operation resource represents operations that may have happened or are
3754 # happening on the cluster. All fields are output only.
3755 "status": "A String", # The current status of the operation.
Dan O'Mearadd494642020-05-01 07:42:23 -07003756 "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003757 "endTime": "A String", # [Output only] The time the operation completed, in
3758 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3759 "name": "A String", # The server-assigned ID for the operation.
3760 "zone": "A String", # The name of the Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -07003761 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
3762 # operation is taking place. This field is deprecated, use location instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003763 "clusterConditions": [ # Which conditions caused the current cluster state.
3764 { # StatusCondition describes why a cluster or a node pool has a certain status
3765 # (e.g., ERROR or DEGRADED).
3766 "message": "A String", # Human-friendly representation of the condition
3767 "code": "A String", # Machine-friendly representation of the condition
3768 },
3769 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07003770 "startTime": "A String", # [Output only] The time the operation started, in
3771 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3772 "detail": "A String", # Detailed operation progress, if available.
3773 "targetLink": "A String", # Server-defined URL for the target of the operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003774 "operationType": "A String", # The operation type.
Dan O'Mearadd494642020-05-01 07:42:23 -07003775 "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003776 "status": "A String", # Status of an operation stage.
3777 # Unset for single-stage operations.
3778 "metrics": [ # Progress metric bundle, for example:
3779 # metrics: [{name: "nodes done", int_value: 15},
3780 # {name: "nodes total", int_value: 32}]
3781 # or
3782 # metrics: [{name: "progress", double_value: 0.56},
3783 # {name: "progress scale", double_value: 1.0}]
3784 { # Progress metric is (string, int|float|string) pair.
3785 "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
3786 "intValue": "A String", # For metrics with integer value.
Dan O'Mearadd494642020-05-01 07:42:23 -07003787 "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003788 "doubleValue": 3.14, # For metrics with floating point value.
3789 },
3790 ],
3791 "stages": [ # Substages of an operation or a stage.
3792 # Object with schema name: OperationProgress
3793 ],
3794 "name": "A String", # A non-parameterized string describing an operation stage.
3795 # Unset for single-stage operations.
3796 },
3797 "nodepoolConditions": [ # Which conditions caused the current node pool state.
3798 { # StatusCondition describes why a cluster or a node pool has a certain status
3799 # (e.g., ERROR or DEGRADED).
3800 "message": "A String", # Human-friendly representation of the condition
3801 "code": "A String", # Machine-friendly representation of the condition
3802 },
3803 ],
3804 "selfLink": "A String", # Server-defined URL for the resource.
Dan O'Mearadd494642020-05-01 07:42:23 -07003805 "location": "A String", # [Output only] The name of the Google Compute Engine
3806 # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
3807 # or
3808 # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
3809 # in which the cluster resides.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003810 }</pre>
3811</div>
3812
3813<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07003814 <code class="details" id="setLegacyAbac">setLegacyAbac(name, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003815 <pre>Enables or disables the ABAC authorization mechanism on a cluster.
3816
3817Args:
3818 name: string, The name (project, location, cluster id) of the cluster to set legacy abac.
3819Specified in the format 'projects/*/locations/*/clusters/*'. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07003820 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003821 The object takes the form of:
3822
3823{ # SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for
3824 # a cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -07003825 "projectId": "A String", # Required. Deprecated. The Google Developers Console [project ID or project
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003826 # number](https://support.google.com/cloud/answer/6158840).
3827 # This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07003828 "clusterId": "A String", # Required. Deprecated. The name of the cluster to update.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003829 # This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07003830 "enabled": True or False, # Required. Whether ABAC authorization will be enabled in the cluster.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003831 "name": "A String", # The name (project, location, cluster id) of the cluster to set legacy abac.
3832 # Specified in the format 'projects/*/locations/*/clusters/*'.
Dan O'Mearadd494642020-05-01 07:42:23 -07003833 "zone": "A String", # Required. Deprecated. The name of the Google Compute Engine
3834 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
3835 # cluster resides. This field has been deprecated and replaced by the name
3836 # field.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003837 }
3838
3839 x__xgafv: string, V1 error format.
3840 Allowed values
3841 1 - v1 error format
3842 2 - v2 error format
3843
3844Returns:
3845 An object of the form:
3846
3847 { # This operation resource represents operations that may have happened or are
3848 # happening on the cluster. All fields are output only.
3849 "status": "A String", # The current status of the operation.
Dan O'Mearadd494642020-05-01 07:42:23 -07003850 "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003851 "endTime": "A String", # [Output only] The time the operation completed, in
3852 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3853 "name": "A String", # The server-assigned ID for the operation.
3854 "zone": "A String", # The name of the Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -07003855 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
3856 # operation is taking place. This field is deprecated, use location instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003857 "clusterConditions": [ # Which conditions caused the current cluster state.
3858 { # StatusCondition describes why a cluster or a node pool has a certain status
3859 # (e.g., ERROR or DEGRADED).
3860 "message": "A String", # Human-friendly representation of the condition
3861 "code": "A String", # Machine-friendly representation of the condition
3862 },
3863 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07003864 "startTime": "A String", # [Output only] The time the operation started, in
3865 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3866 "detail": "A String", # Detailed operation progress, if available.
3867 "targetLink": "A String", # Server-defined URL for the target of the operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003868 "operationType": "A String", # The operation type.
Dan O'Mearadd494642020-05-01 07:42:23 -07003869 "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003870 "status": "A String", # Status of an operation stage.
3871 # Unset for single-stage operations.
3872 "metrics": [ # Progress metric bundle, for example:
3873 # metrics: [{name: "nodes done", int_value: 15},
3874 # {name: "nodes total", int_value: 32}]
3875 # or
3876 # metrics: [{name: "progress", double_value: 0.56},
3877 # {name: "progress scale", double_value: 1.0}]
3878 { # Progress metric is (string, int|float|string) pair.
3879 "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
3880 "intValue": "A String", # For metrics with integer value.
Dan O'Mearadd494642020-05-01 07:42:23 -07003881 "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003882 "doubleValue": 3.14, # For metrics with floating point value.
3883 },
3884 ],
3885 "stages": [ # Substages of an operation or a stage.
3886 # Object with schema name: OperationProgress
3887 ],
3888 "name": "A String", # A non-parameterized string describing an operation stage.
3889 # Unset for single-stage operations.
3890 },
3891 "nodepoolConditions": [ # Which conditions caused the current node pool state.
3892 { # StatusCondition describes why a cluster or a node pool has a certain status
3893 # (e.g., ERROR or DEGRADED).
3894 "message": "A String", # Human-friendly representation of the condition
3895 "code": "A String", # Machine-friendly representation of the condition
3896 },
3897 ],
3898 "selfLink": "A String", # Server-defined URL for the resource.
Dan O'Mearadd494642020-05-01 07:42:23 -07003899 "location": "A String", # [Output only] The name of the Google Compute Engine
3900 # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
3901 # or
3902 # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
3903 # in which the cluster resides.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003904 }</pre>
3905</div>
3906
3907<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07003908 <code class="details" id="setLocations">setLocations(name, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003909 <pre>Sets the locations for a specific cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -07003910Deprecated. Use
3911[projects.locations.clusters.update](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1beta1/projects.locations.clusters/update)
3912instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003913
3914Args:
3915 name: string, The name (project, location, cluster) of the cluster to set locations.
3916Specified in the format 'projects/*/locations/*/clusters/*'. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07003917 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003918 The object takes the form of:
3919
3920{ # SetLocationsRequest sets the locations of the cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -07003921 "projectId": "A String", # Required. Deprecated. The Google Developers Console [project ID or project
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003922 # number](https://support.google.com/cloud/answer/6158840).
3923 # This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07003924 "clusterId": "A String", # Required. Deprecated. The name of the cluster to upgrade.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003925 # This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07003926 "name": "A String", # The name (project, location, cluster) of the cluster to set locations.
3927 # Specified in the format 'projects/*/locations/*/clusters/*'.
3928 "zone": "A String", # Required. Deprecated. The name of the Google Compute Engine
3929 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
3930 # cluster resides. This field has been deprecated and replaced by the name
3931 # field.
3932 "locations": [ # Required. The desired list of Google Compute Engine
3933 # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
3934 # cluster's nodes should be located. Changing the locations a cluster is in
3935 # will result in nodes being either created or removed from the cluster,
3936 # depending on whether locations are being added or removed.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003937 #
3938 # This list must always include the cluster's primary zone.
3939 "A String",
3940 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003941 }
3942
3943 x__xgafv: string, V1 error format.
3944 Allowed values
3945 1 - v1 error format
3946 2 - v2 error format
3947
3948Returns:
3949 An object of the form:
3950
3951 { # This operation resource represents operations that may have happened or are
3952 # happening on the cluster. All fields are output only.
3953 "status": "A String", # The current status of the operation.
Dan O'Mearadd494642020-05-01 07:42:23 -07003954 "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003955 "endTime": "A String", # [Output only] The time the operation completed, in
3956 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3957 "name": "A String", # The server-assigned ID for the operation.
3958 "zone": "A String", # The name of the Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -07003959 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
3960 # operation is taking place. This field is deprecated, use location instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003961 "clusterConditions": [ # Which conditions caused the current cluster state.
3962 { # StatusCondition describes why a cluster or a node pool has a certain status
3963 # (e.g., ERROR or DEGRADED).
3964 "message": "A String", # Human-friendly representation of the condition
3965 "code": "A String", # Machine-friendly representation of the condition
3966 },
3967 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07003968 "startTime": "A String", # [Output only] The time the operation started, in
3969 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3970 "detail": "A String", # Detailed operation progress, if available.
3971 "targetLink": "A String", # Server-defined URL for the target of the operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003972 "operationType": "A String", # The operation type.
Dan O'Mearadd494642020-05-01 07:42:23 -07003973 "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003974 "status": "A String", # Status of an operation stage.
3975 # Unset for single-stage operations.
3976 "metrics": [ # Progress metric bundle, for example:
3977 # metrics: [{name: "nodes done", int_value: 15},
3978 # {name: "nodes total", int_value: 32}]
3979 # or
3980 # metrics: [{name: "progress", double_value: 0.56},
3981 # {name: "progress scale", double_value: 1.0}]
3982 { # Progress metric is (string, int|float|string) pair.
3983 "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
3984 "intValue": "A String", # For metrics with integer value.
Dan O'Mearadd494642020-05-01 07:42:23 -07003985 "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07003986 "doubleValue": 3.14, # For metrics with floating point value.
3987 },
3988 ],
3989 "stages": [ # Substages of an operation or a stage.
3990 # Object with schema name: OperationProgress
3991 ],
3992 "name": "A String", # A non-parameterized string describing an operation stage.
3993 # Unset for single-stage operations.
3994 },
3995 "nodepoolConditions": [ # Which conditions caused the current node pool state.
3996 { # StatusCondition describes why a cluster or a node pool has a certain status
3997 # (e.g., ERROR or DEGRADED).
3998 "message": "A String", # Human-friendly representation of the condition
3999 "code": "A String", # Machine-friendly representation of the condition
4000 },
4001 ],
4002 "selfLink": "A String", # Server-defined URL for the resource.
Dan O'Mearadd494642020-05-01 07:42:23 -07004003 "location": "A String", # [Output only] The name of the Google Compute Engine
4004 # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
4005 # or
4006 # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
4007 # in which the cluster resides.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004008 }</pre>
4009</div>
4010
4011<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07004012 <code class="details" id="setLogging">setLogging(name, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004013 <pre>Sets the logging service for a specific cluster.
4014
4015Args:
4016 name: string, The name (project, location, cluster) of the cluster to set logging.
4017Specified in the format 'projects/*/locations/*/clusters/*'. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07004018 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004019 The object takes the form of:
4020
4021{ # SetLoggingServiceRequest sets the logging service of a cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -07004022 "projectId": "A String", # Required. Deprecated. The Google Developers Console [project ID or project
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004023 # number](https://support.google.com/cloud/answer/6158840).
4024 # This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07004025 "loggingService": "A String", # Required. The logging service the cluster should use to write logs.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004026 # Currently available options:
4027 #
Dan O'Mearadd494642020-05-01 07:42:23 -07004028 # * `logging.googleapis.com/kubernetes` - The Cloud Logging
4029 # service with a Kubernetes-native resource model
4030 # * `logging.googleapis.com` - The legacy Cloud Logging service (no longer
4031 # available as of GKE 1.15).
4032 # * `none` - no logs will be exported from the cluster.
4033 #
4034 # If left as an empty string,`logging.googleapis.com/kubernetes` will be
4035 # used for GKE 1.14+ or `logging.googleapis.com` for earlier versions.
4036 "clusterId": "A String", # Required. Deprecated. The name of the cluster to upgrade.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004037 # This field has been deprecated and replaced by the name field.
4038 "name": "A String", # The name (project, location, cluster) of the cluster to set logging.
4039 # Specified in the format 'projects/*/locations/*/clusters/*'.
Dan O'Mearadd494642020-05-01 07:42:23 -07004040 "zone": "A String", # Required. Deprecated. The name of the Google Compute Engine
4041 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
4042 # cluster resides. This field has been deprecated and replaced by the name
4043 # field.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004044 }
4045
4046 x__xgafv: string, V1 error format.
4047 Allowed values
4048 1 - v1 error format
4049 2 - v2 error format
4050
4051Returns:
4052 An object of the form:
4053
4054 { # This operation resource represents operations that may have happened or are
4055 # happening on the cluster. All fields are output only.
4056 "status": "A String", # The current status of the operation.
Dan O'Mearadd494642020-05-01 07:42:23 -07004057 "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004058 "endTime": "A String", # [Output only] The time the operation completed, in
4059 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
4060 "name": "A String", # The server-assigned ID for the operation.
4061 "zone": "A String", # The name of the Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -07004062 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
4063 # operation is taking place. This field is deprecated, use location instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004064 "clusterConditions": [ # Which conditions caused the current cluster state.
4065 { # StatusCondition describes why a cluster or a node pool has a certain status
4066 # (e.g., ERROR or DEGRADED).
4067 "message": "A String", # Human-friendly representation of the condition
4068 "code": "A String", # Machine-friendly representation of the condition
4069 },
4070 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07004071 "startTime": "A String", # [Output only] The time the operation started, in
4072 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
4073 "detail": "A String", # Detailed operation progress, if available.
4074 "targetLink": "A String", # Server-defined URL for the target of the operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004075 "operationType": "A String", # The operation type.
Dan O'Mearadd494642020-05-01 07:42:23 -07004076 "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004077 "status": "A String", # Status of an operation stage.
4078 # Unset for single-stage operations.
4079 "metrics": [ # Progress metric bundle, for example:
4080 # metrics: [{name: "nodes done", int_value: 15},
4081 # {name: "nodes total", int_value: 32}]
4082 # or
4083 # metrics: [{name: "progress", double_value: 0.56},
4084 # {name: "progress scale", double_value: 1.0}]
4085 { # Progress metric is (string, int|float|string) pair.
4086 "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
4087 "intValue": "A String", # For metrics with integer value.
Dan O'Mearadd494642020-05-01 07:42:23 -07004088 "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004089 "doubleValue": 3.14, # For metrics with floating point value.
4090 },
4091 ],
4092 "stages": [ # Substages of an operation or a stage.
4093 # Object with schema name: OperationProgress
4094 ],
4095 "name": "A String", # A non-parameterized string describing an operation stage.
4096 # Unset for single-stage operations.
4097 },
4098 "nodepoolConditions": [ # Which conditions caused the current node pool state.
4099 { # StatusCondition describes why a cluster or a node pool has a certain status
4100 # (e.g., ERROR or DEGRADED).
4101 "message": "A String", # Human-friendly representation of the condition
4102 "code": "A String", # Machine-friendly representation of the condition
4103 },
4104 ],
4105 "selfLink": "A String", # Server-defined URL for the resource.
Dan O'Mearadd494642020-05-01 07:42:23 -07004106 "location": "A String", # [Output only] The name of the Google Compute Engine
4107 # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
4108 # or
4109 # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
4110 # in which the cluster resides.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004111 }</pre>
4112</div>
4113
4114<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07004115 <code class="details" id="setMaintenancePolicy">setMaintenancePolicy(name, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004116 <pre>Sets the maintenance policy for a cluster.
4117
4118Args:
4119 name: string, The name (project, location, cluster id) of the cluster to set maintenance
4120policy.
4121Specified in the format 'projects/*/locations/*/clusters/*'. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07004122 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004123 The object takes the form of:
4124
4125{ # SetMaintenancePolicyRequest sets the maintenance policy for a cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -07004126 "projectId": "A String", # Required. The Google Developers Console [project ID or project
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004127 # number](https://support.google.com/cloud/answer/6158840).
Dan O'Mearadd494642020-05-01 07:42:23 -07004128 "maintenancePolicy": { # MaintenancePolicy defines the maintenance policy to be used for the cluster. # Required. The maintenance policy to be set for the cluster. An empty field
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004129 # clears the existing maintenance policy.
4130 "window": { # MaintenanceWindow defines the maintenance window to be used for the cluster. # Specifies the maintenance window in which maintenance may be performed.
Dan O'Mearadd494642020-05-01 07:42:23 -07004131 "recurringWindow": { # Represents an arbitrary window of time that recurs. # RecurringWindow specifies some number of recurring time periods for
4132 # maintenance to occur. The time windows may be overlapping. If no
4133 # maintenance windows are set, maintenance can occur at any time.
4134 "recurrence": "A String", # An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how
4135 # this window reccurs. They go on for the span of time between the start and
4136 # end time.
4137 #
4138 # For example, to have something repeat every weekday, you'd use:
4139 # &lt;code&gt;FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR&lt;/code&gt;
4140 # To repeat some window daily (equivalent to the DailyMaintenanceWindow):
4141 # &lt;code&gt;FREQ=DAILY&lt;/code&gt;
4142 # For the first weekend of every month:
4143 # &lt;code&gt;FREQ=MONTHLY;BYSETPOS=1;BYDAY=SA,SU&lt;/code&gt;
4144 # This specifies how frequently the window starts. Eg, if you wanted to have
4145 # a 9-5 UTC-4 window every weekday, you'd use something like:
4146 # &lt;code&gt;
4147 # start time = 2019-01-01T09:00:00-0400
4148 # end time = 2019-01-01T17:00:00-0400
4149 # recurrence = FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR
4150 # &lt;/code&gt;
4151 # Windows can span multiple days. Eg, to make the window encompass every
4152 # weekend from midnight Saturday till the last minute of Sunday UTC:
4153 # &lt;code&gt;
4154 # start time = 2019-01-05T00:00:00Z
4155 # end time = 2019-01-07T23:59:00Z
4156 # recurrence = FREQ=WEEKLY;BYDAY=SA
4157 # &lt;/code&gt;
4158 # Note the start and end time's specific dates are largely arbitrary except
4159 # to specify duration of the window and when it first starts.
4160 # The FREQ values of HOURLY, MINUTELY, and SECONDLY are not supported.
4161 "window": { # Represents an arbitrary window of time. # The window of the first recurrence.
4162 "endTime": "A String", # The time that the window ends. The end time should take place after the
4163 # start time.
4164 "startTime": "A String", # The time that the window first starts.
4165 },
4166 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004167 "dailyMaintenanceWindow": { # Time window specified for daily maintenance operations. # DailyMaintenanceWindow specifies a daily maintenance operation window.
4168 "duration": "A String", # [Output only] Duration of the time window, automatically chosen to be
4169 # smallest possible in the given scenario.
4170 "startTime": "A String", # Time within the maintenance window to start the maintenance operations.
4171 # It must be in format "HH:MM", where HH : [00-23] and MM : [00-59] GMT.
4172 },
Dan O'Mearadd494642020-05-01 07:42:23 -07004173 "maintenanceExclusions": { # Exceptions to maintenance window. Non-emergency maintenance should not
4174 # occur in these windows.
4175 "a_key": { # Represents an arbitrary window of time.
4176 "endTime": "A String", # The time that the window ends. The end time should take place after the
4177 # start time.
4178 "startTime": "A String", # The time that the window first starts.
4179 },
4180 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004181 },
Dan O'Mearadd494642020-05-01 07:42:23 -07004182 "resourceVersion": "A String", # A hash identifying the version of this policy, so that updates to fields of
4183 # the policy won't accidentally undo intermediate changes (and so that users
4184 # of the API unaware of some fields won't accidentally remove other fields).
4185 # Make a &lt;code&gt;get()&lt;/code&gt; request to the cluster to get the current
4186 # resource version and include it with requests to set the policy.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004187 },
Dan O'Mearadd494642020-05-01 07:42:23 -07004188 "clusterId": "A String", # Required. The name of the cluster to update.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004189 "name": "A String", # The name (project, location, cluster id) of the cluster to set maintenance
4190 # policy.
4191 # Specified in the format 'projects/*/locations/*/clusters/*'.
Dan O'Mearadd494642020-05-01 07:42:23 -07004192 "zone": "A String", # Required. The name of the Google Compute Engine
4193 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
4194 # cluster resides.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004195 }
4196
4197 x__xgafv: string, V1 error format.
4198 Allowed values
4199 1 - v1 error format
4200 2 - v2 error format
4201
4202Returns:
4203 An object of the form:
4204
4205 { # This operation resource represents operations that may have happened or are
4206 # happening on the cluster. All fields are output only.
4207 "status": "A String", # The current status of the operation.
Dan O'Mearadd494642020-05-01 07:42:23 -07004208 "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004209 "endTime": "A String", # [Output only] The time the operation completed, in
4210 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
4211 "name": "A String", # The server-assigned ID for the operation.
4212 "zone": "A String", # The name of the Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -07004213 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
4214 # operation is taking place. This field is deprecated, use location instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004215 "clusterConditions": [ # Which conditions caused the current cluster state.
4216 { # StatusCondition describes why a cluster or a node pool has a certain status
4217 # (e.g., ERROR or DEGRADED).
4218 "message": "A String", # Human-friendly representation of the condition
4219 "code": "A String", # Machine-friendly representation of the condition
4220 },
4221 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07004222 "startTime": "A String", # [Output only] The time the operation started, in
4223 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
4224 "detail": "A String", # Detailed operation progress, if available.
4225 "targetLink": "A String", # Server-defined URL for the target of the operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004226 "operationType": "A String", # The operation type.
Dan O'Mearadd494642020-05-01 07:42:23 -07004227 "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004228 "status": "A String", # Status of an operation stage.
4229 # Unset for single-stage operations.
4230 "metrics": [ # Progress metric bundle, for example:
4231 # metrics: [{name: "nodes done", int_value: 15},
4232 # {name: "nodes total", int_value: 32}]
4233 # or
4234 # metrics: [{name: "progress", double_value: 0.56},
4235 # {name: "progress scale", double_value: 1.0}]
4236 { # Progress metric is (string, int|float|string) pair.
4237 "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
4238 "intValue": "A String", # For metrics with integer value.
Dan O'Mearadd494642020-05-01 07:42:23 -07004239 "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004240 "doubleValue": 3.14, # For metrics with floating point value.
4241 },
4242 ],
4243 "stages": [ # Substages of an operation or a stage.
4244 # Object with schema name: OperationProgress
4245 ],
4246 "name": "A String", # A non-parameterized string describing an operation stage.
4247 # Unset for single-stage operations.
4248 },
4249 "nodepoolConditions": [ # Which conditions caused the current node pool state.
4250 { # StatusCondition describes why a cluster or a node pool has a certain status
4251 # (e.g., ERROR or DEGRADED).
4252 "message": "A String", # Human-friendly representation of the condition
4253 "code": "A String", # Machine-friendly representation of the condition
4254 },
4255 ],
4256 "selfLink": "A String", # Server-defined URL for the resource.
Dan O'Mearadd494642020-05-01 07:42:23 -07004257 "location": "A String", # [Output only] The name of the Google Compute Engine
4258 # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
4259 # or
4260 # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
4261 # in which the cluster resides.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004262 }</pre>
4263</div>
4264
4265<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07004266 <code class="details" id="setMasterAuth">setMasterAuth(name, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004267 <pre>Sets master auth materials. Currently supports changing the admin password
4268or a specific cluster, either via password generation or explicitly setting
4269the password.
4270
4271Args:
4272 name: string, The name (project, location, cluster) of the cluster to set auth.
4273Specified in the format 'projects/*/locations/*/clusters/*'. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07004274 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004275 The object takes the form of:
4276
4277{ # SetMasterAuthRequest updates the admin password of a cluster.
4278 "name": "A String", # The name (project, location, cluster) of the cluster to set auth.
4279 # Specified in the format 'projects/*/locations/*/clusters/*'.
Dan O'Mearadd494642020-05-01 07:42:23 -07004280 "zone": "A String", # Required. Deprecated. The name of the Google Compute Engine
4281 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
4282 # cluster resides. This field has been deprecated and replaced by the name
4283 # field.
4284 "projectId": "A String", # Required. Deprecated. The Google Developers Console [project ID or project
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004285 # number](https://support.google.com/cloud/answer/6158840).
4286 # This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07004287 "clusterId": "A String", # Required. Deprecated. The name of the cluster to upgrade.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004288 # This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07004289 "update": { # The authentication information for accessing the master endpoint. # Required. A description of the update.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004290 # Authentication can be done using HTTP basic auth or using client
4291 # certificates.
4292 "username": "A String", # The username to use for HTTP basic authentication to the master endpoint.
4293 # For clusters v1.6.0 and later, basic authentication can be disabled by
4294 # leaving username unspecified (or setting it to the empty string).
4295 "clientKey": "A String", # [Output only] Base64-encoded private key used by clients to authenticate
4296 # to the cluster endpoint.
4297 "clientCertificate": "A String", # [Output only] Base64-encoded public certificate used by clients to
4298 # authenticate to the cluster endpoint.
Dan O'Mearadd494642020-05-01 07:42:23 -07004299 "clusterCaCertificate": "A String",
4300 "password": "A String", # The password to use for HTTP basic authentication to the master endpoint.
4301 # Because the master endpoint is open to the Internet, you should create a
4302 # strong password. If a password is provided for cluster creation, username
4303 # must be non-empty.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004304 "clientCertificateConfig": { # Configuration for client certificates on the cluster. # Configuration for client certificate authentication on the cluster. For
4305 # clusters before v1.12, if no configuration is specified, a client
4306 # certificate is issued.
4307 "issueClientCertificate": True or False, # Issue a client certificate.
4308 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004309 },
Dan O'Mearadd494642020-05-01 07:42:23 -07004310 "action": "A String", # Required. The exact form of action to be taken on the master auth.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004311 }
4312
4313 x__xgafv: string, V1 error format.
4314 Allowed values
4315 1 - v1 error format
4316 2 - v2 error format
4317
4318Returns:
4319 An object of the form:
4320
4321 { # This operation resource represents operations that may have happened or are
4322 # happening on the cluster. All fields are output only.
4323 "status": "A String", # The current status of the operation.
Dan O'Mearadd494642020-05-01 07:42:23 -07004324 "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004325 "endTime": "A String", # [Output only] The time the operation completed, in
4326 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
4327 "name": "A String", # The server-assigned ID for the operation.
4328 "zone": "A String", # The name of the Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -07004329 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
4330 # operation is taking place. This field is deprecated, use location instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004331 "clusterConditions": [ # Which conditions caused the current cluster state.
4332 { # StatusCondition describes why a cluster or a node pool has a certain status
4333 # (e.g., ERROR or DEGRADED).
4334 "message": "A String", # Human-friendly representation of the condition
4335 "code": "A String", # Machine-friendly representation of the condition
4336 },
4337 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07004338 "startTime": "A String", # [Output only] The time the operation started, in
4339 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
4340 "detail": "A String", # Detailed operation progress, if available.
4341 "targetLink": "A String", # Server-defined URL for the target of the operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004342 "operationType": "A String", # The operation type.
Dan O'Mearadd494642020-05-01 07:42:23 -07004343 "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004344 "status": "A String", # Status of an operation stage.
4345 # Unset for single-stage operations.
4346 "metrics": [ # Progress metric bundle, for example:
4347 # metrics: [{name: "nodes done", int_value: 15},
4348 # {name: "nodes total", int_value: 32}]
4349 # or
4350 # metrics: [{name: "progress", double_value: 0.56},
4351 # {name: "progress scale", double_value: 1.0}]
4352 { # Progress metric is (string, int|float|string) pair.
4353 "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
4354 "intValue": "A String", # For metrics with integer value.
Dan O'Mearadd494642020-05-01 07:42:23 -07004355 "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004356 "doubleValue": 3.14, # For metrics with floating point value.
4357 },
4358 ],
4359 "stages": [ # Substages of an operation or a stage.
4360 # Object with schema name: OperationProgress
4361 ],
4362 "name": "A String", # A non-parameterized string describing an operation stage.
4363 # Unset for single-stage operations.
4364 },
4365 "nodepoolConditions": [ # Which conditions caused the current node pool state.
4366 { # StatusCondition describes why a cluster or a node pool has a certain status
4367 # (e.g., ERROR or DEGRADED).
4368 "message": "A String", # Human-friendly representation of the condition
4369 "code": "A String", # Machine-friendly representation of the condition
4370 },
4371 ],
4372 "selfLink": "A String", # Server-defined URL for the resource.
Dan O'Mearadd494642020-05-01 07:42:23 -07004373 "location": "A String", # [Output only] The name of the Google Compute Engine
4374 # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
4375 # or
4376 # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
4377 # in which the cluster resides.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004378 }</pre>
4379</div>
4380
4381<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07004382 <code class="details" id="setMonitoring">setMonitoring(name, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004383 <pre>Sets the monitoring service for a specific cluster.
4384
4385Args:
4386 name: string, The name (project, location, cluster) of the cluster to set monitoring.
4387Specified in the format 'projects/*/locations/*/clusters/*'. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07004388 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004389 The object takes the form of:
4390
4391{ # SetMonitoringServiceRequest sets the monitoring service of a cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -07004392 "projectId": "A String", # Required. Deprecated. The Google Developers Console [project ID or project
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004393 # number](https://support.google.com/cloud/answer/6158840).
4394 # This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07004395 "monitoringService": "A String", # Required. The monitoring service the cluster should use to write metrics.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004396 # Currently available options:
4397 #
Dan O'Mearadd494642020-05-01 07:42:23 -07004398 # * "monitoring.googleapis.com/kubernetes" - The Cloud Monitoring
4399 # service with a Kubernetes-native resource model
4400 # * `monitoring.googleapis.com` - The legacy Cloud Monitoring service (no
4401 # longer available as of GKE 1.15).
4402 # * `none` - No metrics will be exported from the cluster.
4403 #
4404 # If left as an empty string,`monitoring.googleapis.com/kubernetes` will be
4405 # used for GKE 1.14+ or `monitoring.googleapis.com` for earlier versions.
4406 "clusterId": "A String", # Required. Deprecated. The name of the cluster to upgrade.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004407 # This field has been deprecated and replaced by the name field.
4408 "name": "A String", # The name (project, location, cluster) of the cluster to set monitoring.
4409 # Specified in the format 'projects/*/locations/*/clusters/*'.
Dan O'Mearadd494642020-05-01 07:42:23 -07004410 "zone": "A String", # Required. Deprecated. The name of the Google Compute Engine
4411 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
4412 # cluster resides. This field has been deprecated and replaced by the name
4413 # field.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004414 }
4415
4416 x__xgafv: string, V1 error format.
4417 Allowed values
4418 1 - v1 error format
4419 2 - v2 error format
4420
4421Returns:
4422 An object of the form:
4423
4424 { # This operation resource represents operations that may have happened or are
4425 # happening on the cluster. All fields are output only.
4426 "status": "A String", # The current status of the operation.
Dan O'Mearadd494642020-05-01 07:42:23 -07004427 "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004428 "endTime": "A String", # [Output only] The time the operation completed, in
4429 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
4430 "name": "A String", # The server-assigned ID for the operation.
4431 "zone": "A String", # The name of the Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -07004432 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
4433 # operation is taking place. This field is deprecated, use location instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004434 "clusterConditions": [ # Which conditions caused the current cluster state.
4435 { # StatusCondition describes why a cluster or a node pool has a certain status
4436 # (e.g., ERROR or DEGRADED).
4437 "message": "A String", # Human-friendly representation of the condition
4438 "code": "A String", # Machine-friendly representation of the condition
4439 },
4440 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07004441 "startTime": "A String", # [Output only] The time the operation started, in
4442 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
4443 "detail": "A String", # Detailed operation progress, if available.
4444 "targetLink": "A String", # Server-defined URL for the target of the operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004445 "operationType": "A String", # The operation type.
Dan O'Mearadd494642020-05-01 07:42:23 -07004446 "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004447 "status": "A String", # Status of an operation stage.
4448 # Unset for single-stage operations.
4449 "metrics": [ # Progress metric bundle, for example:
4450 # metrics: [{name: "nodes done", int_value: 15},
4451 # {name: "nodes total", int_value: 32}]
4452 # or
4453 # metrics: [{name: "progress", double_value: 0.56},
4454 # {name: "progress scale", double_value: 1.0}]
4455 { # Progress metric is (string, int|float|string) pair.
4456 "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
4457 "intValue": "A String", # For metrics with integer value.
Dan O'Mearadd494642020-05-01 07:42:23 -07004458 "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004459 "doubleValue": 3.14, # For metrics with floating point value.
4460 },
4461 ],
4462 "stages": [ # Substages of an operation or a stage.
4463 # Object with schema name: OperationProgress
4464 ],
4465 "name": "A String", # A non-parameterized string describing an operation stage.
4466 # Unset for single-stage operations.
4467 },
4468 "nodepoolConditions": [ # Which conditions caused the current node pool state.
4469 { # StatusCondition describes why a cluster or a node pool has a certain status
4470 # (e.g., ERROR or DEGRADED).
4471 "message": "A String", # Human-friendly representation of the condition
4472 "code": "A String", # Machine-friendly representation of the condition
4473 },
4474 ],
4475 "selfLink": "A String", # Server-defined URL for the resource.
Dan O'Mearadd494642020-05-01 07:42:23 -07004476 "location": "A String", # [Output only] The name of the Google Compute Engine
4477 # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
4478 # or
4479 # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
4480 # in which the cluster resides.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004481 }</pre>
4482</div>
4483
4484<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07004485 <code class="details" id="setNetworkPolicy">setNetworkPolicy(name, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004486 <pre>Enables or disables Network Policy for a cluster.
4487
4488Args:
4489 name: string, The name (project, location, cluster id) of the cluster to set networking
4490policy. Specified in the format 'projects/*/locations/*/clusters/*'. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07004491 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004492 The object takes the form of:
4493
4494{ # SetNetworkPolicyRequest enables/disables network policy for a cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -07004495 "projectId": "A String", # Required. Deprecated. The Google Developers Console [project ID or project
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004496 # number](https://developers.google.com/console/help/new/#projectnumber).
4497 # This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07004498 "clusterId": "A String", # Required. Deprecated. The name of the cluster.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004499 # This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07004500 "networkPolicy": { # Configuration options for the NetworkPolicy feature. # Required. Configuration options for the NetworkPolicy feature.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004501 # https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
4502 "enabled": True or False, # Whether network policy is enabled on the cluster.
4503 "provider": "A String", # The selected network policy provider.
4504 },
Dan O'Mearadd494642020-05-01 07:42:23 -07004505 "zone": "A String", # Required. Deprecated. The name of the Google Compute Engine
4506 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
4507 # cluster resides. This field has been deprecated and replaced by the name
4508 # field.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004509 "name": "A String", # The name (project, location, cluster id) of the cluster to set networking
4510 # policy. Specified in the format 'projects/*/locations/*/clusters/*'.
4511 }
4512
4513 x__xgafv: string, V1 error format.
4514 Allowed values
4515 1 - v1 error format
4516 2 - v2 error format
4517
4518Returns:
4519 An object of the form:
4520
4521 { # This operation resource represents operations that may have happened or are
4522 # happening on the cluster. All fields are output only.
4523 "status": "A String", # The current status of the operation.
Dan O'Mearadd494642020-05-01 07:42:23 -07004524 "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004525 "endTime": "A String", # [Output only] The time the operation completed, in
4526 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
4527 "name": "A String", # The server-assigned ID for the operation.
4528 "zone": "A String", # The name of the Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -07004529 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
4530 # operation is taking place. This field is deprecated, use location instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004531 "clusterConditions": [ # Which conditions caused the current cluster state.
4532 { # StatusCondition describes why a cluster or a node pool has a certain status
4533 # (e.g., ERROR or DEGRADED).
4534 "message": "A String", # Human-friendly representation of the condition
4535 "code": "A String", # Machine-friendly representation of the condition
4536 },
4537 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07004538 "startTime": "A String", # [Output only] The time the operation started, in
4539 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
4540 "detail": "A String", # Detailed operation progress, if available.
4541 "targetLink": "A String", # Server-defined URL for the target of the operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004542 "operationType": "A String", # The operation type.
Dan O'Mearadd494642020-05-01 07:42:23 -07004543 "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004544 "status": "A String", # Status of an operation stage.
4545 # Unset for single-stage operations.
4546 "metrics": [ # Progress metric bundle, for example:
4547 # metrics: [{name: "nodes done", int_value: 15},
4548 # {name: "nodes total", int_value: 32}]
4549 # or
4550 # metrics: [{name: "progress", double_value: 0.56},
4551 # {name: "progress scale", double_value: 1.0}]
4552 { # Progress metric is (string, int|float|string) pair.
4553 "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
4554 "intValue": "A String", # For metrics with integer value.
Dan O'Mearadd494642020-05-01 07:42:23 -07004555 "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004556 "doubleValue": 3.14, # For metrics with floating point value.
4557 },
4558 ],
4559 "stages": [ # Substages of an operation or a stage.
4560 # Object with schema name: OperationProgress
4561 ],
4562 "name": "A String", # A non-parameterized string describing an operation stage.
4563 # Unset for single-stage operations.
4564 },
4565 "nodepoolConditions": [ # Which conditions caused the current node pool state.
4566 { # StatusCondition describes why a cluster or a node pool has a certain status
4567 # (e.g., ERROR or DEGRADED).
4568 "message": "A String", # Human-friendly representation of the condition
4569 "code": "A String", # Machine-friendly representation of the condition
4570 },
4571 ],
4572 "selfLink": "A String", # Server-defined URL for the resource.
Dan O'Mearadd494642020-05-01 07:42:23 -07004573 "location": "A String", # [Output only] The name of the Google Compute Engine
4574 # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
4575 # or
4576 # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
4577 # in which the cluster resides.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004578 }</pre>
4579</div>
4580
4581<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07004582 <code class="details" id="setResourceLabels">setResourceLabels(name, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004583 <pre>Sets labels on a cluster.
4584
4585Args:
4586 name: string, The name (project, location, cluster id) of the cluster to set labels.
4587Specified in the format 'projects/*/locations/*/clusters/*'. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07004588 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004589 The object takes the form of:
4590
4591{ # SetLabelsRequest sets the Google Cloud Platform labels on a Google Container
4592 # Engine cluster, which will in turn set them for Google Compute Engine
4593 # resources used by that cluster
4594 "name": "A String", # The name (project, location, cluster id) of the cluster to set labels.
4595 # Specified in the format 'projects/*/locations/*/clusters/*'.
Dan O'Mearadd494642020-05-01 07:42:23 -07004596 "zone": "A String", # Required. Deprecated. The name of the Google Compute Engine
4597 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
4598 # cluster resides. This field has been deprecated and replaced by the name
4599 # field.
4600 "projectId": "A String", # Required. Deprecated. The Google Developers Console [project ID or project
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004601 # number](https://developers.google.com/console/help/new/#projectnumber).
4602 # This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07004603 "labelFingerprint": "A String", # Required. The fingerprint of the previous set of labels for this resource,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004604 # used to detect conflicts. The fingerprint is initially generated by
4605 # Kubernetes Engine and changes after every request to modify or update
4606 # labels. You must always provide an up-to-date fingerprint hash when
Dan O'Mearadd494642020-05-01 07:42:23 -07004607 # updating or changing labels. Make a &lt;code&gt;get()&lt;/code&gt; request to the
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004608 # resource to get the latest fingerprint.
Dan O'Mearadd494642020-05-01 07:42:23 -07004609 "clusterId": "A String", # Required. Deprecated. The name of the cluster.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004610 # This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07004611 "resourceLabels": { # Required. The labels to set for that cluster.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004612 "a_key": "A String",
4613 },
4614 }
4615
4616 x__xgafv: string, V1 error format.
4617 Allowed values
4618 1 - v1 error format
4619 2 - v2 error format
4620
4621Returns:
4622 An object of the form:
4623
4624 { # This operation resource represents operations that may have happened or are
4625 # happening on the cluster. All fields are output only.
4626 "status": "A String", # The current status of the operation.
Dan O'Mearadd494642020-05-01 07:42:23 -07004627 "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004628 "endTime": "A String", # [Output only] The time the operation completed, in
4629 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
4630 "name": "A String", # The server-assigned ID for the operation.
4631 "zone": "A String", # The name of the Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -07004632 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
4633 # operation is taking place. This field is deprecated, use location instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004634 "clusterConditions": [ # Which conditions caused the current cluster state.
4635 { # StatusCondition describes why a cluster or a node pool has a certain status
4636 # (e.g., ERROR or DEGRADED).
4637 "message": "A String", # Human-friendly representation of the condition
4638 "code": "A String", # Machine-friendly representation of the condition
4639 },
4640 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07004641 "startTime": "A String", # [Output only] The time the operation started, in
4642 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
4643 "detail": "A String", # Detailed operation progress, if available.
4644 "targetLink": "A String", # Server-defined URL for the target of the operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004645 "operationType": "A String", # The operation type.
Dan O'Mearadd494642020-05-01 07:42:23 -07004646 "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004647 "status": "A String", # Status of an operation stage.
4648 # Unset for single-stage operations.
4649 "metrics": [ # Progress metric bundle, for example:
4650 # metrics: [{name: "nodes done", int_value: 15},
4651 # {name: "nodes total", int_value: 32}]
4652 # or
4653 # metrics: [{name: "progress", double_value: 0.56},
4654 # {name: "progress scale", double_value: 1.0}]
4655 { # Progress metric is (string, int|float|string) pair.
4656 "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
4657 "intValue": "A String", # For metrics with integer value.
Dan O'Mearadd494642020-05-01 07:42:23 -07004658 "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004659 "doubleValue": 3.14, # For metrics with floating point value.
4660 },
4661 ],
4662 "stages": [ # Substages of an operation or a stage.
4663 # Object with schema name: OperationProgress
4664 ],
4665 "name": "A String", # A non-parameterized string describing an operation stage.
4666 # Unset for single-stage operations.
4667 },
4668 "nodepoolConditions": [ # Which conditions caused the current node pool state.
4669 { # StatusCondition describes why a cluster or a node pool has a certain status
4670 # (e.g., ERROR or DEGRADED).
4671 "message": "A String", # Human-friendly representation of the condition
4672 "code": "A String", # Machine-friendly representation of the condition
4673 },
4674 ],
4675 "selfLink": "A String", # Server-defined URL for the resource.
Dan O'Mearadd494642020-05-01 07:42:23 -07004676 "location": "A String", # [Output only] The name of the Google Compute Engine
4677 # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
4678 # or
4679 # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
4680 # in which the cluster resides.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004681 }</pre>
4682</div>
4683
4684<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07004685 <code class="details" id="startIpRotation">startIpRotation(name, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004686 <pre>Starts master IP rotation.
4687
4688Args:
4689 name: string, The name (project, location, cluster id) of the cluster to start IP
4690rotation. Specified in the format 'projects/*/locations/*/clusters/*'. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07004691 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004692 The object takes the form of:
4693
4694{ # StartIPRotationRequest creates a new IP for the cluster and then performs
4695 # a node upgrade on each node pool to point to the new IP.
Dan O'Mearadd494642020-05-01 07:42:23 -07004696 "projectId": "A String", # Required. Deprecated. The Google Developers Console [project ID or project
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004697 # number](https://developers.google.com/console/help/new/#projectnumber).
4698 # This field has been deprecated and replaced by the name field.
4699 "rotateCredentials": True or False, # Whether to rotate credentials during IP rotation.
Dan O'Mearadd494642020-05-01 07:42:23 -07004700 "clusterId": "A String", # Required. Deprecated. The name of the cluster.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004701 # This field has been deprecated and replaced by the name field.
4702 "name": "A String", # The name (project, location, cluster id) of the cluster to start IP
4703 # rotation. Specified in the format 'projects/*/locations/*/clusters/*'.
Dan O'Mearadd494642020-05-01 07:42:23 -07004704 "zone": "A String", # Required. Deprecated. The name of the Google Compute Engine
4705 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
4706 # cluster resides. This field has been deprecated and replaced by the name
4707 # field.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004708 }
4709
4710 x__xgafv: string, V1 error format.
4711 Allowed values
4712 1 - v1 error format
4713 2 - v2 error format
4714
4715Returns:
4716 An object of the form:
4717
4718 { # This operation resource represents operations that may have happened or are
4719 # happening on the cluster. All fields are output only.
4720 "status": "A String", # The current status of the operation.
Dan O'Mearadd494642020-05-01 07:42:23 -07004721 "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004722 "endTime": "A String", # [Output only] The time the operation completed, in
4723 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
4724 "name": "A String", # The server-assigned ID for the operation.
4725 "zone": "A String", # The name of the Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -07004726 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
4727 # operation is taking place. This field is deprecated, use location instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004728 "clusterConditions": [ # Which conditions caused the current cluster state.
4729 { # StatusCondition describes why a cluster or a node pool has a certain status
4730 # (e.g., ERROR or DEGRADED).
4731 "message": "A String", # Human-friendly representation of the condition
4732 "code": "A String", # Machine-friendly representation of the condition
4733 },
4734 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07004735 "startTime": "A String", # [Output only] The time the operation started, in
4736 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
4737 "detail": "A String", # Detailed operation progress, if available.
4738 "targetLink": "A String", # Server-defined URL for the target of the operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004739 "operationType": "A String", # The operation type.
Dan O'Mearadd494642020-05-01 07:42:23 -07004740 "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004741 "status": "A String", # Status of an operation stage.
4742 # Unset for single-stage operations.
4743 "metrics": [ # Progress metric bundle, for example:
4744 # metrics: [{name: "nodes done", int_value: 15},
4745 # {name: "nodes total", int_value: 32}]
4746 # or
4747 # metrics: [{name: "progress", double_value: 0.56},
4748 # {name: "progress scale", double_value: 1.0}]
4749 { # Progress metric is (string, int|float|string) pair.
4750 "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
4751 "intValue": "A String", # For metrics with integer value.
Dan O'Mearadd494642020-05-01 07:42:23 -07004752 "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004753 "doubleValue": 3.14, # For metrics with floating point value.
4754 },
4755 ],
4756 "stages": [ # Substages of an operation or a stage.
4757 # Object with schema name: OperationProgress
4758 ],
4759 "name": "A String", # A non-parameterized string describing an operation stage.
4760 # Unset for single-stage operations.
4761 },
4762 "nodepoolConditions": [ # Which conditions caused the current node pool state.
4763 { # StatusCondition describes why a cluster or a node pool has a certain status
4764 # (e.g., ERROR or DEGRADED).
4765 "message": "A String", # Human-friendly representation of the condition
4766 "code": "A String", # Machine-friendly representation of the condition
4767 },
4768 ],
4769 "selfLink": "A String", # Server-defined URL for the resource.
Dan O'Mearadd494642020-05-01 07:42:23 -07004770 "location": "A String", # [Output only] The name of the Google Compute Engine
4771 # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
4772 # or
4773 # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
4774 # in which the cluster resides.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004775 }</pre>
4776</div>
4777
4778<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07004779 <code class="details" id="update">update(name, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004780 <pre>Updates the settings for a specific cluster.
4781
4782Args:
4783 name: string, The name (project, location, cluster) of the cluster to update.
4784Specified in the format 'projects/*/locations/*/clusters/*'. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07004785 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004786 The object takes the form of:
4787
4788{ # UpdateClusterRequest updates the settings of a cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -07004789 "projectId": "A String", # Required. Deprecated. The Google Developers Console [project ID or project
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004790 # number](https://support.google.com/cloud/answer/6158840).
4791 # This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07004792 "clusterId": "A String", # Required. Deprecated. The name of the cluster to upgrade.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004793 # This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07004794 "update": { # ClusterUpdate describes an update to the cluster. Exactly one update can # Required. A description of the update.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004795 # be applied to a cluster with each request, so at most one field can be
4796 # provided.
Dan O'Mearadd494642020-05-01 07:42:23 -07004797 "desiredLoggingService": "A String", # The logging service the cluster should use to write logs.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004798 # Currently available options:
4799 #
Dan O'Mearadd494642020-05-01 07:42:23 -07004800 # * `logging.googleapis.com/kubernetes` - The Cloud Logging
4801 # service with a Kubernetes-native resource model
4802 # * `logging.googleapis.com` - The legacy Cloud Logging service (no longer
4803 # available as of GKE 1.15).
4804 # * `none` - no logs will be exported from the cluster.
4805 #
4806 # If left as an empty string,`logging.googleapis.com/kubernetes` will be
4807 # used for GKE 1.14+ or `logging.googleapis.com` for earlier versions.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004808 "desiredNodePoolId": "A String", # The node pool to be upgraded. This field is mandatory if
4809 # "desired_node_version", "desired_image_family",
4810 # "desired_node_pool_autoscaling", or "desired_workload_metadata_config"
4811 # is specified and there is more than one node pool on the cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -07004812 "desiredImageType": "A String", # The desired image type for the node pool.
4813 # NOTE: Set the "desired_node_pool" field as well.
4814 "desiredClusterTelemetry": { # Telemetry integration for the cluster. # The desired telemetry integration for the cluster.
4815 "type": "A String", # Type of the integration.
4816 },
4817 "desiredClusterAutoscaling": { # ClusterAutoscaling contains global, per-cluster information # Cluster-level autoscaling configuration.
4818 # required by Cluster Autoscaler to automatically adjust
4819 # the size of the cluster and create/delete
4820 # node pools based on the current needs.
4821 "autoprovisioningNodePoolDefaults": { # AutoprovisioningNodePoolDefaults contains defaults for a node pool created # AutoprovisioningNodePoolDefaults contains defaults for a node pool
4822 # created by NAP.
4823 # by NAP.
4824 "minCpuPlatform": "A String", # Minimum CPU platform to be used for NAP created node pools.
4825 # The instance may be scheduled on the specified or newer CPU platform.
4826 # Applicable values are the friendly names of CPU platforms, such as
4827 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Haswell&amp;quot;&lt;/code&gt; or
4828 # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Sandy Bridge&amp;quot;&lt;/code&gt;. For more
4829 # information, read [how to specify min CPU
4830 # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
4831 # To unset the min cpu platform field pass "automatic" as field value.
4832 "management": { # NodeManagement defines the set of node management services turned on for the # Specifies the node management options for NAP created node-pools.
4833 # node pool.
4834 "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
4835 # the Auto Upgrades will proceed.
4836 "description": "A String", # [Output only] This field is set when upgrades are about to commence
4837 # with the description of the upgrade.
4838 "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
4839 # with the approximate start time for the upgrades, in
4840 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
4841 },
4842 "autoRepair": True or False, # Whether the nodes will be automatically repaired.
4843 "autoUpgrade": True or False, # Whether the nodes will be automatically upgraded.
4844 },
4845 "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If
4846 # service_account is specified, scopes should be empty.
4847 "oauthScopes": [ # Scopes that are used by NAP when creating node pools. If oauth_scopes are
4848 # specified, service_account should be empty.
4849 "A String",
4850 ],
4851 "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Specifies the upgrade settings for NAP created node pools
4852 # disruption caused by an upgrade.
4853 #
4854 # maxUnavailable controls the number of nodes that can be simultaneously
4855 # unavailable.
4856 #
4857 # maxSurge controls the number of additional nodes that can be added to the
4858 # node pool temporarily for the time of the upgrade to increase the number of
4859 # available nodes.
4860 #
4861 # (maxUnavailable + maxSurge) determines the level of parallelism (how many
4862 # nodes are being upgraded at the same time).
4863 #
4864 # Note: upgrades inevitably introduce some disruption since workloads need to
4865 # be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
4866 # this holds true. (Disruption stays within the limits of
4867 # PodDisruptionBudget, if it is configured.)
4868 #
4869 # Consider a hypothetical node pool with 5 nodes having maxSurge=2,
4870 # maxUnavailable=1. This means the upgrade process upgrades 3 nodes
4871 # simultaneously. It creates 2 additional (upgraded) nodes, then it brings
4872 # down 3 old (not yet upgraded) nodes at the same time. This ensures that
4873 # there are always at least 4 nodes available.
4874 "maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
4875 # of the node pool during the upgrade process.
4876 "maxUnavailable": 42, # The maximum number of nodes that can be simultaneously unavailable during
4877 # the upgrade process. A node is considered available if its status is
4878 # Ready.
4879 },
4880 },
4881 "resourceLimits": [ # Contains global constraints regarding minimum and maximum
4882 # amount of resources in the cluster.
4883 { # Contains information about amount of some resource in the cluster.
4884 # For memory, value should be in GB.
4885 "resourceType": "A String", # Resource name "cpu", "memory" or gpu-specific string.
4886 "minimum": "A String", # Minimum amount of the resource in the cluster.
4887 "maximum": "A String", # Maximum amount of the resource in the cluster.
4888 },
4889 ],
4890 "autoprovisioningLocations": [ # The list of Google Compute Engine
4891 # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
4892 # NodePool's nodes can be created by NAP.
4893 "A String",
4894 ],
4895 "autoscalingProfile": "A String", # Defines autoscaling behaviour.
4896 "enableNodeAutoprovisioning": True or False, # Enables automatic node pool creation and deletion.
4897 },
4898 "desiredNodePoolAutoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for the node pool specified in
4899 # desired_node_pool_id. If there is only one pool in the
4900 # cluster and desired_node_pool_id is not provided then
4901 # the change applies to that single node pool.
4902 # adjust the size of the node pool to the current cluster usage.
4903 "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be &gt;= 1 and &lt;=
4904 # max_node_count.
4905 "autoprovisioned": True or False, # Can this node pool be deleted automatically.
4906 "enabled": True or False, # Is autoscaling enabled for this node pool.
4907 "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be &gt;= min_node_count. There
4908 # has to enough quota to scale up the cluster.
4909 },
4910 "desiredVerticalPodAutoscaling": { # VerticalPodAutoscaling contains global, per-cluster information # Cluster-level Vertical Pod Autoscaling configuration.
4911 # required by Vertical Pod Autoscaler to automatically adjust
4912 # the resources of pods controlled by it.
4913 "enabled": True or False, # Enables vertical pod autoscaling.
4914 },
4915 "desiredNodeVersion": "A String", # The Kubernetes version to change the nodes to (typically an
4916 # upgrade).
4917 #
4918 # Users may specify either explicit versions offered by
4919 # Kubernetes Engine or version aliases, which have the following behavior:
4920 #
4921 # - "latest": picks the highest valid Kubernetes version
4922 # - "1.X": picks the highest valid patch+gke.N patch in the 1.X version
4923 # - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
4924 # - "1.X.Y-gke.N": picks an explicit Kubernetes version
4925 # - "-": picks the Kubernetes master version
4926 "desiredWorkloadIdentityConfig": { # Configuration for the use of Kubernetes Service Accounts in GCP IAM # Configuration for Workload Identity.
4927 # policies.
4928 "workloadPool": "A String", # The workload pool to attach all Kubernetes service accounts to.
4929 "identityNamespace": "A String", # IAM Identity Namespace to attach all Kubernetes Service Accounts to.
4930 },
4931 "desiredPodSecurityPolicyConfig": { # Configuration for the PodSecurityPolicy feature. # The desired configuration options for the PodSecurityPolicy feature.
4932 "enabled": True or False, # Enable the PodSecurityPolicy controller for this cluster. If enabled, pods
4933 # must be valid under a PodSecurityPolicy to be created.
4934 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004935 "desiredAddonsConfig": { # Configuration for the addons that can be automatically spun up in the # Configurations for the various addons available to run in the cluster.
4936 # cluster, enabling additional functionality.
4937 "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
4938 # is enabled or not on the Master, it does not track whether network policy
4939 # is enabled for the nodes.
4940 # is enabled or not on the Master, it does not track whether network policy
4941 # is enabled for the nodes.
4942 "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
4943 },
4944 "cloudRunConfig": { # Configuration options for the Cloud Run feature. # Configuration for the Cloud Run addon. The `IstioConfig` addon must be
4945 # enabled in order to enable Cloud Run addon. This option can only be enabled
4946 # at cluster creation time.
4947 "disabled": True or False, # Whether Cloud Run addon is enabled for this cluster.
4948 },
4949 "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
4950 # makes it easy to set up HTTP load balancers for services in a cluster.
4951 # which makes it easy to set up HTTP load balancers for services in a cluster.
4952 "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
4953 # When enabled, it runs a small pod in the cluster that manages the load
4954 # balancers.
4955 },
Dan O'Mearadd494642020-05-01 07:42:23 -07004956 "kalmConfig": { # Configuration options for the KALM addon. # Configuration for the KALM addon, which manages the lifecycle of k8s
4957 # applications.
4958 "enabled": True or False, # Whether KALM is enabled for this cluster.
4959 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004960 "horizontalPodAutoscaling": { # Configuration options for the horizontal pod autoscaling feature, which # Configuration for the horizontal pod autoscaling feature, which
4961 # increases or decreases the number of replica pods a replication controller
4962 # has based on the resource usage of the existing pods.
4963 # increases or decreases the number of replica pods a replication controller
4964 # has based on the resource usage of the existing pods.
4965 "disabled": True or False, # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -07004966 # When enabled, it ensures that metrics are collected into Stackdriver
4967 # Monitoring.
4968 },
4969 "gcePersistentDiskCsiDriverConfig": { # Configuration for the Compute Engine PD CSI driver. This option can only be # Configuration for the Compute Engine Persistent Disk CSI driver.
4970 # enabled at cluster creation time.
4971 "enabled": True or False, # Whether the Compute Engine PD CSI driver is enabled for this cluster.
4972 },
4973 "configConnectorConfig": { # Configuration options for the Config Connector add-on. # Configuration for the ConfigConnector add-on, a Kubernetes
4974 # extension to manage hosted GCP services through the Kubernetes API
4975 "enabled": True or False, # Whether Cloud Connector is enabled for this cluster.
4976 },
4977 "dnsCacheConfig": { # Configuration for NodeLocal DNSCache # Configuration for NodeLocalDNS, a dns cache running on cluster nodes
4978 "enabled": True or False, # Whether NodeLocal DNSCache is enabled for this cluster.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004979 },
4980 "istioConfig": { # Configuration options for Istio addon. # Configuration for Istio, an open platform to connect, manage, and secure
4981 # microservices.
4982 "disabled": True or False, # Whether Istio is enabled for this cluster.
4983 "auth": "A String", # The specified Istio auth mode, either none, or mutual TLS.
4984 },
4985 "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
4986 # This addon is deprecated, and will be disabled in 1.15. It is recommended
4987 # to use the Cloud Console to manage and monitor your Kubernetes clusters,
4988 # workloads and applications. For more information, see:
4989 # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
4990 "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
4991 },
4992 },
Dan O'Mearadd494642020-05-01 07:42:23 -07004993 "desiredTpuConfig": { # Configuration for Cloud TPU. # The desired Cloud TPU configuration.
4994 "useServiceNetworking": True or False, # Whether to use service networking for Cloud TPU or not.
4995 "ipv4CidrBlock": "A String", # IPv4 CIDR block reserved for Cloud TPU in the VPC.
4996 "enabled": True or False, # Whether Cloud TPU integration is enabled or not.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004997 },
4998 "desiredResourceUsageExportConfig": { # Configuration for exporting cluster resource usages. # The desired configuration for exporting resource usage.
4999 "bigqueryDestination": { # Parameters for using BigQuery as the destination of resource usage export. # Configuration to use BigQuery as usage export destination.
5000 "datasetId": "A String", # The ID of a BigQuery Dataset.
5001 },
5002 "enableNetworkEgressMetering": True or False, # Whether to enable network egress metering for this cluster. If enabled, a
5003 # daemonset will be created in the cluster to meter network egress traffic.
5004 "consumptionMeteringConfig": { # Parameters for controlling consumption metering. # Configuration to enable resource consumption metering.
5005 "enabled": True or False, # Whether to enable consumption metering for this cluster. If enabled, a
5006 # second BigQuery table will be created to hold resource consumption
5007 # records.
5008 },
5009 },
Dan O'Mearadd494642020-05-01 07:42:23 -07005010 "desiredIntraNodeVisibilityConfig": { # IntraNodeVisibilityConfig contains the desired config of the intra-node # The desired config of Intra-node visibility.
5011 # visibility on this cluster.
5012 "enabled": True or False, # Enables intra node visibility for this cluster.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005013 },
Dan O'Mearadd494642020-05-01 07:42:23 -07005014 "desiredMasterAuthorizedNetworksConfig": { # Configuration options for the master authorized networks feature. Enabled # The desired configuration options for master authorized networks feature.
5015 # master authorized networks will disallow all external traffic to access
5016 # Kubernetes master through HTTPS except traffic from the given CIDR blocks,
5017 # Google Compute Engine Public IPs and Google Prod IPs.
5018 "enabled": True or False, # Whether or not master authorized networks is enabled.
5019 "cidrBlocks": [ # cidr_blocks define up to 10 external networks that could access
5020 # Kubernetes master through HTTPS.
5021 { # CidrBlock contains an optional name and one CIDR block.
5022 "cidrBlock": "A String", # cidr_block must be specified in CIDR notation.
5023 "displayName": "A String", # display_name is an optional field for users to identify CIDR blocks.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005024 },
5025 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005026 },
Dan O'Mearadd494642020-05-01 07:42:23 -07005027 "desiredReleaseChannel": { # ReleaseChannel indicates which release channel a cluster is # The desired release channel configuration.
5028 # subscribed to. Release channels are arranged in order of risk and
5029 # frequency of updates.
5030 #
5031 # When a cluster is subscribed to a release channel, Google maintains
5032 # both the master version and the node version. Node auto-upgrade
5033 # defaults to true and cannot be disabled. Updates to version related
5034 # fields (e.g. current_master_version) return an error.
5035 "channel": "A String", # channel specifies which release channel the cluster is subscribed to.
5036 },
5037 "desiredLocations": [ # The desired list of Google Compute Engine
5038 # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
5039 # cluster's nodes should be located. Changing the locations a cluster is in
5040 # will result in nodes being either created or removed from the cluster,
5041 # depending on whether locations are being added or removed.
5042 #
5043 # This list must always include the cluster's primary zone.
5044 "A String",
5045 ],
5046 "desiredMasterVersion": "A String", # The Kubernetes version to change the master to. The only valid value is the
5047 # latest supported version.
5048 #
5049 # Users may specify either explicit versions offered by
5050 # Kubernetes Engine or version aliases, which have the following behavior:
5051 #
5052 # - "latest": picks the highest valid Kubernetes version
5053 # - "1.X": picks the highest valid patch+gke.N patch in the 1.X version
5054 # - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
5055 # - "1.X.Y-gke.N": picks an explicit Kubernetes version
5056 # - "-": picks the default Kubernetes version
5057 "desiredMonitoringService": "A String", # The monitoring service the cluster should use to write metrics.
5058 # Currently available options:
5059 #
5060 # * "monitoring.googleapis.com/kubernetes" - The Cloud Monitoring
5061 # service with a Kubernetes-native resource model
5062 # * `monitoring.googleapis.com` - The legacy Cloud Monitoring service (no
5063 # longer available as of GKE 1.15).
5064 # * `none` - No metrics will be exported from the cluster.
5065 #
5066 # If left as an empty string,`monitoring.googleapis.com/kubernetes` will be
5067 # used for GKE 1.14+ or `monitoring.googleapis.com` for earlier versions.
5068 "desiredBinaryAuthorization": { # Configuration for Binary Authorization. # The desired configuration options for the Binary Authorization feature.
5069 "enabled": True or False, # Enable Binary Authorization for this cluster. If enabled, all container
5070 # images will be validated by Google Binauthz.
5071 },
5072 "desiredPrivateClusterConfig": { # Configuration options for private clusters. # The desired private cluster configuration.
5073 "enablePrivateEndpoint": True or False, # Whether the master's internal IP address is used as the cluster endpoint.
5074 "publicEndpoint": "A String", # Output only. The external IP address of this cluster's master endpoint.
5075 "masterGlobalAccessConfig": { # Configuration for controlling master global access settings. # Controls master global access settings.
5076 "enabled": True or False, # Whenever master is accessible globally or not.
5077 },
5078 "enablePrivateNodes": True or False, # Whether nodes have internal IP addresses only. If enabled, all nodes are
5079 # given only RFC 1918 private addresses and communicate with the master via
5080 # private networking.
5081 "privateEndpoint": "A String", # Output only. The internal IP address of this cluster's master endpoint.
5082 "masterIpv4CidrBlock": "A String", # The IP range in CIDR notation to use for the hosted master network. This
5083 # range will be used for assigning internal IP addresses to the master or
5084 # set of masters, as well as the ILB VIP. This range must not overlap with
5085 # any other ranges in use within the cluster's network.
5086 "peeringName": "A String", # Output only. The peering name in the customer VPC used by this cluster.
5087 },
5088 "desiredShieldedNodes": { # Configuration of Shielded Nodes feature. # Configuration for Shielded Nodes.
5089 "enabled": True or False, # Whether Shielded Nodes features are enabled on all nodes in this cluster.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005090 },
5091 "desiredDatabaseEncryption": { # Configuration of etcd encryption. # Configuration of etcd encryption.
5092 "state": "A String", # Denotes the state of etcd encryption.
5093 "keyName": "A String", # Name of CloudKMS key to use for the encryption of secrets in etcd.
5094 # Ex. projects/my-project/locations/global/keyRings/my-ring/cryptoKeys/my-key
5095 },
5096 },
Dan O'Mearadd494642020-05-01 07:42:23 -07005097 "zone": "A String", # Required. Deprecated. The name of the Google Compute Engine
5098 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
5099 # cluster resides. This field has been deprecated and replaced by the name
5100 # field.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005101 "name": "A String", # The name (project, location, cluster) of the cluster to update.
5102 # Specified in the format 'projects/*/locations/*/clusters/*'.
5103 }
5104
5105 x__xgafv: string, V1 error format.
5106 Allowed values
5107 1 - v1 error format
5108 2 - v2 error format
5109
5110Returns:
5111 An object of the form:
5112
5113 { # This operation resource represents operations that may have happened or are
5114 # happening on the cluster. All fields are output only.
5115 "status": "A String", # The current status of the operation.
Dan O'Mearadd494642020-05-01 07:42:23 -07005116 "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005117 "endTime": "A String", # [Output only] The time the operation completed, in
5118 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
5119 "name": "A String", # The server-assigned ID for the operation.
5120 "zone": "A String", # The name of the Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -07005121 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
5122 # operation is taking place. This field is deprecated, use location instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005123 "clusterConditions": [ # Which conditions caused the current cluster state.
5124 { # StatusCondition describes why a cluster or a node pool has a certain status
5125 # (e.g., ERROR or DEGRADED).
5126 "message": "A String", # Human-friendly representation of the condition
5127 "code": "A String", # Machine-friendly representation of the condition
5128 },
5129 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07005130 "startTime": "A String", # [Output only] The time the operation started, in
5131 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
5132 "detail": "A String", # Detailed operation progress, if available.
5133 "targetLink": "A String", # Server-defined URL for the target of the operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005134 "operationType": "A String", # The operation type.
Dan O'Mearadd494642020-05-01 07:42:23 -07005135 "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005136 "status": "A String", # Status of an operation stage.
5137 # Unset for single-stage operations.
5138 "metrics": [ # Progress metric bundle, for example:
5139 # metrics: [{name: "nodes done", int_value: 15},
5140 # {name: "nodes total", int_value: 32}]
5141 # or
5142 # metrics: [{name: "progress", double_value: 0.56},
5143 # {name: "progress scale", double_value: 1.0}]
5144 { # Progress metric is (string, int|float|string) pair.
5145 "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
5146 "intValue": "A String", # For metrics with integer value.
Dan O'Mearadd494642020-05-01 07:42:23 -07005147 "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005148 "doubleValue": 3.14, # For metrics with floating point value.
5149 },
5150 ],
5151 "stages": [ # Substages of an operation or a stage.
5152 # Object with schema name: OperationProgress
5153 ],
5154 "name": "A String", # A non-parameterized string describing an operation stage.
5155 # Unset for single-stage operations.
5156 },
5157 "nodepoolConditions": [ # Which conditions caused the current node pool state.
5158 { # StatusCondition describes why a cluster or a node pool has a certain status
5159 # (e.g., ERROR or DEGRADED).
5160 "message": "A String", # Human-friendly representation of the condition
5161 "code": "A String", # Machine-friendly representation of the condition
5162 },
5163 ],
5164 "selfLink": "A String", # Server-defined URL for the resource.
Dan O'Mearadd494642020-05-01 07:42:23 -07005165 "location": "A String", # [Output only] The name of the Google Compute Engine
5166 # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
5167 # or
5168 # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
5169 # in which the cluster resides.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005170 }</pre>
5171</div>
5172
5173<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07005174 <code class="details" id="updateMaster">updateMaster(name, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005175 <pre>Updates the master for a specific cluster.
5176
5177Args:
5178 name: string, The name (project, location, cluster) of the cluster to update.
5179Specified in the format 'projects/*/locations/*/clusters/*'. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07005180 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005181 The object takes the form of:
5182
5183{ # UpdateMasterRequest updates the master of the cluster.
Dan O'Mearadd494642020-05-01 07:42:23 -07005184 "projectId": "A String", # Required. Deprecated. The Google Developers Console [project ID or project
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005185 # number](https://support.google.com/cloud/answer/6158840).
5186 # This field has been deprecated and replaced by the name field.
Dan O'Mearadd494642020-05-01 07:42:23 -07005187 "masterVersion": "A String", # Required. The Kubernetes version to change the master to.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005188 #
5189 # Users may specify either explicit versions offered by
5190 # Kubernetes Engine or version aliases, which have the following behavior:
5191 #
5192 # - "latest": picks the highest valid Kubernetes version
5193 # - "1.X": picks the highest valid patch+gke.N patch in the 1.X version
5194 # - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
5195 # - "1.X.Y-gke.N": picks an explicit Kubernetes version
5196 # - "-": picks the default Kubernetes version
Dan O'Mearadd494642020-05-01 07:42:23 -07005197 "clusterId": "A String", # Required. Deprecated. The name of the cluster to upgrade.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005198 # This field has been deprecated and replaced by the name field.
5199 "name": "A String", # The name (project, location, cluster) of the cluster to update.
5200 # Specified in the format 'projects/*/locations/*/clusters/*'.
Dan O'Mearadd494642020-05-01 07:42:23 -07005201 "zone": "A String", # Required. Deprecated. The name of the Google Compute Engine
5202 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
5203 # cluster resides. This field has been deprecated and replaced by the name
5204 # field.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005205 }
5206
5207 x__xgafv: string, V1 error format.
5208 Allowed values
5209 1 - v1 error format
5210 2 - v2 error format
5211
5212Returns:
5213 An object of the form:
5214
5215 { # This operation resource represents operations that may have happened or are
5216 # happening on the cluster. All fields are output only.
5217 "status": "A String", # The current status of the operation.
Dan O'Mearadd494642020-05-01 07:42:23 -07005218 "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005219 "endTime": "A String", # [Output only] The time the operation completed, in
5220 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
5221 "name": "A String", # The server-assigned ID for the operation.
5222 "zone": "A String", # The name of the Google Compute Engine
Dan O'Mearadd494642020-05-01 07:42:23 -07005223 # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
5224 # operation is taking place. This field is deprecated, use location instead.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005225 "clusterConditions": [ # Which conditions caused the current cluster state.
5226 { # StatusCondition describes why a cluster or a node pool has a certain status
5227 # (e.g., ERROR or DEGRADED).
5228 "message": "A String", # Human-friendly representation of the condition
5229 "code": "A String", # Machine-friendly representation of the condition
5230 },
5231 ],
Dan O'Mearadd494642020-05-01 07:42:23 -07005232 "startTime": "A String", # [Output only] The time the operation started, in
5233 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
5234 "detail": "A String", # Detailed operation progress, if available.
5235 "targetLink": "A String", # Server-defined URL for the target of the operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005236 "operationType": "A String", # The operation type.
Dan O'Mearadd494642020-05-01 07:42:23 -07005237 "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005238 "status": "A String", # Status of an operation stage.
5239 # Unset for single-stage operations.
5240 "metrics": [ # Progress metric bundle, for example:
5241 # metrics: [{name: "nodes done", int_value: 15},
5242 # {name: "nodes total", int_value: 32}]
5243 # or
5244 # metrics: [{name: "progress", double_value: 0.56},
5245 # {name: "progress scale", double_value: 1.0}]
5246 { # Progress metric is (string, int|float|string) pair.
5247 "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
5248 "intValue": "A String", # For metrics with integer value.
Dan O'Mearadd494642020-05-01 07:42:23 -07005249 "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005250 "doubleValue": 3.14, # For metrics with floating point value.
5251 },
5252 ],
5253 "stages": [ # Substages of an operation or a stage.
5254 # Object with schema name: OperationProgress
5255 ],
5256 "name": "A String", # A non-parameterized string describing an operation stage.
5257 # Unset for single-stage operations.
5258 },
5259 "nodepoolConditions": [ # Which conditions caused the current node pool state.
5260 { # StatusCondition describes why a cluster or a node pool has a certain status
5261 # (e.g., ERROR or DEGRADED).
5262 "message": "A String", # Human-friendly representation of the condition
5263 "code": "A String", # Machine-friendly representation of the condition
5264 },
5265 ],
5266 "selfLink": "A String", # Server-defined URL for the resource.
Dan O'Mearadd494642020-05-01 07:42:23 -07005267 "location": "A String", # [Output only] The name of the Google Compute Engine
5268 # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
5269 # or
5270 # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
5271 # in which the cluster resides.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07005272 }</pre>
5273</div>
5274
5275</body></html>