1<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_v1.html">Kubernetes Engine API</a> . <a href="container_v1.projects.html">projects</a> . <a href="container_v1.projects.zones.html">zones</a> . <a href="container_v1.projects.zones.clusters.html">clusters</a></h1>
76<h2>Instance Methods</h2>
77<p class="toc_element">
78  <code><a href="container_v1.projects.zones.clusters.nodePools.html">nodePools()</a></code>
79</p>
80<p class="firstline">Returns the nodePools Resource.</p>
81
82<p class="toc_element">
83  <code><a href="#addons">addons(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p>
84<p class="firstline">Sets the addons for a specific cluster.</p>
85<p class="toc_element">
86  <code><a href="#completeIpRotation">completeIpRotation(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p>
87<p class="firstline">Completes master IP rotation.</p>
88<p class="toc_element">
89  <code><a href="#create">create(projectId, zone, body, x__xgafv=None)</a></code></p>
90<p class="firstline">Creates a cluster, consisting of the specified number and type of Google</p>
91<p class="toc_element">
92  <code><a href="#delete">delete(projectId, zone, clusterId, name=None, x__xgafv=None)</a></code></p>
93<p class="firstline">Deletes the cluster, including the Kubernetes endpoint and all worker</p>
94<p class="toc_element">
95  <code><a href="#get">get(projectId, zone, clusterId, name=None, x__xgafv=None)</a></code></p>
96<p class="firstline">Gets the details of a specific cluster.</p>
97<p class="toc_element">
98  <code><a href="#legacyAbac">legacyAbac(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p>
99<p class="firstline">Enables or disables the ABAC authorization mechanism on a cluster.</p>
100<p class="toc_element">
101  <code><a href="#list">list(projectId, zone, parent=None, x__xgafv=None)</a></code></p>
102<p class="firstline">Lists all clusters owned by a project in either the specified zone or all</p>
103<p class="toc_element">
104  <code><a href="#locations">locations(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p>
105<p class="firstline">Sets the locations for a specific cluster.</p>
106<p class="toc_element">
107  <code><a href="#logging">logging(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p>
108<p class="firstline">Sets the logging service for a specific cluster.</p>
109<p class="toc_element">
110  <code><a href="#master">master(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p>
111<p class="firstline">Updates the master for a specific cluster.</p>
112<p class="toc_element">
113  <code><a href="#monitoring">monitoring(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p>
114<p class="firstline">Sets the monitoring service for a specific cluster.</p>
115<p class="toc_element">
116  <code><a href="#resourceLabels">resourceLabels(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p>
117<p class="firstline">Sets labels on a cluster.</p>
118<p class="toc_element">
119  <code><a href="#setMaintenancePolicy">setMaintenancePolicy(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p>
120<p class="firstline">Sets the maintenance policy for a cluster.</p>
121<p class="toc_element">
122  <code><a href="#setMasterAuth">setMasterAuth(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p>
123<p class="firstline">Sets master auth materials. Currently supports changing the admin password</p>
124<p class="toc_element">
125  <code><a href="#setNetworkPolicy">setNetworkPolicy(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p>
126<p class="firstline">Enables or disables Network Policy for a cluster.</p>
127<p class="toc_element">
128  <code><a href="#startIpRotation">startIpRotation(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p>
129<p class="firstline">Starts master IP rotation.</p>
130<p class="toc_element">
131  <code><a href="#update">update(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p>
132<p class="firstline">Updates the settings of a specific cluster.</p>
133<h3>Method Details</h3>
134<div class="method">
135    <code class="details" id="addons">addons(projectId, zone, clusterId, body, x__xgafv=None)</code>
136  <pre>Sets the addons for a specific cluster.
137
138Args:
139  projectId: string, Deprecated. The Google Developers Console [project ID or project
140number](https://support.google.com/cloud/answer/6158840).
141This field has been deprecated and replaced by the name field. (required)
142  zone: string, Deprecated. The name of the Google Compute Engine
143[zone](/compute/docs/zones#available) in which the cluster
144resides.
145This field has been deprecated and replaced by the name field. (required)
146  clusterId: string, Deprecated. The name of the cluster to upgrade.
147This field has been deprecated and replaced by the name field. (required)
148  body: object, The request body. (required)
149    The object takes the form of:
150
151{ # SetAddonsConfigRequest sets the addons associated with the cluster.
152    "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
153        # number](https://support.google.com/cloud/answer/6158840).
154        # This field has been deprecated and replaced by the name field.
155    "addonsConfig": { # Configuration for the addons that can be automatically spun up in the # The desired configurations for the various addons available to run in the
156        # cluster.
157        # cluster, enabling additional functionality.
158      "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
159          # makes it easy to set up HTTP load balancers for services in a cluster.
160          # which makes it easy to set up HTTP load balancers for services in a cluster.
161        "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
162            # When enabled, it runs a small pod in the cluster that manages the load
163            # balancers.
164      },
165      "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
166          # is enabled or not on the Master, it does not track whether network policy
167          # is enabled for the nodes.
168          # is enabled or not on the Master, it does not track whether network policy
169          # is enabled for the nodes.
170        "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
171      },
172      "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
173          # This addon is deprecated, and will be disabled in 1.15. It is recommended
174          # to use the Cloud Console to manage and monitor your Kubernetes clusters,
175          # workloads and applications. For more information, see:
176          # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
177        "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
178      },
179      "horizontalPodAutoscaling": { # Configuration options for the horizontal pod autoscaling feature, which # Configuration for the horizontal pod autoscaling feature, which
180          # increases or decreases the number of replica pods a replication controller
181          # has based on the resource usage of the existing pods.
182          # increases or decreases the number of replica pods a replication controller
183          # has based on the resource usage of the existing pods.
184        "disabled": True or False, # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
185            # When enabled, it ensures that a Heapster pod is running in the cluster,
186            # which is also used by the Cloud Monitoring service.
187      },
188    },
189    "clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
190        # This field has been deprecated and replaced by the name field.
191    "name": "A String", # The name (project, location, cluster) of the cluster to set addons.
192        # Specified in the format 'projects/*/locations/*/clusters/*'.
193    "zone": "A String", # Deprecated. The name of the Google Compute Engine
194        # [zone](/compute/docs/zones#available) in which the cluster
195        # resides.
196        # This field has been deprecated and replaced by the name field.
197  }
198
199  x__xgafv: string, V1 error format.
200    Allowed values
201      1 - v1 error format
202      2 - v2 error format
203
204Returns:
205  An object of the form:
206
207    { # This operation resource represents operations that may have happened or are
208      # happening on the cluster. All fields are output only.
209    "status": "A String", # The current status of the operation.
210    "selfLink": "A String", # Server-defined URL for the resource.
211    "name": "A String", # The server-assigned ID for the operation.
212    "zone": "A String", # The name of the Google Compute Engine
213        # [zone](/compute/docs/zones#available) in which the operation
214        # is taking place.
215        # This field is deprecated, use location instead.
216    "startTime": "A String", # [Output only] The time the operation started, in
217        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
218    "detail": "A String", # Detailed operation progress, if available.
219    "operationType": "A String", # The operation type.
220    "targetLink": "A String", # Server-defined URL for the target of the operation.
221    "location": "A String", # [Output only] The name of the Google Compute Engine
222        # [zone](/compute/docs/regions-zones/regions-zones#available) or
223        # [region](/compute/docs/regions-zones/regions-zones#available) in which
224        # the cluster resides.
225    "nodepoolConditions": [ # Which conditions caused the current node pool state.
226      { # StatusCondition describes why a cluster or a node pool has a certain status
227          # (e.g., ERROR or DEGRADED).
228        "message": "A String", # Human-friendly representation of the condition
229        "code": "A String", # Machine-friendly representation of the condition
230      },
231    ],
232    "endTime": "A String", # [Output only] The time the operation completed, in
233        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
234    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
235    "clusterConditions": [ # Which conditions caused the current cluster state.
236      { # StatusCondition describes why a cluster or a node pool has a certain status
237          # (e.g., ERROR or DEGRADED).
238        "message": "A String", # Human-friendly representation of the condition
239        "code": "A String", # Machine-friendly representation of the condition
240      },
241    ],
242  }</pre>
243</div>
244
245<div class="method">
246    <code class="details" id="completeIpRotation">completeIpRotation(projectId, zone, clusterId, body, x__xgafv=None)</code>
247  <pre>Completes master IP rotation.
248
249Args:
250  projectId: string, Deprecated. The Google Developers Console [project ID or project
251number](https://developers.google.com/console/help/new/#projectnumber).
252This field has been deprecated and replaced by the name field. (required)
253  zone: string, Deprecated. The name of the Google Compute Engine
254[zone](/compute/docs/zones#available) in which the cluster
255resides.
256This field has been deprecated and replaced by the name field. (required)
257  clusterId: string, Deprecated. The name of the cluster.
258This field has been deprecated and replaced by the name field. (required)
259  body: object, The request body. (required)
260    The object takes the form of:
261
262{ # CompleteIPRotationRequest moves the cluster master back into single-IP mode.
263    "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
264        # number](https://developers.google.com/console/help/new/#projectnumber).
265        # This field has been deprecated and replaced by the name field.
266    "clusterId": "A String", # Deprecated. The name of the cluster.
267        # This field has been deprecated and replaced by the name field.
268    "name": "A String", # The name (project, location, cluster id) of the cluster to complete IP
269        # rotation. Specified in the format 'projects/*/locations/*/clusters/*'.
270    "zone": "A String", # Deprecated. The name of the Google Compute Engine
271        # [zone](/compute/docs/zones#available) in which the cluster
272        # resides.
273        # This field has been deprecated and replaced by the name field.
274  }
275
276  x__xgafv: string, V1 error format.
277    Allowed values
278      1 - v1 error format
279      2 - v2 error format
280
281Returns:
282  An object of the form:
283
284    { # This operation resource represents operations that may have happened or are
285      # happening on the cluster. All fields are output only.
286    "status": "A String", # The current status of the operation.
287    "selfLink": "A String", # Server-defined URL for the resource.
288    "name": "A String", # The server-assigned ID for the operation.
289    "zone": "A String", # The name of the Google Compute Engine
290        # [zone](/compute/docs/zones#available) in which the operation
291        # is taking place.
292        # This field is deprecated, use location instead.
293    "startTime": "A String", # [Output only] The time the operation started, in
294        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
295    "detail": "A String", # Detailed operation progress, if available.
296    "operationType": "A String", # The operation type.
297    "targetLink": "A String", # Server-defined URL for the target of the operation.
298    "location": "A String", # [Output only] The name of the Google Compute Engine
299        # [zone](/compute/docs/regions-zones/regions-zones#available) or
300        # [region](/compute/docs/regions-zones/regions-zones#available) in which
301        # the cluster resides.
302    "nodepoolConditions": [ # Which conditions caused the current node pool state.
303      { # StatusCondition describes why a cluster or a node pool has a certain status
304          # (e.g., ERROR or DEGRADED).
305        "message": "A String", # Human-friendly representation of the condition
306        "code": "A String", # Machine-friendly representation of the condition
307      },
308    ],
309    "endTime": "A String", # [Output only] The time the operation completed, in
310        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
311    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
312    "clusterConditions": [ # Which conditions caused the current cluster state.
313      { # StatusCondition describes why a cluster or a node pool has a certain status
314          # (e.g., ERROR or DEGRADED).
315        "message": "A String", # Human-friendly representation of the condition
316        "code": "A String", # Machine-friendly representation of the condition
317      },
318    ],
319  }</pre>
320</div>
321
322<div class="method">
323    <code class="details" id="create">create(projectId, zone, body, x__xgafv=None)</code>
324  <pre>Creates a cluster, consisting of the specified number and type of Google
325Compute Engine instances.
326
327By default, the cluster is created in the project's
328[default network](/compute/docs/networks-and-firewalls#networks).
329
330One firewall is added for the cluster. After cluster creation,
331the Kubelet creates routes for each node to allow the containers
332on that node to communicate with all other instances in the
333cluster.
334
335Finally, an entry is added to the project's global metadata indicating
336which CIDR range the cluster is using.
337
338Args:
339  projectId: string, Deprecated. The Google Developers Console [project ID or project
340number](https://support.google.com/cloud/answer/6158840).
341This field has been deprecated and replaced by the parent field. (required)
342  zone: string, Deprecated. The name of the Google Compute Engine
343[zone](/compute/docs/zones#available) in which the cluster
344resides.
345This field has been deprecated and replaced by the parent field. (required)
346  body: object, The request body. (required)
347    The object takes the form of:
348
349{ # CreateClusterRequest creates a cluster.
350    "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
351        # number](https://support.google.com/cloud/answer/6158840).
352        # This field has been deprecated and replaced by the parent field.
353    "parent": "A String", # The parent (project and location) where the cluster will be created.
354        # Specified in the format 'projects/*/locations/*'.
355    "zone": "A String", # Deprecated. The name of the Google Compute Engine
356        # [zone](/compute/docs/zones#available) in which the cluster
357        # resides.
358        # This field has been deprecated and replaced by the parent field.
359    "cluster": { # A Google Kubernetes Engine cluster. # A [cluster
360        # resource](/container-engine/reference/rest/v1/projects.zones.clusters)
361      "nodeIpv4CidrSize": 42, # [Output only] The size of the address space on each node for hosting
362          # containers. This is provisioned from within the `container_ipv4_cidr`
363          # range. This field will only be set when cluster is in route-based network
364          # mode.
365      "maintenancePolicy": { # MaintenancePolicy defines the maintenance policy to be used for the cluster. # Configure the maintenance policy for this cluster.
366        "window": { # MaintenanceWindow defines the maintenance window to be used for the cluster. # Specifies the maintenance window in which maintenance may be performed.
367          "dailyMaintenanceWindow": { # Time window specified for daily maintenance operations. # DailyMaintenanceWindow specifies a daily maintenance operation window.
368            "duration": "A String", # [Output only] Duration of the time window, automatically chosen to be
369                # smallest possible in the given scenario.
370                # Duration will be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
371                # format "PTnHnMnS".
372            "startTime": "A String", # Time within the maintenance window to start the maintenance operations.
373                # Time format should be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
374                # format "HH:MM", where HH : [00-23] and MM : [00-59] GMT.
375          },
376        },
377      },
378      "networkPolicy": { # Configuration options for the NetworkPolicy feature. # Configuration options for the NetworkPolicy feature.
379          # https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
380        "enabled": True or False, # Whether network policy is enabled on the cluster.
381        "provider": "A String", # The selected network policy provider.
382      },
383      "masterAuthorizedNetworksConfig": { # Configuration options for the master authorized networks feature. Enabled # The configuration options for master authorized networks feature.
384          # master authorized networks will disallow all external traffic to access
385          # Kubernetes master through HTTPS except traffic from the given CIDR blocks,
386          # Google Compute Engine Public IPs and Google Prod IPs.
387        "enabled": True or False, # Whether or not master authorized networks is enabled.
388        "cidrBlocks": [ # cidr_blocks define up to 50 external networks that could access
389            # Kubernetes master through HTTPS.
390          { # CidrBlock contains an optional name and one CIDR block.
391            "displayName": "A String", # display_name is an optional field for users to identify CIDR blocks.
392            "cidrBlock": "A String", # cidr_block must be specified in CIDR notation.
393          },
394        ],
395      },
396      "addonsConfig": { # Configuration for the addons that can be automatically spun up in the # Configurations for the various addons available to run in the cluster.
397          # cluster, enabling additional functionality.
398        "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
399            # makes it easy to set up HTTP load balancers for services in a cluster.
400            # which makes it easy to set up HTTP load balancers for services in a cluster.
401          "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
402              # When enabled, it runs a small pod in the cluster that manages the load
403              # balancers.
404        },
405        "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
406            # is enabled or not on the Master, it does not track whether network policy
407            # is enabled for the nodes.
408            # is enabled or not on the Master, it does not track whether network policy
409            # is enabled for the nodes.
410          "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
411        },
412        "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
413            # This addon is deprecated, and will be disabled in 1.15. It is recommended
414            # to use the Cloud Console to manage and monitor your Kubernetes clusters,
415            # workloads and applications. For more information, see:
416            # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
417          "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
418        },
419        "horizontalPodAutoscaling": { # Configuration options for the horizontal pod autoscaling feature, which # Configuration for the horizontal pod autoscaling feature, which
420            # increases or decreases the number of replica pods a replication controller
421            # has based on the resource usage of the existing pods.
422            # increases or decreases the number of replica pods a replication controller
423            # has based on the resource usage of the existing pods.
424          "disabled": True or False, # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
425              # When enabled, it ensures that a Heapster pod is running in the cluster,
426              # which is also used by the Cloud Monitoring service.
427        },
428      },
429      "locations": [ # The list of Google Compute Engine
430          # [zones](/compute/docs/zones#available) in which the cluster's nodes
431          # should be located.
432        "A String",
433      ],
434      "enableKubernetesAlpha": True or False, # Kubernetes alpha features are enabled on this cluster. This includes alpha
435          # API groups (e.g. v1alpha1) and features that may not be production ready in
436          # the kubernetes version of the master and nodes.
437          # The cluster has no SLA for uptime and master/node upgrades are disabled.
438          # Alpha enabled clusters are automatically deleted thirty days after
439          # creation.
440      "defaultMaxPodsConstraint": { # Constraints applied to pods. # The default constraint on the maximum number of pods that can be run
441          # simultaneously on a node in the node pool of this cluster. Only honored
442          # if cluster created with IP Alias support.
443        "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
444      },
445      "network": "A String", # The name of the Google Compute Engine
446          # [network](/compute/docs/networks-and-firewalls#networks) to which the
447          # cluster is connected. If left unspecified, the `default` network
448          # will be used.
449      "zone": "A String", # [Output only] The name of the Google Compute Engine
450          # [zone](/compute/docs/zones#available) in which the cluster
451          # resides.
452          # This field is deprecated, use location instead.
453      "instanceGroupUrls": [ # Deprecated. Use node_pools.instance_group_urls.
454        "A String",
455      ],
456      "networkConfig": { # NetworkConfig reports the relative names of network & subnetwork. # Configuration for cluster networking.
457        "subnetwork": "A String", # Output only. The relative name of the Google Compute Engine
458            # [subnetwork](/compute/docs/vpc) to which the cluster is connected.
459            # Example: 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(/compute/docs/networks-and-firewalls#networks) to which
462            # the cluster is connected.
463            # Example: projects/my-project/global/networks/my-network
464      },
465      "name": "A String", # The name of this cluster. The name must be unique within this project
466          # and zone, and can be up to 40 characters with the following restrictions:
467          #
468          # * Lowercase letters, numbers, and hyphens only.
469          # * Must start with a letter.
470          # * Must end with a number or a letter.
471      "ipAllocationPolicy": { # Configuration for controlling how IPs are allocated in the cluster. # Configuration for cluster IP allocation.
472        "nodeIpv4Cidr": "A String", # This field is deprecated, use node_ipv4_cidr_block.
473        "useIpAliases": True or False, # Whether alias IPs will be used for pod IPs in the cluster.
474        "clusterSecondaryRangeName": "A String", # The name of the secondary range to be used for the cluster CIDR
475            # block.  The secondary range will be used for pod IP
476            # addresses. This must be an existing secondary range associated
477            # with the cluster subnetwork.
478            #
479            # This field is only applicable with use_ip_aliases is true and
480            # create_subnetwork is false.
481        "clusterIpv4CidrBlock": "A String", # The IP address range for the cluster pod IPs. If this field is set, then
482            # `cluster.cluster_ipv4_cidr` must be left blank.
483            #
484            # This field is only applicable when `use_ip_aliases` is true.
485            #
486            # Set to blank to have a range chosen with the default size.
487            #
488            # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
489            # netmask.
490            #
491            # Set to a
492            # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
493            # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
494            # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
495            # to use.
496        "servicesIpv4CidrBlock": "A String", # The IP address range of the services IPs in this cluster. If blank, a range
497            # will be automatically chosen with the default size.
498            #
499            # This field is only applicable when `use_ip_aliases` is true.
500            #
501            # Set to blank to have a range chosen with the default size.
502            #
503            # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
504            # netmask.
505            #
506            # Set to a
507            # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
508            # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
509            # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
510            # to use.
511        "createSubnetwork": True or False, # Whether a new subnetwork will be created automatically for the cluster.
512            #
513            # This field is only applicable when `use_ip_aliases` is true.
514        "nodeIpv4CidrBlock": "A String", # The IP address range of the instance IPs in this cluster.
515            #
516            # This is applicable only if `create_subnetwork` is true.
517            #
518            # Set to blank to have a range chosen with the default size.
519            #
520            # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
521            # netmask.
522            #
523            # Set to a
524            # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
525            # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
526            # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
527            # to use.
528        "tpuIpv4CidrBlock": "A String", # The IP address range of the Cloud TPUs in this cluster. If unspecified, a
529            # range will be automatically chosen with the default size.
530            #
531            # This field is only applicable when `use_ip_aliases` is true.
532            #
533            # If unspecified, the range will use the default size.
534            #
535            # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
536            # netmask.
537            #
538            # Set to a
539            # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
540            # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
541            # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
542            # to use.
543        "clusterIpv4Cidr": "A String", # This field is deprecated, use cluster_ipv4_cidr_block.
544        "subnetworkName": "A String", # A custom subnetwork name to be used if `create_subnetwork` is true.  If
545            # this field is empty, then an automatic name will be chosen for the new
546            # subnetwork.
547        "servicesSecondaryRangeName": "A String", # The name of the secondary range to be used as for the services
548            # CIDR block.  The secondary range will be used for service
549            # ClusterIPs. This must be an existing secondary range associated
550            # with the cluster subnetwork.
551            #
552            # This field is only applicable with use_ip_aliases is true and
553            # create_subnetwork is false.
554        "servicesIpv4Cidr": "A String", # This field is deprecated, use services_ipv4_cidr_block.
555      },
556      "resourceUsageExportConfig": { # Configuration for exporting cluster resource usages. # Configuration for exporting resource usages. Resource usage export is
557          # disabled when this config is unspecified.
558        "bigqueryDestination": { # Parameters for using BigQuery as the destination of resource usage export. # Configuration to use BigQuery as usage export destination.
559          "datasetId": "A String", # The ID of a BigQuery Dataset.
560        },
561        "enableNetworkEgressMetering": True or False, # Whether to enable network egress metering for this cluster. If enabled, a
562            # daemonset will be created in the cluster to meter network egress traffic.
563        "consumptionMeteringConfig": { # Parameters for controlling consumption metering. # Configuration to enable resource consumption metering.
564          "enabled": True or False, # Whether to enable consumption metering for this cluster. If enabled, a
565              # second BigQuery table will be created to hold resource consumption
566              # records.
567        },
568      },
569      "enableTpu": True or False, # Enable the ability to use Cloud TPUs in this cluster.
570      "conditions": [ # Which conditions caused the current cluster state.
571        { # StatusCondition describes why a cluster or a node pool has a certain status
572            # (e.g., ERROR or DEGRADED).
573          "message": "A String", # Human-friendly representation of the condition
574          "code": "A String", # Machine-friendly representation of the condition
575        },
576      ],
577      "statusMessage": "A String", # [Output only] Additional information about the current status of this
578          # cluster, if available.
579      "servicesIpv4Cidr": "A String", # [Output only] The IP address range of the Kubernetes services in
580          # this cluster, in
581          # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
582          # notation (e.g. `1.2.3.4/29`). Service addresses are
583          # typically put in the last `/16` from the container CIDR.
584      "status": "A String", # [Output only] The current status of this cluster.
585      "description": "A String", # An optional description of this cluster.
586      "currentNodeVersion": "A String", # [Output only] Deprecated, use
587          # [NodePools.version](/kubernetes-engine/docs/reference/rest/v1/projects.zones.clusters.nodePools)
588          # instead. The current version of the node software components. If they are
589          # currently at multiple versions because they're in the process of being
590          # upgraded, this reflects the minimum version of all nodes.
591      "labelFingerprint": "A String", # The fingerprint of the set of labels for this cluster.
592      "currentMasterVersion": "A String", # [Output only] The current software version of the master endpoint.
593      "masterAuth": { # The authentication information for accessing the master endpoint. # The authentication information for accessing the master endpoint.
594          # If unspecified, the defaults are used:
595          # For clusters before v1.12, if master_auth is unspecified, `username` will
596          # be set to "admin", a random password will be generated, and a client
597          # certificate will be issued.
598          # Authentication can be done using HTTP basic auth or using client
599          # certificates.
600        "username": "A String", # The username to use for HTTP basic authentication to the master endpoint.
601            # For clusters v1.6.0 and later, basic authentication can be disabled by
602            # leaving username unspecified (or setting it to the empty string).
603        "clientKey": "A String", # [Output only] Base64-encoded private key used by clients to authenticate
604            # to the cluster endpoint.
605        "clientCertificate": "A String", # [Output only] Base64-encoded public certificate used by clients to
606            # authenticate to the cluster endpoint.
607        "clientCertificateConfig": { # Configuration for client certificates on the cluster. # Configuration for client certificate authentication on the cluster. For
608            # clusters before v1.12, if no configuration is specified, a client
609            # certificate is issued.
610          "issueClientCertificate": True or False, # Issue a client certificate.
611        },
612        "password": "A String", # The password to use for HTTP basic authentication to the master endpoint.
613            # Because the master endpoint is open to the Internet, you should create a
614            # strong password.  If a password is provided for cluster creation, username
615            # must be non-empty.
616        "clusterCaCertificate": "A String", # [Output only] Base64-encoded public certificate that is the root of
617            # trust for the cluster.
618      },
619      "expireTime": "A String", # [Output only] The time the cluster will be automatically
620          # deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
621      "tpuIpv4CidrBlock": "A String", # [Output only] The IP address range of the Cloud TPUs in this cluster, in
622          # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
623          # notation (e.g. `1.2.3.4/29`).
624      "nodePools": [ # The node pools associated with this cluster.
625          # This field should not be set if "node_config" or "initial_node_count" are
626          # specified.
627        { # NodePool contains the name and configuration for a cluster's node pool.
628            # Node pools are a set of nodes (i.e. VM's), with a common configuration and
629            # specification, under the control of the cluster master. They may have a set
630            # of Kubernetes labels applied to them, which may be used to reference them
631            # during pod scheduling. They may also be resized up or down, to accommodate
632            # the workload.
633          "status": "A String", # [Output only] The status of the nodes in this pool instance.
634          "statusMessage": "A String", # [Output only] Additional information about the current status of this
635              # node pool instance, if available.
636          "name": "A String", # The name of the node pool.
637          "instanceGroupUrls": [ # [Output only] The resource URLs of the [managed instance
638              # groups](/compute/docs/instance-groups/creating-groups-of-managed-instances)
639              # associated with this node pool.
640            "A String",
641          ],
642          "autoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for this NodePool. Autoscaler is enabled
643              # only if a valid configuration is present.
644              # adjust the size of the node pool to the current cluster usage.
645            "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be >= 1 and <=
646                # max_node_count.
647            "enabled": True or False, # Is autoscaling enabled for this node pool.
648            "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There
649                # has to enough quota to scale up the cluster.
650          },
651          "maxPodsConstraint": { # Constraints applied to pods. # The constraint on the maximum number of pods that can be run
652              # simultaneously on a node in the node pool.
653            "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
654          },
655          "version": "A String", # The version of the Kubernetes of this node.
656          "initialNodeCount": 42, # The initial node count for the pool. You must ensure that your
657              # Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
658              # is sufficient for this number of instances. You must also have available
659              # firewall and routes quota.
660          "podIpv4CidrSize": 42, # [Output only] The pod CIDR block size per node in this node pool.
661          "management": { # NodeManagement defines the set of node management services turned on for the # NodeManagement configuration for this NodePool.
662              # node pool.
663            "autoRepair": True or False, # A flag that specifies whether the node auto-repair is enabled for the node
664                # pool. If enabled, the nodes in this node pool will be monitored and, if
665                # they fail health checks too many times, an automatic repair action will be
666                # triggered.
667            "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
668                # the Auto Upgrades will proceed.
669              "description": "A String", # [Output only] This field is set when upgrades are about to commence
670                  # with the description of the upgrade.
671              "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
672                  # with the approximate start time for the upgrades, in
673                  # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
674            },
675            "autoUpgrade": True or False, # A flag that specifies whether node auto-upgrade is enabled for the node
676                # pool. If enabled, node auto-upgrade helps keep the nodes in your node pool
677                # up to date with the latest release version of Kubernetes.
678          },
679          "config": { # Parameters that describe the nodes in a cluster. # The node configuration of the pool.
680            "taints": [ # List of kubernetes taints to be applied to each node.
681                #
682                # For more information, including usage and the valid values, see:
683                # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
684              { # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
685                  # can only be one of three types:  NoSchedule, PreferNoSchedule or NoExecute.
686                  #
687                  # For more information, including usage and the valid values, see:
688                  # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
689                "key": "A String", # Key for taint.
690                "effect": "A String", # Effect for taint.
691                "value": "A String", # Value for taint.
692              },
693            ],
694            "machineType": "A String", # The name of a Google Compute Engine [machine
695                # type](/compute/docs/machine-types) (e.g.
696                # `n1-standard-1`).
697                #
698                # If unspecified, the default machine type is
699                # `n1-standard-1`.
700            "tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
701                # valid sources or targets for network firewalls and are specified by
702                # the client during cluster or node pool creation. Each tag within the list
703                # must comply with RFC1035.
704              "A String",
705            ],
706            "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
707                # https://cloud.google.com/compute/docs/instances/preemptible for more
708                # information about preemptible VM instances.
709            "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
710                # These will added in addition to any default label(s) that
711                # Kubernetes may apply to the node.
712                # In case of conflict in label keys, the applied set may differ depending on
713                # the Kubernetes version -- it's best to assume the behavior is undefined
714                # and conflicts should be avoided.
715                # For more information, including usage and the valid values, see:
716                # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
717              "a_key": "A String",
718            },
719            "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If
720                # no Service Account is specified, the "default" service account is used.
721            "oauthScopes": [ # The set of Google API scopes to be made available on all of the
722                # node VMs under the "default" service account.
723                #
724                # The following scopes are recommended, but not required, and by default are
725                # not included:
726                #
727                # * `https://www.googleapis.com/auth/compute` is required for mounting
728                # persistent storage on your nodes.
729                # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
730                # communicating with **gcr.io**
731                # (the [Google Container Registry](/container-registry/)).
732                #
733                # If unspecified, no scopes are added, unless Cloud Logging or Cloud
734                # Monitoring are enabled, in which case their required scopes will be added.
735              "A String",
736            ],
737            "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
738                #
739                # If unspecified, the default disk type is 'pd-standard'
740            "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
741                # The smallest allowed disk size is 10GB.
742                #
743                # If unspecified, the default disk size is 100GB.
744            "accelerators": [ # A list of hardware accelerators to be attached to each node.
745                # See https://cloud.google.com/compute/docs/gpus for more information about
746                # support for GPUs.
747              { # AcceleratorConfig represents a Hardware Accelerator request.
748                "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
749                "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
750                    # [here](/compute/docs/gpus/#Introduction)
751              },
752            ],
753            "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
754                # scheduled on the specified or newer CPU platform. Applicable values are the
755                # friendly names of CPU platforms, such as
756                # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
757                # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
758                # information, read [how to specify min CPU
759                # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
760            "metadata": { # The metadata key/value pairs assigned to instances in the cluster.
761                #
762                # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
763                # in length. These are reflected as part of a URL in the metadata server.
764                # Additionally, to avoid ambiguity, keys must not conflict with any other
765                # metadata keys for the project or be one of the reserved keys:
766                #  "cluster-location"
767                #  "cluster-name"
768                #  "cluster-uid"
769                #  "configure-sh"
770                #  "containerd-configure-sh"
771                #  "enable-os-login"
772                #  "gci-update-strategy"
773                #  "gci-ensure-gke-docker"
774                #  "instance-template"
775                #  "kube-env"
776                #  "startup-script"
777                #  "user-data"
778                #  "disable-address-manager"
779                #  "windows-startup-script-ps1"
780                #  "common-psm1"
781                #  "k8s-node-setup-psm1"
782                #  "install-ssh-psm1"
783                #  "user-profile-psm1"
784                #  "serial-port-logging-enable"
785                #
786                # Values are free-form strings, and only have meaning as interpreted by
787                # the image running in the instance. The only restriction placed on them is
788                # that each value's size must be less than or equal to 32 KB.
789                #
790                # The total size of all keys and values must be less than 512 KB.
791              "a_key": "A String",
792            },
793            "imageType": "A String", # The image type to use for this node. Note that for a given image type,
794                # the latest version of it will be used.
795            "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
796                #
797                # The limit for this value is dependant upon the maximum number of
798                # disks available on a machine per zone. See:
799                # https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits
800                # for more information.
801          },
802          "conditions": [ # Which conditions caused the current node pool state.
803            { # StatusCondition describes why a cluster or a node pool has a certain status
804                # (e.g., ERROR or DEGRADED).
805              "message": "A String", # Human-friendly representation of the condition
806              "code": "A String", # Machine-friendly representation of the condition
807            },
808          ],
809          "selfLink": "A String", # [Output only] Server-defined URL for the resource.
810        },
811      ],
812      "monitoringService": "A String", # The monitoring service the cluster should use to write metrics.
813          # Currently available options:
814          #
815          # * `monitoring.googleapis.com` - the Google Cloud Monitoring service.
816          # * `none` - no metrics will be exported from the cluster.
817          # * if left as an empty string, `monitoring.googleapis.com` will be used.
818      "createTime": "A String", # [Output only] The time the cluster was created, in
819          # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
820      "legacyAbac": { # Configuration for the legacy Attribute Based Access Control authorization # Configuration for the legacy ABAC authorization mode.
821          # mode.
822        "enabled": True or False, # Whether the ABAC authorizer is enabled for this cluster. When enabled,
823            # identities in the system, including service accounts, nodes, and
824            # controllers, will have statically granted permissions beyond those
825            # provided by the RBAC configuration or IAM.
826      },
827      "privateClusterConfig": { # Configuration options for private clusters. # Configuration for private cluster.
828        "enablePrivateEndpoint": True or False, # Whether the master's internal IP address is used as the cluster endpoint.
829        "masterIpv4CidrBlock": "A String", # The IP range in CIDR notation to use for the hosted master network. This
830            # range will be used for assigning internal IP addresses to the master or
831            # set of masters, as well as the ILB VIP. This range must not overlap with
832            # any other ranges in use within the cluster's network.
833        "privateEndpoint": "A String", # Output only. The internal IP address of this cluster's master endpoint.
834        "publicEndpoint": "A String", # Output only. The external IP address of this cluster's master endpoint.
835        "enablePrivateNodes": True or False, # Whether nodes have internal IP addresses only. If enabled, all nodes are
836            # given only RFC 1918 private addresses and communicate with the master via
837            # private networking.
838      },
839      "endpoint": "A String", # [Output only] The IP address of this cluster's master endpoint.
840          # The endpoint can be accessed from the internet at
841          # `https://username:password@endpoint/`.
842          #
843          # See the `masterAuth` property of this resource for username and
844          # password information.
845      "currentNodeCount": 42, # [Output only]  The number of nodes currently in the cluster. Deprecated.
846          # Call Kubernetes API directly to retrieve node information.
847      "loggingService": "A String", # The logging service the cluster should use to write logs.
848          # Currently available options:
849          #
850          # * "logging.googleapis.com/kubernetes" - the Google Cloud Logging
851          # service with Kubernetes-native resource model in Stackdriver
852          # * `logging.googleapis.com` - the Google Cloud Logging service.
853          # * `none` - no logs will be exported from the cluster.
854          # * if left as an empty string,`logging.googleapis.com` will be used.
855      "location": "A String", # [Output only] The name of the Google Compute Engine
856          # [zone](/compute/docs/regions-zones/regions-zones#available) or
857          # [region](/compute/docs/regions-zones/regions-zones#available) in which
858          # the cluster resides.
859      "initialClusterVersion": "A String", # The initial Kubernetes version for this cluster.  Valid versions are those
860          # found in validMasterVersions returned by getServerConfig.  The version can
861          # be upgraded over time; such upgrades are reflected in
862          # currentMasterVersion and currentNodeVersion.
863          #
864          # Users may specify either explicit versions offered by
865          # Kubernetes Engine or version aliases, which have the following behavior:
866          #
867          # - "latest": picks the highest valid Kubernetes version
868          # - "1.X": picks the highest valid patch+gke.N patch in the 1.X version
869          # - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
870          # - "1.X.Y-gke.N": picks an explicit Kubernetes version
871          # - "","-": picks the default Kubernetes version
872      "nodeConfig": { # Parameters that describe the nodes in a cluster. # Parameters used in creating the cluster's nodes.
873          # For requests, this field should only be used in lieu of a
874          # "node_pool" object, since this configuration (along with the
875          # "initial_node_count") will be used to create a "NodePool" object with an
876          # auto-generated name. Do not use this and a node_pool at the same time.
877          # For responses, this field will be populated with the node configuration of
878          # the first node pool. (For configuration of each node pool, see
879          # `node_pool.config`)
880          #
881          # If unspecified, the defaults are used.
882          # This field is deprecated, use node_pool.config instead.
883        "taints": [ # List of kubernetes taints to be applied to each node.
884            #
885            # For more information, including usage and the valid values, see:
886            # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
887          { # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
888              # can only be one of three types:  NoSchedule, PreferNoSchedule or NoExecute.
889              #
890              # For more information, including usage and the valid values, see:
891              # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
892            "key": "A String", # Key for taint.
893            "effect": "A String", # Effect for taint.
894            "value": "A String", # Value for taint.
895          },
896        ],
897        "machineType": "A String", # The name of a Google Compute Engine [machine
898            # type](/compute/docs/machine-types) (e.g.
899            # `n1-standard-1`).
900            #
901            # If unspecified, the default machine type is
902            # `n1-standard-1`.
903        "tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
904            # valid sources or targets for network firewalls and are specified by
905            # the client during cluster or node pool creation. Each tag within the list
906            # must comply with RFC1035.
907          "A String",
908        ],
909        "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
910            # https://cloud.google.com/compute/docs/instances/preemptible for more
911            # information about preemptible VM instances.
912        "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
913            # These will added in addition to any default label(s) that
914            # Kubernetes may apply to the node.
915            # In case of conflict in label keys, the applied set may differ depending on
916            # the Kubernetes version -- it's best to assume the behavior is undefined
917            # and conflicts should be avoided.
918            # For more information, including usage and the valid values, see:
919            # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
920          "a_key": "A String",
921        },
922        "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If
923            # no Service Account is specified, the "default" service account is used.
924        "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**
934            # (the [Google Container Registry](/container-registry/)).
935            #
936            # If unspecified, no scopes are added, unless Cloud Logging or Cloud
937            # Monitoring are enabled, in which case their required scopes will be added.
938          "A String",
939        ],
940        "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
941            #
942            # If unspecified, the default disk type is 'pd-standard'
943        "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
944            # The smallest allowed disk size is 10GB.
945            #
946            # If unspecified, the default disk size is 100GB.
947        "accelerators": [ # A list of hardware accelerators to be attached to each node.
948            # See https://cloud.google.com/compute/docs/gpus for more information about
949            # support for GPUs.
950          { # AcceleratorConfig represents a Hardware Accelerator request.
951            "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
952            "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
953                # [here](/compute/docs/gpus/#Introduction)
954          },
955        ],
956        "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
957            # scheduled on the specified or newer CPU platform. Applicable values are the
958            # friendly names of CPU platforms, such as
959            # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
960            # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
961            # information, read [how to specify min CPU
962            # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
963        "metadata": { # The metadata key/value pairs assigned to instances in the cluster.
964            #
965            # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
966            # in length. These are reflected as part of a URL in the metadata server.
967            # Additionally, to avoid ambiguity, keys must not conflict with any other
968            # metadata keys for the project or be one of the reserved keys:
969            #  "cluster-location"
970            #  "cluster-name"
971            #  "cluster-uid"
972            #  "configure-sh"
973            #  "containerd-configure-sh"
974            #  "enable-os-login"
975            #  "gci-update-strategy"
976            #  "gci-ensure-gke-docker"
977            #  "instance-template"
978            #  "kube-env"
979            #  "startup-script"
980            #  "user-data"
981            #  "disable-address-manager"
982            #  "windows-startup-script-ps1"
983            #  "common-psm1"
984            #  "k8s-node-setup-psm1"
985            #  "install-ssh-psm1"
986            #  "user-profile-psm1"
987            #  "serial-port-logging-enable"
988            #
989            # Values are free-form strings, and only have meaning as interpreted by
990            # the image running in the instance. The only restriction placed on them is
991            # that each value's size must be less than or equal to 32 KB.
992            #
993            # The total size of all keys and values must be less than 512 KB.
994          "a_key": "A String",
995        },
996        "imageType": "A String", # The image type to use for this node. Note that for a given image type,
997            # the latest version of it will be used.
998        "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
999            #
1000            # The limit for this value is dependant upon the maximum number of
1001            # disks available on a machine per zone. See:
1002            # https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits
1003            # for more information.
1004      },
1005      "clusterIpv4Cidr": "A String", # The IP address range of the container pods in this cluster, in
1006          # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1007          # notation (e.g. `10.96.0.0/14`). Leave blank to have
1008          # one automatically chosen or specify a `/14` block in `10.0.0.0/8`.
1009      "subnetwork": "A String", # The name of the Google Compute Engine
1010          # [subnetwork](/compute/docs/subnetworks) to which the
1011          # cluster is connected.
1012      "resourceLabels": { # The resource labels for the cluster to use to annotate any related
1013          # Google Compute Engine resources.
1014        "a_key": "A String",
1015      },
1016      "selfLink": "A String", # [Output only] Server-defined URL for the resource.
1017      "initialNodeCount": 42, # The number of nodes to create in this cluster. You must ensure that your
1018          # Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
1019          # is sufficient for this number of instances. You must also have available
1020          # firewall and routes quota.
1021          # For requests, this field should only be used in lieu of a
1022          # "node_pool" object, since this configuration (along with the
1023          # "node_config") will be used to create a "NodePool" object with an
1024          # auto-generated name. Do not use this and a node_pool at the same time.
1025          #
1026          # This field is deprecated, use node_pool.initial_node_count instead.
1027    },
1028  }
1029
1030  x__xgafv: string, V1 error format.
1031    Allowed values
1032      1 - v1 error format
1033      2 - v2 error format
1034
1035Returns:
1036  An object of the form:
1037
1038    { # This operation resource represents operations that may have happened or are
1039      # happening on the cluster. All fields are output only.
1040    "status": "A String", # The current status of the operation.
1041    "selfLink": "A String", # Server-defined URL for the resource.
1042    "name": "A String", # The server-assigned ID for the operation.
1043    "zone": "A String", # The name of the Google Compute Engine
1044        # [zone](/compute/docs/zones#available) in which the operation
1045        # is taking place.
1046        # This field is deprecated, use location instead.
1047    "startTime": "A String", # [Output only] The time the operation started, in
1048        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
1049    "detail": "A String", # Detailed operation progress, if available.
1050    "operationType": "A String", # The operation type.
1051    "targetLink": "A String", # Server-defined URL for the target of the operation.
1052    "location": "A String", # [Output only] The name of the Google Compute Engine
1053        # [zone](/compute/docs/regions-zones/regions-zones#available) or
1054        # [region](/compute/docs/regions-zones/regions-zones#available) in which
1055        # the cluster resides.
1056    "nodepoolConditions": [ # Which conditions caused the current node pool state.
1057      { # StatusCondition describes why a cluster or a node pool has a certain status
1058          # (e.g., ERROR or DEGRADED).
1059        "message": "A String", # Human-friendly representation of the condition
1060        "code": "A String", # Machine-friendly representation of the condition
1061      },
1062    ],
1063    "endTime": "A String", # [Output only] The time the operation completed, in
1064        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
1065    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
1066    "clusterConditions": [ # Which conditions caused the current cluster state.
1067      { # StatusCondition describes why a cluster or a node pool has a certain status
1068          # (e.g., ERROR or DEGRADED).
1069        "message": "A String", # Human-friendly representation of the condition
1070        "code": "A String", # Machine-friendly representation of the condition
1071      },
1072    ],
1073  }</pre>
1074</div>
1075
1076<div class="method">
1077    <code class="details" id="delete">delete(projectId, zone, clusterId, name=None, x__xgafv=None)</code>
1078  <pre>Deletes the cluster, including the Kubernetes endpoint and all worker
1079nodes.
1080
1081Firewalls and routes that were configured during cluster creation
1082are also deleted.
1083
1084Other Google Compute Engine resources that might be in use by the cluster,
1085such as load balancer resources, are not deleted if they weren't present
1086when the cluster was initially created.
1087
1088Args:
1089  projectId: string, Deprecated. The Google Developers Console [project ID or project
1090number](https://support.google.com/cloud/answer/6158840).
1091This field has been deprecated and replaced by the name field. (required)
1092  zone: string, Deprecated. The name of the Google Compute Engine
1093[zone](/compute/docs/zones#available) in which the cluster
1094resides.
1095This field has been deprecated and replaced by the name field. (required)
1096  clusterId: string, Deprecated. The name of the cluster to delete.
1097This field has been deprecated and replaced by the name field. (required)
1098  name: string, The name (project, location, cluster) of the cluster to delete.
1099Specified in the format 'projects/*/locations/*/clusters/*'.
1100  x__xgafv: string, V1 error format.
1101    Allowed values
1102      1 - v1 error format
1103      2 - v2 error format
1104
1105Returns:
1106  An object of the form:
1107
1108    { # This operation resource represents operations that may have happened or are
1109      # happening on the cluster. All fields are output only.
1110    "status": "A String", # The current status of the operation.
1111    "selfLink": "A String", # Server-defined URL for the resource.
1112    "name": "A String", # The server-assigned ID for the operation.
1113    "zone": "A String", # The name of the Google Compute Engine
1114        # [zone](/compute/docs/zones#available) in which the operation
1115        # is taking place.
1116        # This field is deprecated, use location instead.
1117    "startTime": "A String", # [Output only] The time the operation started, in
1118        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
1119    "detail": "A String", # Detailed operation progress, if available.
1120    "operationType": "A String", # The operation type.
1121    "targetLink": "A String", # Server-defined URL for the target of the operation.
1122    "location": "A String", # [Output only] The name of the Google Compute Engine
1123        # [zone](/compute/docs/regions-zones/regions-zones#available) or
1124        # [region](/compute/docs/regions-zones/regions-zones#available) in which
1125        # the cluster resides.
1126    "nodepoolConditions": [ # Which conditions caused the current node pool state.
1127      { # StatusCondition describes why a cluster or a node pool has a certain status
1128          # (e.g., ERROR or DEGRADED).
1129        "message": "A String", # Human-friendly representation of the condition
1130        "code": "A String", # Machine-friendly representation of the condition
1131      },
1132    ],
1133    "endTime": "A String", # [Output only] The time the operation completed, in
1134        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
1135    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
1136    "clusterConditions": [ # Which conditions caused the current cluster state.
1137      { # StatusCondition describes why a cluster or a node pool has a certain status
1138          # (e.g., ERROR or DEGRADED).
1139        "message": "A String", # Human-friendly representation of the condition
1140        "code": "A String", # Machine-friendly representation of the condition
1141      },
1142    ],
1143  }</pre>
1144</div>
1145
1146<div class="method">
1147    <code class="details" id="get">get(projectId, zone, clusterId, name=None, x__xgafv=None)</code>
1148  <pre>Gets the details of a specific cluster.
1149
1150Args:
1151  projectId: string, Deprecated. The Google Developers Console [project ID or project
1152number](https://support.google.com/cloud/answer/6158840).
1153This field has been deprecated and replaced by the name field. (required)
1154  zone: string, Deprecated. The name of the Google Compute Engine
1155[zone](/compute/docs/zones#available) in which the cluster
1156resides.
1157This field has been deprecated and replaced by the name field. (required)
1158  clusterId: string, Deprecated. The name of the cluster to retrieve.
1159This field has been deprecated and replaced by the name field. (required)
1160  name: string, The name (project, location, cluster) of the cluster to retrieve.
1161Specified in the format 'projects/*/locations/*/clusters/*'.
1162  x__xgafv: string, V1 error format.
1163    Allowed values
1164      1 - v1 error format
1165      2 - v2 error format
1166
1167Returns:
1168  An object of the form:
1169
1170    { # A Google Kubernetes Engine cluster.
1171    "nodeIpv4CidrSize": 42, # [Output only] The size of the address space on each node for hosting
1172        # containers. This is provisioned from within the `container_ipv4_cidr`
1173        # range. This field will only be set when cluster is in route-based network
1174        # mode.
1175    "maintenancePolicy": { # MaintenancePolicy defines the maintenance policy to be used for the cluster. # Configure the maintenance policy for this cluster.
1176      "window": { # MaintenanceWindow defines the maintenance window to be used for the cluster. # Specifies the maintenance window in which maintenance may be performed.
1177        "dailyMaintenanceWindow": { # Time window specified for daily maintenance operations. # DailyMaintenanceWindow specifies a daily maintenance operation window.
1178          "duration": "A String", # [Output only] Duration of the time window, automatically chosen to be
1179              # smallest possible in the given scenario.
1180              # Duration will be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
1181              # format "PTnHnMnS".
1182          "startTime": "A String", # Time within the maintenance window to start the maintenance operations.
1183              # Time format should be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
1184              # format "HH:MM", where HH : [00-23] and MM : [00-59] GMT.
1185        },
1186      },
1187    },
1188    "networkPolicy": { # Configuration options for the NetworkPolicy feature. # Configuration options for the NetworkPolicy feature.
1189        # https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
1190      "enabled": True or False, # Whether network policy is enabled on the cluster.
1191      "provider": "A String", # The selected network policy provider.
1192    },
1193    "masterAuthorizedNetworksConfig": { # Configuration options for the master authorized networks feature. Enabled # The configuration options for master authorized networks feature.
1194        # master authorized networks will disallow all external traffic to access
1195        # Kubernetes master through HTTPS except traffic from the given CIDR blocks,
1196        # Google Compute Engine Public IPs and Google Prod IPs.
1197      "enabled": True or False, # Whether or not master authorized networks is enabled.
1198      "cidrBlocks": [ # cidr_blocks define up to 50 external networks that could access
1199          # Kubernetes master through HTTPS.
1200        { # CidrBlock contains an optional name and one CIDR block.
1201          "displayName": "A String", # display_name is an optional field for users to identify CIDR blocks.
1202          "cidrBlock": "A String", # cidr_block must be specified in CIDR notation.
1203        },
1204      ],
1205    },
1206    "addonsConfig": { # Configuration for the addons that can be automatically spun up in the # Configurations for the various addons available to run in the cluster.
1207        # cluster, enabling additional functionality.
1208      "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
1209          # makes it easy to set up HTTP load balancers for services in a cluster.
1210          # which makes it easy to set up HTTP load balancers for services in a cluster.
1211        "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
1212            # When enabled, it runs a small pod in the cluster that manages the load
1213            # balancers.
1214      },
1215      "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
1216          # is enabled or not on the Master, it does not track whether network policy
1217          # is enabled for the nodes.
1218          # is enabled or not on the Master, it does not track whether network policy
1219          # is enabled for the nodes.
1220        "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
1221      },
1222      "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
1223          # This addon is deprecated, and will be disabled in 1.15. It is recommended
1224          # to use the Cloud Console to manage and monitor your Kubernetes clusters,
1225          # workloads and applications. For more information, see:
1226          # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
1227        "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
1228      },
1229      "horizontalPodAutoscaling": { # Configuration options for the horizontal pod autoscaling feature, which # Configuration for the horizontal pod autoscaling feature, which
1230          # increases or decreases the number of replica pods a replication controller
1231          # has based on the resource usage of the existing pods.
1232          # increases or decreases the number of replica pods a replication controller
1233          # has based on the resource usage of the existing pods.
1234        "disabled": True or False, # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
1235            # When enabled, it ensures that a Heapster pod is running in the cluster,
1236            # which is also used by the Cloud Monitoring service.
1237      },
1238    },
1239    "locations": [ # The list of Google Compute Engine
1240        # [zones](/compute/docs/zones#available) in which the cluster's nodes
1241        # should be located.
1242      "A String",
1243    ],
1244    "enableKubernetesAlpha": True or False, # Kubernetes alpha features are enabled on this cluster. This includes alpha
1245        # API groups (e.g. v1alpha1) and features that may not be production ready in
1246        # the kubernetes version of the master and nodes.
1247        # The cluster has no SLA for uptime and master/node upgrades are disabled.
1248        # Alpha enabled clusters are automatically deleted thirty days after
1249        # creation.
1250    "defaultMaxPodsConstraint": { # Constraints applied to pods. # The default constraint on the maximum number of pods that can be run
1251        # simultaneously on a node in the node pool of this cluster. Only honored
1252        # if cluster created with IP Alias support.
1253      "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
1254    },
1255    "network": "A String", # The name of the Google Compute Engine
1256        # [network](/compute/docs/networks-and-firewalls#networks) to which the
1257        # cluster is connected. If left unspecified, the `default` network
1258        # will be used.
1259    "zone": "A String", # [Output only] The name of the Google Compute Engine
1260        # [zone](/compute/docs/zones#available) in which the cluster
1261        # resides.
1262        # This field is deprecated, use location instead.
1263    "instanceGroupUrls": [ # Deprecated. Use node_pools.instance_group_urls.
1264      "A String",
1265    ],
1266    "networkConfig": { # NetworkConfig reports the relative names of network & subnetwork. # Configuration for cluster networking.
1267      "subnetwork": "A String", # Output only. The relative name of the Google Compute Engine
1268          # [subnetwork](/compute/docs/vpc) to which the cluster is connected.
1269          # Example: projects/my-project/regions/us-central1/subnetworks/my-subnet
1270      "network": "A String", # Output only. The relative name of the Google Compute Engine
1271          # network(/compute/docs/networks-and-firewalls#networks) to which
1272          # the cluster is connected.
1273          # Example: projects/my-project/global/networks/my-network
1274    },
1275    "name": "A String", # The name of this cluster. The name must be unique within this project
1276        # and zone, and can be up to 40 characters with the following restrictions:
1277        #
1278        # * Lowercase letters, numbers, and hyphens only.
1279        # * Must start with a letter.
1280        # * Must end with a number or a letter.
1281    "ipAllocationPolicy": { # Configuration for controlling how IPs are allocated in the cluster. # Configuration for cluster IP allocation.
1282      "nodeIpv4Cidr": "A String", # This field is deprecated, use node_ipv4_cidr_block.
1283      "useIpAliases": True or False, # Whether alias IPs will be used for pod IPs in the cluster.
1284      "clusterSecondaryRangeName": "A String", # The name of the secondary range to be used for the cluster CIDR
1285          # block.  The secondary range will be used for pod IP
1286          # addresses. This must be an existing secondary range associated
1287          # with the cluster subnetwork.
1288          #
1289          # This field is only applicable with use_ip_aliases is true and
1290          # create_subnetwork is false.
1291      "clusterIpv4CidrBlock": "A String", # The IP address range for the cluster pod IPs. If this field is set, then
1292          # `cluster.cluster_ipv4_cidr` must be left blank.
1293          #
1294          # This field is only applicable when `use_ip_aliases` is true.
1295          #
1296          # Set to blank to have a range chosen with the default size.
1297          #
1298          # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
1299          # netmask.
1300          #
1301          # Set to a
1302          # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1303          # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
1304          # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
1305          # to use.
1306      "servicesIpv4CidrBlock": "A String", # The IP address range of the services IPs in this cluster. If blank, a range
1307          # will be automatically chosen with the default size.
1308          #
1309          # This field is only applicable when `use_ip_aliases` is true.
1310          #
1311          # Set to blank to have a range chosen with the default size.
1312          #
1313          # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
1314          # netmask.
1315          #
1316          # Set to a
1317          # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1318          # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
1319          # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
1320          # to use.
1321      "createSubnetwork": True or False, # Whether a new subnetwork will be created automatically for the cluster.
1322          #
1323          # This field is only applicable when `use_ip_aliases` is true.
1324      "nodeIpv4CidrBlock": "A String", # The IP address range of the instance IPs in this cluster.
1325          #
1326          # This is applicable only if `create_subnetwork` is true.
1327          #
1328          # Set to blank to have a range chosen with the default size.
1329          #
1330          # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
1331          # netmask.
1332          #
1333          # Set to a
1334          # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1335          # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
1336          # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
1337          # to use.
1338      "tpuIpv4CidrBlock": "A String", # The IP address range of the Cloud TPUs in this cluster. If unspecified, a
1339          # range will be automatically chosen with the default size.
1340          #
1341          # This field is only applicable when `use_ip_aliases` is true.
1342          #
1343          # If unspecified, the range will use the default size.
1344          #
1345          # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
1346          # netmask.
1347          #
1348          # Set to a
1349          # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1350          # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
1351          # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
1352          # to use.
1353      "clusterIpv4Cidr": "A String", # This field is deprecated, use cluster_ipv4_cidr_block.
1354      "subnetworkName": "A String", # A custom subnetwork name to be used if `create_subnetwork` is true.  If
1355          # this field is empty, then an automatic name will be chosen for the new
1356          # subnetwork.
1357      "servicesSecondaryRangeName": "A String", # The name of the secondary range to be used as for the services
1358          # CIDR block.  The secondary range will be used for service
1359          # ClusterIPs. This must be an existing secondary range associated
1360          # with the cluster subnetwork.
1361          #
1362          # This field is only applicable with use_ip_aliases is true and
1363          # create_subnetwork is false.
1364      "servicesIpv4Cidr": "A String", # This field is deprecated, use services_ipv4_cidr_block.
1365    },
1366    "resourceUsageExportConfig": { # Configuration for exporting cluster resource usages. # Configuration for exporting resource usages. Resource usage export is
1367        # disabled when this config is unspecified.
1368      "bigqueryDestination": { # Parameters for using BigQuery as the destination of resource usage export. # Configuration to use BigQuery as usage export destination.
1369        "datasetId": "A String", # The ID of a BigQuery Dataset.
1370      },
1371      "enableNetworkEgressMetering": True or False, # Whether to enable network egress metering for this cluster. If enabled, a
1372          # daemonset will be created in the cluster to meter network egress traffic.
1373      "consumptionMeteringConfig": { # Parameters for controlling consumption metering. # Configuration to enable resource consumption metering.
1374        "enabled": True or False, # Whether to enable consumption metering for this cluster. If enabled, a
1375            # second BigQuery table will be created to hold resource consumption
1376            # records.
1377      },
1378    },
1379    "enableTpu": True or False, # Enable the ability to use Cloud TPUs in this cluster.
1380    "conditions": [ # Which conditions caused the current cluster state.
1381      { # StatusCondition describes why a cluster or a node pool has a certain status
1382          # (e.g., ERROR or DEGRADED).
1383        "message": "A String", # Human-friendly representation of the condition
1384        "code": "A String", # Machine-friendly representation of the condition
1385      },
1386    ],
1387    "statusMessage": "A String", # [Output only] Additional information about the current status of this
1388        # cluster, if available.
1389    "servicesIpv4Cidr": "A String", # [Output only] The IP address range of the Kubernetes services in
1390        # this cluster, in
1391        # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1392        # notation (e.g. `1.2.3.4/29`). Service addresses are
1393        # typically put in the last `/16` from the container CIDR.
1394    "status": "A String", # [Output only] The current status of this cluster.
1395    "description": "A String", # An optional description of this cluster.
1396    "currentNodeVersion": "A String", # [Output only] Deprecated, use
1397        # [NodePools.version](/kubernetes-engine/docs/reference/rest/v1/projects.zones.clusters.nodePools)
1398        # instead. The current version of the node software components. If they are
1399        # currently at multiple versions because they're in the process of being
1400        # upgraded, this reflects the minimum version of all nodes.
1401    "labelFingerprint": "A String", # The fingerprint of the set of labels for this cluster.
1402    "currentMasterVersion": "A String", # [Output only] The current software version of the master endpoint.
1403    "masterAuth": { # The authentication information for accessing the master endpoint. # The authentication information for accessing the master endpoint.
1404        # If unspecified, the defaults are used:
1405        # For clusters before v1.12, if master_auth is unspecified, `username` will
1406        # be set to "admin", a random password will be generated, and a client
1407        # certificate will be issued.
1408        # Authentication can be done using HTTP basic auth or using client
1409        # certificates.
1410      "username": "A String", # The username to use for HTTP basic authentication to the master endpoint.
1411          # For clusters v1.6.0 and later, basic authentication can be disabled by
1412          # leaving username unspecified (or setting it to the empty string).
1413      "clientKey": "A String", # [Output only] Base64-encoded private key used by clients to authenticate
1414          # to the cluster endpoint.
1415      "clientCertificate": "A String", # [Output only] Base64-encoded public certificate used by clients to
1416          # authenticate to the cluster endpoint.
1417      "clientCertificateConfig": { # Configuration for client certificates on the cluster. # Configuration for client certificate authentication on the cluster. For
1418          # clusters before v1.12, if no configuration is specified, a client
1419          # certificate is issued.
1420        "issueClientCertificate": True or False, # Issue a client certificate.
1421      },
1422      "password": "A String", # The password to use for HTTP basic authentication to the master endpoint.
1423          # Because the master endpoint is open to the Internet, you should create a
1424          # strong password.  If a password is provided for cluster creation, username
1425          # must be non-empty.
1426      "clusterCaCertificate": "A String", # [Output only] Base64-encoded public certificate that is the root of
1427          # trust for the cluster.
1428    },
1429    "expireTime": "A String", # [Output only] The time the cluster will be automatically
1430        # deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
1431    "tpuIpv4CidrBlock": "A String", # [Output only] The IP address range of the Cloud TPUs in this cluster, in
1432        # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1433        # notation (e.g. `1.2.3.4/29`).
1434    "nodePools": [ # The node pools associated with this cluster.
1435        # This field should not be set if "node_config" or "initial_node_count" are
1436        # specified.
1437      { # NodePool contains the name and configuration for a cluster's node pool.
1438          # Node pools are a set of nodes (i.e. VM's), with a common configuration and
1439          # specification, under the control of the cluster master. They may have a set
1440          # of Kubernetes labels applied to them, which may be used to reference them
1441          # during pod scheduling. They may also be resized up or down, to accommodate
1442          # the workload.
1443        "status": "A String", # [Output only] The status of the nodes in this pool instance.
1444        "statusMessage": "A String", # [Output only] Additional information about the current status of this
1445            # node pool instance, if available.
1446        "name": "A String", # The name of the node pool.
1447        "instanceGroupUrls": [ # [Output only] The resource URLs of the [managed instance
1448            # groups](/compute/docs/instance-groups/creating-groups-of-managed-instances)
1449            # associated with this node pool.
1450          "A String",
1451        ],
1452        "autoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for this NodePool. Autoscaler is enabled
1453            # only if a valid configuration is present.
1454            # adjust the size of the node pool to the current cluster usage.
1455          "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be >= 1 and <=
1456              # max_node_count.
1457          "enabled": True or False, # Is autoscaling enabled for this node pool.
1458          "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There
1459              # has to enough quota to scale up the cluster.
1460        },
1461        "maxPodsConstraint": { # Constraints applied to pods. # The constraint on the maximum number of pods that can be run
1462            # simultaneously on a node in the node pool.
1463          "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
1464        },
1465        "version": "A String", # The version of the Kubernetes of this node.
1466        "initialNodeCount": 42, # The initial node count for the pool. You must ensure that your
1467            # Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
1468            # is sufficient for this number of instances. You must also have available
1469            # firewall and routes quota.
1470        "podIpv4CidrSize": 42, # [Output only] The pod CIDR block size per node in this node pool.
1471        "management": { # NodeManagement defines the set of node management services turned on for the # NodeManagement configuration for this NodePool.
1472            # node pool.
1473          "autoRepair": True or False, # A flag that specifies whether the node auto-repair is enabled for the node
1474              # pool. If enabled, the nodes in this node pool will be monitored and, if
1475              # they fail health checks too many times, an automatic repair action will be
1476              # triggered.
1477          "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
1478              # the Auto Upgrades will proceed.
1479            "description": "A String", # [Output only] This field is set when upgrades are about to commence
1480                # with the description of the upgrade.
1481            "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
1482                # with the approximate start time for the upgrades, in
1483                # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
1484          },
1485          "autoUpgrade": True or False, # A flag that specifies whether node auto-upgrade is enabled for the node
1486              # pool. If enabled, node auto-upgrade helps keep the nodes in your node pool
1487              # up to date with the latest release version of Kubernetes.
1488        },
1489        "config": { # Parameters that describe the nodes in a cluster. # The node configuration of the pool.
1490          "taints": [ # List of kubernetes taints to be applied to each node.
1491              #
1492              # For more information, including usage and the valid values, see:
1493              # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
1494            { # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
1495                # can only be one of three types:  NoSchedule, PreferNoSchedule or NoExecute.
1496                #
1497                # For more information, including usage and the valid values, see:
1498                # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
1499              "key": "A String", # Key for taint.
1500              "effect": "A String", # Effect for taint.
1501              "value": "A String", # Value for taint.
1502            },
1503          ],
1504          "machineType": "A String", # The name of a Google Compute Engine [machine
1505              # type](/compute/docs/machine-types) (e.g.
1506              # `n1-standard-1`).
1507              #
1508              # If unspecified, the default machine type is
1509              # `n1-standard-1`.
1510          "tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
1511              # valid sources or targets for network firewalls and are specified by
1512              # the client during cluster or node pool creation. Each tag within the list
1513              # must comply with RFC1035.
1514            "A String",
1515          ],
1516          "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
1517              # https://cloud.google.com/compute/docs/instances/preemptible for more
1518              # information about preemptible VM instances.
1519          "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
1520              # These will added in addition to any default label(s) that
1521              # Kubernetes may apply to the node.
1522              # In case of conflict in label keys, the applied set may differ depending on
1523              # the Kubernetes version -- it's best to assume the behavior is undefined
1524              # and conflicts should be avoided.
1525              # For more information, including usage and the valid values, see:
1526              # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
1527            "a_key": "A String",
1528          },
1529          "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If
1530              # no Service Account is specified, the "default" service account is used.
1531          "oauthScopes": [ # The set of Google API scopes to be made available on all of the
1532              # node VMs under the "default" service account.
1533              #
1534              # The following scopes are recommended, but not required, and by default are
1535              # not included:
1536              #
1537              # * `https://www.googleapis.com/auth/compute` is required for mounting
1538              # persistent storage on your nodes.
1539              # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
1540              # communicating with **gcr.io**
1541              # (the [Google Container Registry](/container-registry/)).
1542              #
1543              # If unspecified, no scopes are added, unless Cloud Logging or Cloud
1544              # Monitoring are enabled, in which case their required scopes will be added.
1545            "A String",
1546          ],
1547          "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
1548              #
1549              # If unspecified, the default disk type is 'pd-standard'
1550          "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
1551              # The smallest allowed disk size is 10GB.
1552              #
1553              # If unspecified, the default disk size is 100GB.
1554          "accelerators": [ # A list of hardware accelerators to be attached to each node.
1555              # See https://cloud.google.com/compute/docs/gpus for more information about
1556              # support for GPUs.
1557            { # AcceleratorConfig represents a Hardware Accelerator request.
1558              "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
1559              "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
1560                  # [here](/compute/docs/gpus/#Introduction)
1561            },
1562          ],
1563          "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
1564              # scheduled on the specified or newer CPU platform. Applicable values are the
1565              # friendly names of CPU platforms, such as
1566              # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
1567              # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
1568              # information, read [how to specify min CPU
1569              # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
1570          "metadata": { # The metadata key/value pairs assigned to instances in the cluster.
1571              #
1572              # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
1573              # in length. These are reflected as part of a URL in the metadata server.
1574              # Additionally, to avoid ambiguity, keys must not conflict with any other
1575              # metadata keys for the project or be one of the reserved keys:
1576              #  "cluster-location"
1577              #  "cluster-name"
1578              #  "cluster-uid"
1579              #  "configure-sh"
1580              #  "containerd-configure-sh"
1581              #  "enable-os-login"
1582              #  "gci-update-strategy"
1583              #  "gci-ensure-gke-docker"
1584              #  "instance-template"
1585              #  "kube-env"
1586              #  "startup-script"
1587              #  "user-data"
1588              #  "disable-address-manager"
1589              #  "windows-startup-script-ps1"
1590              #  "common-psm1"
1591              #  "k8s-node-setup-psm1"
1592              #  "install-ssh-psm1"
1593              #  "user-profile-psm1"
1594              #  "serial-port-logging-enable"
1595              #
1596              # Values are free-form strings, and only have meaning as interpreted by
1597              # the image running in the instance. The only restriction placed on them is
1598              # that each value's size must be less than or equal to 32 KB.
1599              #
1600              # The total size of all keys and values must be less than 512 KB.
1601            "a_key": "A String",
1602          },
1603          "imageType": "A String", # The image type to use for this node. Note that for a given image type,
1604              # the latest version of it will be used.
1605          "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
1606              #
1607              # The limit for this value is dependant upon the maximum number of
1608              # disks available on a machine per zone. See:
1609              # https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits
1610              # for more information.
1611        },
1612        "conditions": [ # Which conditions caused the current node pool state.
1613          { # StatusCondition describes why a cluster or a node pool has a certain status
1614              # (e.g., ERROR or DEGRADED).
1615            "message": "A String", # Human-friendly representation of the condition
1616            "code": "A String", # Machine-friendly representation of the condition
1617          },
1618        ],
1619        "selfLink": "A String", # [Output only] Server-defined URL for the resource.
1620      },
1621    ],
1622    "monitoringService": "A String", # The monitoring service the cluster should use to write metrics.
1623        # Currently available options:
1624        #
1625        # * `monitoring.googleapis.com` - the Google Cloud Monitoring service.
1626        # * `none` - no metrics will be exported from the cluster.
1627        # * if left as an empty string, `monitoring.googleapis.com` will be used.
1628    "createTime": "A String", # [Output only] The time the cluster was created, in
1629        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
1630    "legacyAbac": { # Configuration for the legacy Attribute Based Access Control authorization # Configuration for the legacy ABAC authorization mode.
1631        # mode.
1632      "enabled": True or False, # Whether the ABAC authorizer is enabled for this cluster. When enabled,
1633          # identities in the system, including service accounts, nodes, and
1634          # controllers, will have statically granted permissions beyond those
1635          # provided by the RBAC configuration or IAM.
1636    },
1637    "privateClusterConfig": { # Configuration options for private clusters. # Configuration for private cluster.
1638      "enablePrivateEndpoint": True or False, # Whether the master's internal IP address is used as the cluster endpoint.
1639      "masterIpv4CidrBlock": "A String", # The IP range in CIDR notation to use for the hosted master network. This
1640          # range will be used for assigning internal IP addresses to the master or
1641          # set of masters, as well as the ILB VIP. This range must not overlap with
1642          # any other ranges in use within the cluster's network.
1643      "privateEndpoint": "A String", # Output only. The internal IP address of this cluster's master endpoint.
1644      "publicEndpoint": "A String", # Output only. The external IP address of this cluster's master endpoint.
1645      "enablePrivateNodes": True or False, # Whether nodes have internal IP addresses only. If enabled, all nodes are
1646          # given only RFC 1918 private addresses and communicate with the master via
1647          # private networking.
1648    },
1649    "endpoint": "A String", # [Output only] The IP address of this cluster's master endpoint.
1650        # The endpoint can be accessed from the internet at
1651        # `https://username:password@endpoint/`.
1652        #
1653        # See the `masterAuth` property of this resource for username and
1654        # password information.
1655    "currentNodeCount": 42, # [Output only]  The number of nodes currently in the cluster. Deprecated.
1656        # Call Kubernetes API directly to retrieve node information.
1657    "loggingService": "A String", # The logging service the cluster should use to write logs.
1658        # Currently available options:
1659        #
1660        # * "logging.googleapis.com/kubernetes" - the Google Cloud Logging
1661        # service with Kubernetes-native resource model in Stackdriver
1662        # * `logging.googleapis.com` - the Google Cloud Logging service.
1663        # * `none` - no logs will be exported from the cluster.
1664        # * if left as an empty string,`logging.googleapis.com` will be used.
1665    "location": "A String", # [Output only] The name of the Google Compute Engine
1666        # [zone](/compute/docs/regions-zones/regions-zones#available) or
1667        # [region](/compute/docs/regions-zones/regions-zones#available) in which
1668        # the cluster resides.
1669    "initialClusterVersion": "A String", # The initial Kubernetes version for this cluster.  Valid versions are those
1670        # found in validMasterVersions returned by getServerConfig.  The version can
1671        # be upgraded over time; such upgrades are reflected in
1672        # currentMasterVersion and currentNodeVersion.
1673        #
1674        # Users may specify either explicit versions offered by
1675        # Kubernetes Engine or version aliases, which have the following behavior:
1676        #
1677        # - "latest": picks the highest valid Kubernetes version
1678        # - "1.X": picks the highest valid patch+gke.N patch in the 1.X version
1679        # - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
1680        # - "1.X.Y-gke.N": picks an explicit Kubernetes version
1681        # - "","-": picks the default Kubernetes version
1682    "nodeConfig": { # Parameters that describe the nodes in a cluster. # Parameters used in creating the cluster's nodes.
1683        # For requests, this field should only be used in lieu of a
1684        # "node_pool" object, since this configuration (along with the
1685        # "initial_node_count") will be used to create a "NodePool" object with an
1686        # auto-generated name. Do not use this and a node_pool at the same time.
1687        # For responses, this field will be populated with the node configuration of
1688        # the first node pool. (For configuration of each node pool, see
1689        # `node_pool.config`)
1690        #
1691        # If unspecified, the defaults are used.
1692        # This field is deprecated, use node_pool.config instead.
1693      "taints": [ # List of kubernetes taints to be applied to each node.
1694          #
1695          # For more information, including usage and the valid values, see:
1696          # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
1697        { # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
1698            # can only be one of three types:  NoSchedule, PreferNoSchedule or NoExecute.
1699            #
1700            # For more information, including usage and the valid values, see:
1701            # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
1702          "key": "A String", # Key for taint.
1703          "effect": "A String", # Effect for taint.
1704          "value": "A String", # Value for taint.
1705        },
1706      ],
1707      "machineType": "A String", # The name of a Google Compute Engine [machine
1708          # type](/compute/docs/machine-types) (e.g.
1709          # `n1-standard-1`).
1710          #
1711          # If unspecified, the default machine type is
1712          # `n1-standard-1`.
1713      "tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
1714          # valid sources or targets for network firewalls and are specified by
1715          # the client during cluster or node pool creation. Each tag within the list
1716          # must comply with RFC1035.
1717        "A String",
1718      ],
1719      "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
1720          # https://cloud.google.com/compute/docs/instances/preemptible for more
1721          # information about preemptible VM instances.
1722      "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
1723          # These will added in addition to any default label(s) that
1724          # Kubernetes may apply to the node.
1725          # In case of conflict in label keys, the applied set may differ depending on
1726          # the Kubernetes version -- it's best to assume the behavior is undefined
1727          # and conflicts should be avoided.
1728          # For more information, including usage and the valid values, see:
1729          # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
1730        "a_key": "A String",
1731      },
1732      "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If
1733          # no Service Account is specified, the "default" service account is used.
1734      "oauthScopes": [ # The set of Google API scopes to be made available on all of the
1735          # node VMs under the "default" service account.
1736          #
1737          # The following scopes are recommended, but not required, and by default are
1738          # not included:
1739          #
1740          # * `https://www.googleapis.com/auth/compute` is required for mounting
1741          # persistent storage on your nodes.
1742          # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
1743          # communicating with **gcr.io**
1744          # (the [Google Container Registry](/container-registry/)).
1745          #
1746          # If unspecified, no scopes are added, unless Cloud Logging or Cloud
1747          # Monitoring are enabled, in which case their required scopes will be added.
1748        "A String",
1749      ],
1750      "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
1751          #
1752          # If unspecified, the default disk type is 'pd-standard'
1753      "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
1754          # The smallest allowed disk size is 10GB.
1755          #
1756          # If unspecified, the default disk size is 100GB.
1757      "accelerators": [ # A list of hardware accelerators to be attached to each node.
1758          # See https://cloud.google.com/compute/docs/gpus for more information about
1759          # support for GPUs.
1760        { # AcceleratorConfig represents a Hardware Accelerator request.
1761          "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
1762          "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
1763              # [here](/compute/docs/gpus/#Introduction)
1764        },
1765      ],
1766      "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
1767          # scheduled on the specified or newer CPU platform. Applicable values are the
1768          # friendly names of CPU platforms, such as
1769          # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
1770          # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
1771          # information, read [how to specify min CPU
1772          # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
1773      "metadata": { # The metadata key/value pairs assigned to instances in the cluster.
1774          #
1775          # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
1776          # in length. These are reflected as part of a URL in the metadata server.
1777          # Additionally, to avoid ambiguity, keys must not conflict with any other
1778          # metadata keys for the project or be one of the reserved keys:
1779          #  "cluster-location"
1780          #  "cluster-name"
1781          #  "cluster-uid"
1782          #  "configure-sh"
1783          #  "containerd-configure-sh"
1784          #  "enable-os-login"
1785          #  "gci-update-strategy"
1786          #  "gci-ensure-gke-docker"
1787          #  "instance-template"
1788          #  "kube-env"
1789          #  "startup-script"
1790          #  "user-data"
1791          #  "disable-address-manager"
1792          #  "windows-startup-script-ps1"
1793          #  "common-psm1"
1794          #  "k8s-node-setup-psm1"
1795          #  "install-ssh-psm1"
1796          #  "user-profile-psm1"
1797          #  "serial-port-logging-enable"
1798          #
1799          # Values are free-form strings, and only have meaning as interpreted by
1800          # the image running in the instance. The only restriction placed on them is
1801          # that each value's size must be less than or equal to 32 KB.
1802          #
1803          # The total size of all keys and values must be less than 512 KB.
1804        "a_key": "A String",
1805      },
1806      "imageType": "A String", # The image type to use for this node. Note that for a given image type,
1807          # the latest version of it will be used.
1808      "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
1809          #
1810          # The limit for this value is dependant upon the maximum number of
1811          # disks available on a machine per zone. See:
1812          # https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits
1813          # for more information.
1814    },
1815    "clusterIpv4Cidr": "A String", # The IP address range of the container pods in this cluster, in
1816        # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1817        # notation (e.g. `10.96.0.0/14`). Leave blank to have
1818        # one automatically chosen or specify a `/14` block in `10.0.0.0/8`.
1819    "subnetwork": "A String", # The name of the Google Compute Engine
1820        # [subnetwork](/compute/docs/subnetworks) to which the
1821        # cluster is connected.
1822    "resourceLabels": { # The resource labels for the cluster to use to annotate any related
1823        # Google Compute Engine resources.
1824      "a_key": "A String",
1825    },
1826    "selfLink": "A String", # [Output only] Server-defined URL for the resource.
1827    "initialNodeCount": 42, # The number of nodes to create in this cluster. You must ensure that your
1828        # Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
1829        # is sufficient for this number of instances. You must also have available
1830        # firewall and routes quota.
1831        # For requests, this field should only be used in lieu of a
1832        # "node_pool" object, since this configuration (along with the
1833        # "node_config") will be used to create a "NodePool" object with an
1834        # auto-generated name. Do not use this and a node_pool at the same time.
1835        #
1836        # This field is deprecated, use node_pool.initial_node_count instead.
1837  }</pre>
1838</div>
1839
1840<div class="method">
1841    <code class="details" id="legacyAbac">legacyAbac(projectId, zone, clusterId, body, x__xgafv=None)</code>
1842  <pre>Enables or disables the ABAC authorization mechanism on a cluster.
1843
1844Args:
1845  projectId: string, Deprecated. The Google Developers Console [project ID or project
1846number](https://support.google.com/cloud/answer/6158840).
1847This field has been deprecated and replaced by the name field. (required)
1848  zone: string, Deprecated. The name of the Google Compute Engine
1849[zone](/compute/docs/zones#available) in which the cluster
1850resides.
1851This field has been deprecated and replaced by the name field. (required)
1852  clusterId: string, Deprecated. The name of the cluster to update.
1853This field has been deprecated and replaced by the name field. (required)
1854  body: object, The request body. (required)
1855    The object takes the form of:
1856
1857{ # SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for
1858      # a cluster.
1859    "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
1860        # number](https://support.google.com/cloud/answer/6158840).
1861        # This field has been deprecated and replaced by the name field.
1862    "clusterId": "A String", # Deprecated. The name of the cluster to update.
1863        # This field has been deprecated and replaced by the name field.
1864    "enabled": True or False, # Whether ABAC authorization will be enabled in the cluster.
1865    "name": "A String", # The name (project, location, cluster id) of the cluster to set legacy abac.
1866        # Specified in the format 'projects/*/locations/*/clusters/*'.
1867    "zone": "A String", # Deprecated. The name of the Google Compute Engine
1868        # [zone](/compute/docs/zones#available) in which the cluster
1869        # resides.
1870        # This field has been deprecated and replaced by the name field.
1871  }
1872
1873  x__xgafv: string, V1 error format.
1874    Allowed values
1875      1 - v1 error format
1876      2 - v2 error format
1877
1878Returns:
1879  An object of the form:
1880
1881    { # This operation resource represents operations that may have happened or are
1882      # happening on the cluster. All fields are output only.
1883    "status": "A String", # The current status of the operation.
1884    "selfLink": "A String", # Server-defined URL for the resource.
1885    "name": "A String", # The server-assigned ID for the operation.
1886    "zone": "A String", # The name of the Google Compute Engine
1887        # [zone](/compute/docs/zones#available) in which the operation
1888        # is taking place.
1889        # This field is deprecated, use location instead.
1890    "startTime": "A String", # [Output only] The time the operation started, in
1891        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
1892    "detail": "A String", # Detailed operation progress, if available.
1893    "operationType": "A String", # The operation type.
1894    "targetLink": "A String", # Server-defined URL for the target of the operation.
1895    "location": "A String", # [Output only] The name of the Google Compute Engine
1896        # [zone](/compute/docs/regions-zones/regions-zones#available) or
1897        # [region](/compute/docs/regions-zones/regions-zones#available) in which
1898        # the cluster resides.
1899    "nodepoolConditions": [ # Which conditions caused the current node pool state.
1900      { # StatusCondition describes why a cluster or a node pool has a certain status
1901          # (e.g., ERROR or DEGRADED).
1902        "message": "A String", # Human-friendly representation of the condition
1903        "code": "A String", # Machine-friendly representation of the condition
1904      },
1905    ],
1906    "endTime": "A String", # [Output only] The time the operation completed, in
1907        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
1908    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
1909    "clusterConditions": [ # Which conditions caused the current cluster state.
1910      { # StatusCondition describes why a cluster or a node pool has a certain status
1911          # (e.g., ERROR or DEGRADED).
1912        "message": "A String", # Human-friendly representation of the condition
1913        "code": "A String", # Machine-friendly representation of the condition
1914      },
1915    ],
1916  }</pre>
1917</div>
1918
1919<div class="method">
1920    <code class="details" id="list">list(projectId, zone, parent=None, x__xgafv=None)</code>
1921  <pre>Lists all clusters owned by a project in either the specified zone or all
1922zones.
1923
1924Args:
1925  projectId: string, Deprecated. The Google Developers Console [project ID or project
1926number](https://support.google.com/cloud/answer/6158840).
1927This field has been deprecated and replaced by the parent field. (required)
1928  zone: string, Deprecated. The name of the Google Compute Engine
1929[zone](/compute/docs/zones#available) in which the cluster
1930resides, or "-" for all zones.
1931This field has been deprecated and replaced by the parent field. (required)
1932  parent: string, The parent (project and location) where the clusters will be listed.
1933Specified in the format 'projects/*/locations/*'.
1934Location "-" matches all zones and all regions.
1935  x__xgafv: string, V1 error format.
1936    Allowed values
1937      1 - v1 error format
1938      2 - v2 error format
1939
1940Returns:
1941  An object of the form:
1942
1943    { # ListClustersResponse is the result of ListClustersRequest.
1944    "clusters": [ # A list of clusters in the project in the specified zone, or
1945        # across all ones.
1946      { # A Google Kubernetes Engine cluster.
1947        "nodeIpv4CidrSize": 42, # [Output only] The size of the address space on each node for hosting
1948            # containers. This is provisioned from within the `container_ipv4_cidr`
1949            # range. This field will only be set when cluster is in route-based network
1950            # mode.
1951        "maintenancePolicy": { # MaintenancePolicy defines the maintenance policy to be used for the cluster. # Configure the maintenance policy for this cluster.
1952          "window": { # MaintenanceWindow defines the maintenance window to be used for the cluster. # Specifies the maintenance window in which maintenance may be performed.
1953            "dailyMaintenanceWindow": { # Time window specified for daily maintenance operations. # DailyMaintenanceWindow specifies a daily maintenance operation window.
1954              "duration": "A String", # [Output only] Duration of the time window, automatically chosen to be
1955                  # smallest possible in the given scenario.
1956                  # Duration will be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
1957                  # format "PTnHnMnS".
1958              "startTime": "A String", # Time within the maintenance window to start the maintenance operations.
1959                  # Time format should be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
1960                  # format "HH:MM", where HH : [00-23] and MM : [00-59] GMT.
1961            },
1962          },
1963        },
1964        "networkPolicy": { # Configuration options for the NetworkPolicy feature. # Configuration options for the NetworkPolicy feature.
1965            # https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
1966          "enabled": True or False, # Whether network policy is enabled on the cluster.
1967          "provider": "A String", # The selected network policy provider.
1968        },
1969        "masterAuthorizedNetworksConfig": { # Configuration options for the master authorized networks feature. Enabled # The configuration options for master authorized networks feature.
1970            # master authorized networks will disallow all external traffic to access
1971            # Kubernetes master through HTTPS except traffic from the given CIDR blocks,
1972            # Google Compute Engine Public IPs and Google Prod IPs.
1973          "enabled": True or False, # Whether or not master authorized networks is enabled.
1974          "cidrBlocks": [ # cidr_blocks define up to 50 external networks that could access
1975              # Kubernetes master through HTTPS.
1976            { # CidrBlock contains an optional name and one CIDR block.
1977              "displayName": "A String", # display_name is an optional field for users to identify CIDR blocks.
1978              "cidrBlock": "A String", # cidr_block must be specified in CIDR notation.
1979            },
1980          ],
1981        },
1982        "addonsConfig": { # Configuration for the addons that can be automatically spun up in the # Configurations for the various addons available to run in the cluster.
1983            # cluster, enabling additional functionality.
1984          "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
1985              # makes it easy to set up HTTP load balancers for services in a cluster.
1986              # which makes it easy to set up HTTP load balancers for services in a cluster.
1987            "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
1988                # When enabled, it runs a small pod in the cluster that manages the load
1989                # balancers.
1990          },
1991          "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
1992              # is enabled or not on the Master, it does not track whether network policy
1993              # is enabled for the nodes.
1994              # is enabled or not on the Master, it does not track whether network policy
1995              # is enabled for the nodes.
1996            "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
1997          },
1998          "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
1999              # This addon is deprecated, and will be disabled in 1.15. It is recommended
2000              # to use the Cloud Console to manage and monitor your Kubernetes clusters,
2001              # workloads and applications. For more information, see:
2002              # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
2003            "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
2004          },
2005          "horizontalPodAutoscaling": { # Configuration options for the horizontal pod autoscaling feature, which # Configuration for the horizontal pod autoscaling feature, which
2006              # increases or decreases the number of replica pods a replication controller
2007              # has based on the resource usage of the existing pods.
2008              # increases or decreases the number of replica pods a replication controller
2009              # has based on the resource usage of the existing pods.
2010            "disabled": True or False, # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
2011                # When enabled, it ensures that a Heapster pod is running in the cluster,
2012                # which is also used by the Cloud Monitoring service.
2013          },
2014        },
2015        "locations": [ # The list of Google Compute Engine
2016            # [zones](/compute/docs/zones#available) in which the cluster's nodes
2017            # should be located.
2018          "A String",
2019        ],
2020        "enableKubernetesAlpha": True or False, # Kubernetes alpha features are enabled on this cluster. This includes alpha
2021            # API groups (e.g. v1alpha1) and features that may not be production ready in
2022            # the kubernetes version of the master and nodes.
2023            # The cluster has no SLA for uptime and master/node upgrades are disabled.
2024            # Alpha enabled clusters are automatically deleted thirty days after
2025            # creation.
2026        "defaultMaxPodsConstraint": { # Constraints applied to pods. # The default constraint on the maximum number of pods that can be run
2027            # simultaneously on a node in the node pool of this cluster. Only honored
2028            # if cluster created with IP Alias support.
2029          "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
2030        },
2031        "network": "A String", # The name of the Google Compute Engine
2032            # [network](/compute/docs/networks-and-firewalls#networks) to which the
2033            # cluster is connected. If left unspecified, the `default` network
2034            # will be used.
2035        "zone": "A String", # [Output only] The name of the Google Compute Engine
2036            # [zone](/compute/docs/zones#available) in which the cluster
2037            # resides.
2038            # This field is deprecated, use location instead.
2039        "instanceGroupUrls": [ # Deprecated. Use node_pools.instance_group_urls.
2040          "A String",
2041        ],
2042        "networkConfig": { # NetworkConfig reports the relative names of network & subnetwork. # Configuration for cluster networking.
2043          "subnetwork": "A String", # Output only. The relative name of the Google Compute Engine
2044              # [subnetwork](/compute/docs/vpc) to which the cluster is connected.
2045              # Example: projects/my-project/regions/us-central1/subnetworks/my-subnet
2046          "network": "A String", # Output only. The relative name of the Google Compute Engine
2047              # network(/compute/docs/networks-and-firewalls#networks) to which
2048              # the cluster is connected.
2049              # Example: projects/my-project/global/networks/my-network
2050        },
2051        "name": "A String", # The name of this cluster. The name must be unique within this project
2052            # and zone, and can be up to 40 characters with the following restrictions:
2053            #
2054            # * Lowercase letters, numbers, and hyphens only.
2055            # * Must start with a letter.
2056            # * Must end with a number or a letter.
2057        "ipAllocationPolicy": { # Configuration for controlling how IPs are allocated in the cluster. # Configuration for cluster IP allocation.
2058          "nodeIpv4Cidr": "A String", # This field is deprecated, use node_ipv4_cidr_block.
2059          "useIpAliases": True or False, # Whether alias IPs will be used for pod IPs in the cluster.
2060          "clusterSecondaryRangeName": "A String", # The name of the secondary range to be used for the cluster CIDR
2061              # block.  The secondary range will be used for pod IP
2062              # addresses. This must be an existing secondary range associated
2063              # with the cluster subnetwork.
2064              #
2065              # This field is only applicable with use_ip_aliases is true and
2066              # create_subnetwork is false.
2067          "clusterIpv4CidrBlock": "A String", # The IP address range for the cluster pod IPs. If this field is set, then
2068              # `cluster.cluster_ipv4_cidr` must be left blank.
2069              #
2070              # This field is only applicable when `use_ip_aliases` is true.
2071              #
2072              # Set to blank to have a range chosen with the default size.
2073              #
2074              # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
2075              # netmask.
2076              #
2077              # Set to a
2078              # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
2079              # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
2080              # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
2081              # to use.
2082          "servicesIpv4CidrBlock": "A String", # The IP address range of the services IPs in this cluster. If blank, a range
2083              # will be automatically chosen with the default size.
2084              #
2085              # This field is only applicable when `use_ip_aliases` is true.
2086              #
2087              # Set to blank to have a range chosen with the default size.
2088              #
2089              # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
2090              # netmask.
2091              #
2092              # Set to a
2093              # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
2094              # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
2095              # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
2096              # to use.
2097          "createSubnetwork": True or False, # Whether a new subnetwork will be created automatically for the cluster.
2098              #
2099              # This field is only applicable when `use_ip_aliases` is true.
2100          "nodeIpv4CidrBlock": "A String", # The IP address range of the instance IPs in this cluster.
2101              #
2102              # This is applicable only if `create_subnetwork` is true.
2103              #
2104              # Set to blank to have a range chosen with the default size.
2105              #
2106              # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
2107              # netmask.
2108              #
2109              # Set to a
2110              # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
2111              # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
2112              # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
2113              # to use.
2114          "tpuIpv4CidrBlock": "A String", # The IP address range of the Cloud TPUs in this cluster. If unspecified, a
2115              # range will be automatically chosen with the default size.
2116              #
2117              # This field is only applicable when `use_ip_aliases` is true.
2118              #
2119              # If unspecified, the range will use the default size.
2120              #
2121              # Set to /netmask (e.g. `/14`) to have a range chosen with a specific
2122              # netmask.
2123              #
2124              # Set to a
2125              # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
2126              # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
2127              # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
2128              # to use.
2129          "clusterIpv4Cidr": "A String", # This field is deprecated, use cluster_ipv4_cidr_block.
2130          "subnetworkName": "A String", # A custom subnetwork name to be used if `create_subnetwork` is true.  If
2131              # this field is empty, then an automatic name will be chosen for the new
2132              # subnetwork.
2133          "servicesSecondaryRangeName": "A String", # The name of the secondary range to be used as for the services
2134              # CIDR block.  The secondary range will be used for service
2135              # ClusterIPs. This must be an existing secondary range associated
2136              # with the cluster subnetwork.
2137              #
2138              # This field is only applicable with use_ip_aliases is true and
2139              # create_subnetwork is false.
2140          "servicesIpv4Cidr": "A String", # This field is deprecated, use services_ipv4_cidr_block.
2141        },
2142        "resourceUsageExportConfig": { # Configuration for exporting cluster resource usages. # Configuration for exporting resource usages. Resource usage export is
2143            # disabled when this config is unspecified.
2144          "bigqueryDestination": { # Parameters for using BigQuery as the destination of resource usage export. # Configuration to use BigQuery as usage export destination.
2145            "datasetId": "A String", # The ID of a BigQuery Dataset.
2146          },
2147          "enableNetworkEgressMetering": True or False, # Whether to enable network egress metering for this cluster. If enabled, a
2148              # daemonset will be created in the cluster to meter network egress traffic.
2149          "consumptionMeteringConfig": { # Parameters for controlling consumption metering. # Configuration to enable resource consumption metering.
2150            "enabled": True or False, # Whether to enable consumption metering for this cluster. If enabled, a
2151                # second BigQuery table will be created to hold resource consumption
2152                # records.
2153          },
2154        },
2155        "enableTpu": True or False, # Enable the ability to use Cloud TPUs in this cluster.
2156        "conditions": [ # Which conditions caused the current cluster state.
2157          { # StatusCondition describes why a cluster or a node pool has a certain status
2158              # (e.g., ERROR or DEGRADED).
2159            "message": "A String", # Human-friendly representation of the condition
2160            "code": "A String", # Machine-friendly representation of the condition
2161          },
2162        ],
2163        "statusMessage": "A String", # [Output only] Additional information about the current status of this
2164            # cluster, if available.
2165        "servicesIpv4Cidr": "A String", # [Output only] The IP address range of the Kubernetes services in
2166            # this cluster, in
2167            # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
2168            # notation (e.g. `1.2.3.4/29`). Service addresses are
2169            # typically put in the last `/16` from the container CIDR.
2170        "status": "A String", # [Output only] The current status of this cluster.
2171        "description": "A String", # An optional description of this cluster.
2172        "currentNodeVersion": "A String", # [Output only] Deprecated, use
2173            # [NodePools.version](/kubernetes-engine/docs/reference/rest/v1/projects.zones.clusters.nodePools)
2174            # instead. The current version of the node software components. If they are
2175            # currently at multiple versions because they're in the process of being
2176            # upgraded, this reflects the minimum version of all nodes.
2177        "labelFingerprint": "A String", # The fingerprint of the set of labels for this cluster.
2178        "currentMasterVersion": "A String", # [Output only] The current software version of the master endpoint.
2179        "masterAuth": { # The authentication information for accessing the master endpoint. # The authentication information for accessing the master endpoint.
2180            # If unspecified, the defaults are used:
2181            # For clusters before v1.12, if master_auth is unspecified, `username` will
2182            # be set to "admin", a random password will be generated, and a client
2183            # certificate will be issued.
2184            # Authentication can be done using HTTP basic auth or using client
2185            # certificates.
2186          "username": "A String", # The username to use for HTTP basic authentication to the master endpoint.
2187              # For clusters v1.6.0 and later, basic authentication can be disabled by
2188              # leaving username unspecified (or setting it to the empty string).
2189          "clientKey": "A String", # [Output only] Base64-encoded private key used by clients to authenticate
2190              # to the cluster endpoint.
2191          "clientCertificate": "A String", # [Output only] Base64-encoded public certificate used by clients to
2192              # authenticate to the cluster endpoint.
2193          "clientCertificateConfig": { # Configuration for client certificates on the cluster. # Configuration for client certificate authentication on the cluster. For
2194              # clusters before v1.12, if no configuration is specified, a client
2195              # certificate is issued.
2196            "issueClientCertificate": True or False, # Issue a client certificate.
2197          },
2198          "password": "A String", # The password to use for HTTP basic authentication to the master endpoint.
2199              # Because the master endpoint is open to the Internet, you should create a
2200              # strong password.  If a password is provided for cluster creation, username
2201              # must be non-empty.
2202          "clusterCaCertificate": "A String", # [Output only] Base64-encoded public certificate that is the root of
2203              # trust for the cluster.
2204        },
2205        "expireTime": "A String", # [Output only] The time the cluster will be automatically
2206            # deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
2207        "tpuIpv4CidrBlock": "A String", # [Output only] The IP address range of the Cloud TPUs in this cluster, in
2208            # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
2209            # notation (e.g. `1.2.3.4/29`).
2210        "nodePools": [ # The node pools associated with this cluster.
2211            # This field should not be set if "node_config" or "initial_node_count" are
2212            # specified.
2213          { # NodePool contains the name and configuration for a cluster's node pool.
2214              # Node pools are a set of nodes (i.e. VM's), with a common configuration and
2215              # specification, under the control of the cluster master. They may have a set
2216              # of Kubernetes labels applied to them, which may be used to reference them
2217              # during pod scheduling. They may also be resized up or down, to accommodate
2218              # the workload.
2219            "status": "A String", # [Output only] The status of the nodes in this pool instance.
2220            "statusMessage": "A String", # [Output only] Additional information about the current status of this
2221                # node pool instance, if available.
2222            "name": "A String", # The name of the node pool.
2223            "instanceGroupUrls": [ # [Output only] The resource URLs of the [managed instance
2224                # groups](/compute/docs/instance-groups/creating-groups-of-managed-instances)
2225                # associated with this node pool.
2226              "A String",
2227            ],
2228            "autoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for this NodePool. Autoscaler is enabled
2229                # only if a valid configuration is present.
2230                # adjust the size of the node pool to the current cluster usage.
2231              "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be >= 1 and <=
2232                  # max_node_count.
2233              "enabled": True or False, # Is autoscaling enabled for this node pool.
2234              "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There
2235                  # has to enough quota to scale up the cluster.
2236            },
2237            "maxPodsConstraint": { # Constraints applied to pods. # The constraint on the maximum number of pods that can be run
2238                # simultaneously on a node in the node pool.
2239              "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
2240            },
2241            "version": "A String", # The version of the Kubernetes of this node.
2242            "initialNodeCount": 42, # The initial node count for the pool. You must ensure that your
2243                # Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
2244                # is sufficient for this number of instances. You must also have available
2245                # firewall and routes quota.
2246            "podIpv4CidrSize": 42, # [Output only] The pod CIDR block size per node in this node pool.
2247            "management": { # NodeManagement defines the set of node management services turned on for the # NodeManagement configuration for this NodePool.
2248                # node pool.
2249              "autoRepair": True or False, # A flag that specifies whether the node auto-repair is enabled for the node
2250                  # pool. If enabled, the nodes in this node pool will be monitored and, if
2251                  # they fail health checks too many times, an automatic repair action will be
2252                  # triggered.
2253              "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
2254                  # the Auto Upgrades will proceed.
2255                "description": "A String", # [Output only] This field is set when upgrades are about to commence
2256                    # with the description of the upgrade.
2257                "autoUpgradeStartTime": "A String", # [Output only] This field is set when upgrades are about to commence
2258                    # with the approximate start time for the upgrades, in
2259                    # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
2260              },
2261              "autoUpgrade": True or False, # A flag that specifies whether node auto-upgrade is enabled for the node
2262                  # pool. If enabled, node auto-upgrade helps keep the nodes in your node pool
2263                  # up to date with the latest release version of Kubernetes.
2264            },
2265            "config": { # Parameters that describe the nodes in a cluster. # The node configuration of the pool.
2266              "taints": [ # List of kubernetes taints to be applied to each node.
2267                  #
2268                  # For more information, including usage and the valid values, see:
2269                  # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
2270                { # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
2271                    # can only be one of three types:  NoSchedule, PreferNoSchedule or NoExecute.
2272                    #
2273                    # For more information, including usage and the valid values, see:
2274                    # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
2275                  "key": "A String", # Key for taint.
2276                  "effect": "A String", # Effect for taint.
2277                  "value": "A String", # Value for taint.
2278                },
2279              ],
2280              "machineType": "A String", # The name of a Google Compute Engine [machine
2281                  # type](/compute/docs/machine-types) (e.g.
2282                  # `n1-standard-1`).
2283                  #
2284                  # If unspecified, the default machine type is
2285                  # `n1-standard-1`.
2286              "tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
2287                  # valid sources or targets for network firewalls and are specified by
2288                  # the client during cluster or node pool creation. Each tag within the list
2289                  # must comply with RFC1035.
2290                "A String",
2291              ],
2292              "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
2293                  # https://cloud.google.com/compute/docs/instances/preemptible for more
2294                  # information about preemptible VM instances.
2295              "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
2296                  # These will added in addition to any default label(s) that
2297                  # Kubernetes may apply to the node.
2298                  # In case of conflict in label keys, the applied set may differ depending on
2299                  # the Kubernetes version -- it's best to assume the behavior is undefined
2300                  # and conflicts should be avoided.
2301                  # For more information, including usage and the valid values, see:
2302                  # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
2303                "a_key": "A String",
2304              },
2305              "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If
2306                  # no Service Account is specified, the "default" service account is used.
2307              "oauthScopes": [ # The set of Google API scopes to be made available on all of the
2308                  # node VMs under the "default" service account.
2309                  #
2310                  # The following scopes are recommended, but not required, and by default are
2311                  # not included:
2312                  #
2313                  # * `https://www.googleapis.com/auth/compute` is required for mounting
2314                  # persistent storage on your nodes.
2315                  # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
2316                  # communicating with **gcr.io**
2317                  # (the [Google Container Registry](/container-registry/)).
2318                  #
2319                  # If unspecified, no scopes are added, unless Cloud Logging or Cloud
2320                  # Monitoring are enabled, in which case their required scopes will be added.
2321                "A String",
2322              ],
2323              "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
2324                  #
2325                  # If unspecified, the default disk type is 'pd-standard'
2326              "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
2327                  # The smallest allowed disk size is 10GB.
2328                  #
2329                  # If unspecified, the default disk size is 100GB.
2330              "accelerators": [ # A list of hardware accelerators to be attached to each node.
2331                  # See https://cloud.google.com/compute/docs/gpus for more information about
2332                  # support for GPUs.
2333                { # AcceleratorConfig represents a Hardware Accelerator request.
2334                  "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
2335                  "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
2336                      # [here](/compute/docs/gpus/#Introduction)
2337                },
2338              ],
2339              "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
2340                  # scheduled on the specified or newer CPU platform. Applicable values are the
2341                  # friendly names of CPU platforms, such as
2342                  # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
2343                  # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
2344                  # information, read [how to specify min CPU
2345                  # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
2346              "metadata": { # The metadata key/value pairs assigned to instances in the cluster.
2347                  #
2348                  # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
2349                  # in length. These are reflected as part of a URL in the metadata server.
2350                  # Additionally, to avoid ambiguity, keys must not conflict with any other
2351                  # metadata keys for the project or be one of the reserved keys:
2352                  #  "cluster-location"
2353                  #  "cluster-name"
2354                  #  "cluster-uid"
2355                  #  "configure-sh"
2356                  #  "containerd-configure-sh"
2357                  #  "enable-os-login"
2358                  #  "gci-update-strategy"
2359                  #  "gci-ensure-gke-docker"
2360                  #  "instance-template"
2361                  #  "kube-env"
2362                  #  "startup-script"
2363                  #  "user-data"
2364                  #  "disable-address-manager"
2365                  #  "windows-startup-script-ps1"
2366                  #  "common-psm1"
2367                  #  "k8s-node-setup-psm1"
2368                  #  "install-ssh-psm1"
2369                  #  "user-profile-psm1"
2370                  #  "serial-port-logging-enable"
2371                  #
2372                  # Values are free-form strings, and only have meaning as interpreted by
2373                  # the image running in the instance. The only restriction placed on them is
2374                  # that each value's size must be less than or equal to 32 KB.
2375                  #
2376                  # The total size of all keys and values must be less than 512 KB.
2377                "a_key": "A String",
2378              },
2379              "imageType": "A String", # The image type to use for this node. Note that for a given image type,
2380                  # the latest version of it will be used.
2381              "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
2382                  #
2383                  # The limit for this value is dependant upon the maximum number of
2384                  # disks available on a machine per zone. See:
2385                  # https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits
2386                  # for more information.
2387            },
2388            "conditions": [ # Which conditions caused the current node pool state.
2389              { # StatusCondition describes why a cluster or a node pool has a certain status
2390                  # (e.g., ERROR or DEGRADED).
2391                "message": "A String", # Human-friendly representation of the condition
2392                "code": "A String", # Machine-friendly representation of the condition
2393              },
2394            ],
2395            "selfLink": "A String", # [Output only] Server-defined URL for the resource.
2396          },
2397        ],
2398        "monitoringService": "A String", # The monitoring service the cluster should use to write metrics.
2399            # Currently available options:
2400            #
2401            # * `monitoring.googleapis.com` - the Google Cloud Monitoring service.
2402            # * `none` - no metrics will be exported from the cluster.
2403            # * if left as an empty string, `monitoring.googleapis.com` will be used.
2404        "createTime": "A String", # [Output only] The time the cluster was created, in
2405            # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
2406        "legacyAbac": { # Configuration for the legacy Attribute Based Access Control authorization # Configuration for the legacy ABAC authorization mode.
2407            # mode.
2408          "enabled": True or False, # Whether the ABAC authorizer is enabled for this cluster. When enabled,
2409              # identities in the system, including service accounts, nodes, and
2410              # controllers, will have statically granted permissions beyond those
2411              # provided by the RBAC configuration or IAM.
2412        },
2413        "privateClusterConfig": { # Configuration options for private clusters. # Configuration for private cluster.
2414          "enablePrivateEndpoint": True or False, # Whether the master's internal IP address is used as the cluster endpoint.
2415          "masterIpv4CidrBlock": "A String", # The IP range in CIDR notation to use for the hosted master network. This
2416              # range will be used for assigning internal IP addresses to the master or
2417              # set of masters, as well as the ILB VIP. This range must not overlap with
2418              # any other ranges in use within the cluster's network.
2419          "privateEndpoint": "A String", # Output only. The internal IP address of this cluster's master endpoint.
2420          "publicEndpoint": "A String", # Output only. The external IP address of this cluster's master endpoint.
2421          "enablePrivateNodes": True or False, # Whether nodes have internal IP addresses only. If enabled, all nodes are
2422              # given only RFC 1918 private addresses and communicate with the master via
2423              # private networking.
2424        },
2425        "endpoint": "A String", # [Output only] The IP address of this cluster's master endpoint.
2426            # The endpoint can be accessed from the internet at
2427            # `https://username:password@endpoint/`.
2428            #
2429            # See the `masterAuth` property of this resource for username and
2430            # password information.
2431        "currentNodeCount": 42, # [Output only]  The number of nodes currently in the cluster. Deprecated.
2432            # Call Kubernetes API directly to retrieve node information.
2433        "loggingService": "A String", # The logging service the cluster should use to write logs.
2434            # Currently available options:
2435            #
2436            # * "logging.googleapis.com/kubernetes" - the Google Cloud Logging
2437            # service with Kubernetes-native resource model in Stackdriver
2438            # * `logging.googleapis.com` - the Google Cloud Logging service.
2439            # * `none` - no logs will be exported from the cluster.
2440            # * if left as an empty string,`logging.googleapis.com` will be used.
2441        "location": "A String", # [Output only] The name of the Google Compute Engine
2442            # [zone](/compute/docs/regions-zones/regions-zones#available) or
2443            # [region](/compute/docs/regions-zones/regions-zones#available) in which
2444            # the cluster resides.
2445        "initialClusterVersion": "A String", # The initial Kubernetes version for this cluster.  Valid versions are those
2446            # found in validMasterVersions returned by getServerConfig.  The version can
2447            # be upgraded over time; such upgrades are reflected in
2448            # currentMasterVersion and currentNodeVersion.
2449            #
2450            # Users may specify either explicit versions offered by
2451            # Kubernetes Engine or version aliases, which have the following behavior:
2452            #
2453            # - "latest": picks the highest valid Kubernetes version
2454            # - "1.X": picks the highest valid patch+gke.N patch in the 1.X version
2455            # - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
2456            # - "1.X.Y-gke.N": picks an explicit Kubernetes version
2457            # - "","-": picks the default Kubernetes version
2458        "nodeConfig": { # Parameters that describe the nodes in a cluster. # Parameters used in creating the cluster's nodes.
2459            # For requests, this field should only be used in lieu of a
2460            # "node_pool" object, since this configuration (along with the
2461            # "initial_node_count") will be used to create a "NodePool" object with an
2462            # auto-generated name. Do not use this and a node_pool at the same time.
2463            # For responses, this field will be populated with the node configuration of
2464            # the first node pool. (For configuration of each node pool, see
2465            # `node_pool.config`)
2466            #
2467            # If unspecified, the defaults are used.
2468            # This field is deprecated, use node_pool.config instead.
2469          "taints": [ # List of kubernetes taints to be applied to each node.
2470              #
2471              # For more information, including usage and the valid values, see:
2472              # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
2473            { # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
2474                # can only be one of three types:  NoSchedule, PreferNoSchedule or NoExecute.
2475                #
2476                # For more information, including usage and the valid values, see:
2477                # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
2478              "key": "A String", # Key for taint.
2479              "effect": "A String", # Effect for taint.
2480              "value": "A String", # Value for taint.
2481            },
2482          ],
2483          "machineType": "A String", # The name of a Google Compute Engine [machine
2484              # type](/compute/docs/machine-types) (e.g.
2485              # `n1-standard-1`).
2486              #
2487              # If unspecified, the default machine type is
2488              # `n1-standard-1`.
2489          "tags": [ # The list of instance tags applied to all nodes. Tags are used to identify
2490              # valid sources or targets for network firewalls and are specified by
2491              # the client during cluster or node pool creation. Each tag within the list
2492              # must comply with RFC1035.
2493            "A String",
2494          ],
2495          "preemptible": True or False, # Whether the nodes are created as preemptible VM instances. See:
2496              # https://cloud.google.com/compute/docs/instances/preemptible for more
2497              # information about preemptible VM instances.
2498          "labels": { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
2499              # These will added in addition to any default label(s) that
2500              # Kubernetes may apply to the node.
2501              # In case of conflict in label keys, the applied set may differ depending on
2502              # the Kubernetes version -- it's best to assume the behavior is undefined
2503              # and conflicts should be avoided.
2504              # For more information, including usage and the valid values, see:
2505              # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
2506            "a_key": "A String",
2507          },
2508          "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If
2509              # no Service Account is specified, the "default" service account is used.
2510          "oauthScopes": [ # The set of Google API scopes to be made available on all of the
2511              # node VMs under the "default" service account.
2512              #
2513              # The following scopes are recommended, but not required, and by default are
2514              # not included:
2515              #
2516              # * `https://www.googleapis.com/auth/compute` is required for mounting
2517              # persistent storage on your nodes.
2518              # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
2519              # communicating with **gcr.io**
2520              # (the [Google Container Registry](/container-registry/)).
2521              #
2522              # If unspecified, no scopes are added, unless Cloud Logging or Cloud
2523              # Monitoring are enabled, in which case their required scopes will be added.
2524            "A String",
2525          ],
2526          "diskType": "A String", # Type of the disk attached to each node (e.g. 'pd-standard' or 'pd-ssd')
2527              #
2528              # If unspecified, the default disk type is 'pd-standard'
2529          "diskSizeGb": 42, # Size of the disk attached to each node, specified in GB.
2530              # The smallest allowed disk size is 10GB.
2531              #
2532              # If unspecified, the default disk size is 100GB.
2533          "accelerators": [ # A list of hardware accelerators to be attached to each node.
2534              # See https://cloud.google.com/compute/docs/gpus for more information about
2535              # support for GPUs.
2536            { # AcceleratorConfig represents a Hardware Accelerator request.
2537              "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
2538              "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
2539                  # [here](/compute/docs/gpus/#Introduction)
2540            },
2541          ],
2542          "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
2543              # scheduled on the specified or newer CPU platform. Applicable values are the
2544              # friendly names of CPU platforms, such as
2545              # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
2546              # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
2547              # information, read [how to specify min CPU
2548              # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
2549          "metadata": { # The metadata key/value pairs assigned to instances in the cluster.
2550              #
2551              # Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
2552              # in length. These are reflected as part of a URL in the metadata server.
2553              # Additionally, to avoid ambiguity, keys must not conflict with any other
2554              # metadata keys for the project or be one of the reserved keys:
2555              #  "cluster-location"
2556              #  "cluster-name"
2557              #  "cluster-uid"
2558              #  "configure-sh"
2559              #  "containerd-configure-sh"
2560              #  "enable-os-login"
2561              #  "gci-update-strategy"
2562              #  "gci-ensure-gke-docker"
2563              #  "instance-template"
2564              #  "kube-env"
2565              #  "startup-script"
2566              #  "user-data"
2567              #  "disable-address-manager"
2568              #  "windows-startup-script-ps1"
2569              #  "common-psm1"
2570              #  "k8s-node-setup-psm1"
2571              #  "install-ssh-psm1"
2572              #  "user-profile-psm1"
2573              #  "serial-port-logging-enable"
2574              #
2575              # Values are free-form strings, and only have meaning as interpreted by
2576              # the image running in the instance. The only restriction placed on them is
2577              # that each value's size must be less than or equal to 32 KB.
2578              #
2579              # The total size of all keys and values must be less than 512 KB.
2580            "a_key": "A String",
2581          },
2582          "imageType": "A String", # The image type to use for this node. Note that for a given image type,
2583              # the latest version of it will be used.
2584          "localSsdCount": 42, # The number of local SSD disks to be attached to the node.
2585              #
2586              # The limit for this value is dependant upon the maximum number of
2587              # disks available on a machine per zone. See:
2588              # https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits
2589              # for more information.
2590        },
2591        "clusterIpv4Cidr": "A String", # The IP address range of the container pods in this cluster, in
2592            # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
2593            # notation (e.g. `10.96.0.0/14`). Leave blank to have
2594            # one automatically chosen or specify a `/14` block in `10.0.0.0/8`.
2595        "subnetwork": "A String", # The name of the Google Compute Engine
2596            # [subnetwork](/compute/docs/subnetworks) to which the
2597            # cluster is connected.
2598        "resourceLabels": { # The resource labels for the cluster to use to annotate any related
2599            # Google Compute Engine resources.
2600          "a_key": "A String",
2601        },
2602        "selfLink": "A String", # [Output only] Server-defined URL for the resource.
2603        "initialNodeCount": 42, # The number of nodes to create in this cluster. You must ensure that your
2604            # Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
2605            # is sufficient for this number of instances. You must also have available
2606            # firewall and routes quota.
2607            # For requests, this field should only be used in lieu of a
2608            # "node_pool" object, since this configuration (along with the
2609            # "node_config") will be used to create a "NodePool" object with an
2610            # auto-generated name. Do not use this and a node_pool at the same time.
2611            #
2612            # This field is deprecated, use node_pool.initial_node_count instead.
2613      },
2614    ],
2615    "missingZones": [ # If any zones are listed here, the list of clusters returned
2616        # may be missing those zones.
2617      "A String",
2618    ],
2619  }</pre>
2620</div>
2621
2622<div class="method">
2623    <code class="details" id="locations">locations(projectId, zone, clusterId, body, x__xgafv=None)</code>
2624  <pre>Sets the locations for a specific cluster.
2625
2626Args:
2627  projectId: string, Deprecated. The Google Developers Console [project ID or project
2628number](https://support.google.com/cloud/answer/6158840).
2629This field has been deprecated and replaced by the name field. (required)
2630  zone: string, Deprecated. The name of the Google Compute Engine
2631[zone](/compute/docs/zones#available) in which the cluster
2632resides.
2633This field has been deprecated and replaced by the name field. (required)
2634  clusterId: string, Deprecated. The name of the cluster to upgrade.
2635This field has been deprecated and replaced by the name field. (required)
2636  body: object, The request body. (required)
2637    The object takes the form of:
2638
2639{ # SetLocationsRequest sets the locations of the cluster.
2640    "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
2641        # number](https://support.google.com/cloud/answer/6158840).
2642        # This field has been deprecated and replaced by the name field.
2643    "clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
2644        # This field has been deprecated and replaced by the name field.
2645    "locations": [ # The desired list of Google Compute Engine
2646        # [zones](/compute/docs/zones#available) in which the cluster's nodes
2647        # should be located. Changing the locations a cluster is in will result
2648        # in nodes being either created or removed from the cluster, depending on
2649        # whether locations are being added or removed.
2650        #
2651        # This list must always include the cluster's primary zone.
2652      "A String",
2653    ],
2654    "zone": "A String", # Deprecated. The name of the Google Compute Engine
2655        # [zone](/compute/docs/zones#available) in which the cluster
2656        # resides.
2657        # This field has been deprecated and replaced by the name field.
2658    "name": "A String", # The name (project, location, cluster) of the cluster to set locations.
2659        # Specified in the format 'projects/*/locations/*/clusters/*'.
2660  }
2661
2662  x__xgafv: string, V1 error format.
2663    Allowed values
2664      1 - v1 error format
2665      2 - v2 error format
2666
2667Returns:
2668  An object of the form:
2669
2670    { # This operation resource represents operations that may have happened or are
2671      # happening on the cluster. All fields are output only.
2672    "status": "A String", # The current status of the operation.
2673    "selfLink": "A String", # Server-defined URL for the resource.
2674    "name": "A String", # The server-assigned ID for the operation.
2675    "zone": "A String", # The name of the Google Compute Engine
2676        # [zone](/compute/docs/zones#available) in which the operation
2677        # is taking place.
2678        # This field is deprecated, use location instead.
2679    "startTime": "A String", # [Output only] The time the operation started, in
2680        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
2681    "detail": "A String", # Detailed operation progress, if available.
2682    "operationType": "A String", # The operation type.
2683    "targetLink": "A String", # Server-defined URL for the target of the operation.
2684    "location": "A String", # [Output only] The name of the Google Compute Engine
2685        # [zone](/compute/docs/regions-zones/regions-zones#available) or
2686        # [region](/compute/docs/regions-zones/regions-zones#available) in which
2687        # the cluster resides.
2688    "nodepoolConditions": [ # Which conditions caused the current node pool state.
2689      { # StatusCondition describes why a cluster or a node pool has a certain status
2690          # (e.g., ERROR or DEGRADED).
2691        "message": "A String", # Human-friendly representation of the condition
2692        "code": "A String", # Machine-friendly representation of the condition
2693      },
2694    ],
2695    "endTime": "A String", # [Output only] The time the operation completed, in
2696        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
2697    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
2698    "clusterConditions": [ # Which conditions caused the current cluster state.
2699      { # StatusCondition describes why a cluster or a node pool has a certain status
2700          # (e.g., ERROR or DEGRADED).
2701        "message": "A String", # Human-friendly representation of the condition
2702        "code": "A String", # Machine-friendly representation of the condition
2703      },
2704    ],
2705  }</pre>
2706</div>
2707
2708<div class="method">
2709    <code class="details" id="logging">logging(projectId, zone, clusterId, body, x__xgafv=None)</code>
2710  <pre>Sets the logging service for a specific cluster.
2711
2712Args:
2713  projectId: string, Deprecated. The Google Developers Console [project ID or project
2714number](https://support.google.com/cloud/answer/6158840).
2715This field has been deprecated and replaced by the name field. (required)
2716  zone: string, Deprecated. The name of the Google Compute Engine
2717[zone](/compute/docs/zones#available) in which the cluster
2718resides.
2719This field has been deprecated and replaced by the name field. (required)
2720  clusterId: string, Deprecated. The name of the cluster to upgrade.
2721This field has been deprecated and replaced by the name field. (required)
2722  body: object, The request body. (required)
2723    The object takes the form of:
2724
2725{ # SetLoggingServiceRequest sets the logging service of a cluster.
2726    "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
2727        # number](https://support.google.com/cloud/answer/6158840).
2728        # This field has been deprecated and replaced by the name field.
2729    "clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
2730        # This field has been deprecated and replaced by the name field.
2731    "loggingService": "A String", # The logging service the cluster should use to write metrics.
2732        # Currently available options:
2733        #
2734        # * "logging.googleapis.com" - the Google Cloud Logging service
2735        # * "none" - no metrics will be exported from the cluster
2736    "zone": "A String", # Deprecated. The name of the Google Compute Engine
2737        # [zone](/compute/docs/zones#available) in which the cluster
2738        # resides.
2739        # This field has been deprecated and replaced by the name field.
2740    "name": "A String", # The name (project, location, cluster) of the cluster to set logging.
2741        # Specified in the format 'projects/*/locations/*/clusters/*'.
2742  }
2743
2744  x__xgafv: string, V1 error format.
2745    Allowed values
2746      1 - v1 error format
2747      2 - v2 error format
2748
2749Returns:
2750  An object of the form:
2751
2752    { # This operation resource represents operations that may have happened or are
2753      # happening on the cluster. All fields are output only.
2754    "status": "A String", # The current status of the operation.
2755    "selfLink": "A String", # Server-defined URL for the resource.
2756    "name": "A String", # The server-assigned ID for the operation.
2757    "zone": "A String", # The name of the Google Compute Engine
2758        # [zone](/compute/docs/zones#available) in which the operation
2759        # is taking place.
2760        # This field is deprecated, use location instead.
2761    "startTime": "A String", # [Output only] The time the operation started, in
2762        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
2763    "detail": "A String", # Detailed operation progress, if available.
2764    "operationType": "A String", # The operation type.
2765    "targetLink": "A String", # Server-defined URL for the target of the operation.
2766    "location": "A String", # [Output only] The name of the Google Compute Engine
2767        # [zone](/compute/docs/regions-zones/regions-zones#available) or
2768        # [region](/compute/docs/regions-zones/regions-zones#available) in which
2769        # the cluster resides.
2770    "nodepoolConditions": [ # Which conditions caused the current node pool state.
2771      { # StatusCondition describes why a cluster or a node pool has a certain status
2772          # (e.g., ERROR or DEGRADED).
2773        "message": "A String", # Human-friendly representation of the condition
2774        "code": "A String", # Machine-friendly representation of the condition
2775      },
2776    ],
2777    "endTime": "A String", # [Output only] The time the operation completed, in
2778        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
2779    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
2780    "clusterConditions": [ # Which conditions caused the current cluster state.
2781      { # StatusCondition describes why a cluster or a node pool has a certain status
2782          # (e.g., ERROR or DEGRADED).
2783        "message": "A String", # Human-friendly representation of the condition
2784        "code": "A String", # Machine-friendly representation of the condition
2785      },
2786    ],
2787  }</pre>
2788</div>
2789
2790<div class="method">
2791    <code class="details" id="master">master(projectId, zone, clusterId, body, x__xgafv=None)</code>
2792  <pre>Updates the master for a specific cluster.
2793
2794Args:
2795  projectId: string, Deprecated. The Google Developers Console [project ID or project
2796number](https://support.google.com/cloud/answer/6158840).
2797This field has been deprecated and replaced by the name field. (required)
2798  zone: string, Deprecated. The name of the Google Compute Engine
2799[zone](/compute/docs/zones#available) in which the cluster
2800resides.
2801This field has been deprecated and replaced by the name field. (required)
2802  clusterId: string, Deprecated. The name of the cluster to upgrade.
2803This field has been deprecated and replaced by the name field. (required)
2804  body: object, The request body. (required)
2805    The object takes the form of:
2806
2807{ # UpdateMasterRequest updates the master of the cluster.
2808    "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
2809        # number](https://support.google.com/cloud/answer/6158840).
2810        # This field has been deprecated and replaced by the name field.
2811    "masterVersion": "A String", # The Kubernetes version to change the master to.
2812        #
2813        # Users may specify either explicit versions offered by Kubernetes Engine or
2814        # version aliases, which have the following behavior:
2815        #
2816        # - "latest": picks the highest valid Kubernetes version
2817        # - "1.X": picks the highest valid patch+gke.N patch in the 1.X version
2818        # - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
2819        # - "1.X.Y-gke.N": picks an explicit Kubernetes version
2820        # - "-": picks the default Kubernetes version
2821    "clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
2822        # This field has been deprecated and replaced by the name field.
2823    "name": "A String", # The name (project, location, cluster) of the cluster to update.
2824        # Specified in the format 'projects/*/locations/*/clusters/*'.
2825    "zone": "A String", # Deprecated. The name of the Google Compute Engine
2826        # [zone](/compute/docs/zones#available) in which the cluster
2827        # resides.
2828        # This field has been deprecated and replaced by the name field.
2829  }
2830
2831  x__xgafv: string, V1 error format.
2832    Allowed values
2833      1 - v1 error format
2834      2 - v2 error format
2835
2836Returns:
2837  An object of the form:
2838
2839    { # This operation resource represents operations that may have happened or are
2840      # happening on the cluster. All fields are output only.
2841    "status": "A String", # The current status of the operation.
2842    "selfLink": "A String", # Server-defined URL for the resource.
2843    "name": "A String", # The server-assigned ID for the operation.
2844    "zone": "A String", # The name of the Google Compute Engine
2845        # [zone](/compute/docs/zones#available) in which the operation
2846        # is taking place.
2847        # This field is deprecated, use location instead.
2848    "startTime": "A String", # [Output only] The time the operation started, in
2849        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
2850    "detail": "A String", # Detailed operation progress, if available.
2851    "operationType": "A String", # The operation type.
2852    "targetLink": "A String", # Server-defined URL for the target of the operation.
2853    "location": "A String", # [Output only] The name of the Google Compute Engine
2854        # [zone](/compute/docs/regions-zones/regions-zones#available) or
2855        # [region](/compute/docs/regions-zones/regions-zones#available) in which
2856        # the cluster resides.
2857    "nodepoolConditions": [ # Which conditions caused the current node pool state.
2858      { # StatusCondition describes why a cluster or a node pool has a certain status
2859          # (e.g., ERROR or DEGRADED).
2860        "message": "A String", # Human-friendly representation of the condition
2861        "code": "A String", # Machine-friendly representation of the condition
2862      },
2863    ],
2864    "endTime": "A String", # [Output only] The time the operation completed, in
2865        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
2866    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
2867    "clusterConditions": [ # Which conditions caused the current cluster state.
2868      { # StatusCondition describes why a cluster or a node pool has a certain status
2869          # (e.g., ERROR or DEGRADED).
2870        "message": "A String", # Human-friendly representation of the condition
2871        "code": "A String", # Machine-friendly representation of the condition
2872      },
2873    ],
2874  }</pre>
2875</div>
2876
2877<div class="method">
2878    <code class="details" id="monitoring">monitoring(projectId, zone, clusterId, body, x__xgafv=None)</code>
2879  <pre>Sets the monitoring service for a specific cluster.
2880
2881Args:
2882  projectId: string, Deprecated. The Google Developers Console [project ID or project
2883number](https://support.google.com/cloud/answer/6158840).
2884This field has been deprecated and replaced by the name field. (required)
2885  zone: string, Deprecated. The name of the Google Compute Engine
2886[zone](/compute/docs/zones#available) in which the cluster
2887resides.
2888This field has been deprecated and replaced by the name field. (required)
2889  clusterId: string, Deprecated. The name of the cluster to upgrade.
2890This field has been deprecated and replaced by the name field. (required)
2891  body: object, The request body. (required)
2892    The object takes the form of:
2893
2894{ # SetMonitoringServiceRequest sets the monitoring service of a cluster.
2895    "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
2896        # number](https://support.google.com/cloud/answer/6158840).
2897        # This field has been deprecated and replaced by the name field.
2898    "monitoringService": "A String", # The monitoring service the cluster should use to write metrics.
2899        # Currently available options:
2900        #
2901        # * "monitoring.googleapis.com/kubernetes" - the Google Cloud Monitoring
2902        # service with Kubernetes-native resource model in Stackdriver
2903        # * "monitoring.googleapis.com" - the Google Cloud Monitoring service
2904        # * "none" - no metrics will be exported from the cluster
2905    "clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
2906        # This field has been deprecated and replaced by the name field.
2907    "name": "A String", # The name (project, location, cluster) of the cluster to set monitoring.
2908        # Specified in the format 'projects/*/locations/*/clusters/*'.
2909    "zone": "A String", # Deprecated. The name of the Google Compute Engine
2910        # [zone](/compute/docs/zones#available) in which the cluster
2911        # resides.
2912        # This field has been deprecated and replaced by the name field.
2913  }
2914
2915  x__xgafv: string, V1 error format.
2916    Allowed values
2917      1 - v1 error format
2918      2 - v2 error format
2919
2920Returns:
2921  An object of the form:
2922
2923    { # This operation resource represents operations that may have happened or are
2924      # happening on the cluster. All fields are output only.
2925    "status": "A String", # The current status of the operation.
2926    "selfLink": "A String", # Server-defined URL for the resource.
2927    "name": "A String", # The server-assigned ID for the operation.
2928    "zone": "A String", # The name of the Google Compute Engine
2929        # [zone](/compute/docs/zones#available) in which the operation
2930        # is taking place.
2931        # This field is deprecated, use location instead.
2932    "startTime": "A String", # [Output only] The time the operation started, in
2933        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
2934    "detail": "A String", # Detailed operation progress, if available.
2935    "operationType": "A String", # The operation type.
2936    "targetLink": "A String", # Server-defined URL for the target of the operation.
2937    "location": "A String", # [Output only] The name of the Google Compute Engine
2938        # [zone](/compute/docs/regions-zones/regions-zones#available) or
2939        # [region](/compute/docs/regions-zones/regions-zones#available) in which
2940        # the cluster resides.
2941    "nodepoolConditions": [ # Which conditions caused the current node pool state.
2942      { # StatusCondition describes why a cluster or a node pool has a certain status
2943          # (e.g., ERROR or DEGRADED).
2944        "message": "A String", # Human-friendly representation of the condition
2945        "code": "A String", # Machine-friendly representation of the condition
2946      },
2947    ],
2948    "endTime": "A String", # [Output only] The time the operation completed, in
2949        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
2950    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
2951    "clusterConditions": [ # Which conditions caused the current cluster state.
2952      { # StatusCondition describes why a cluster or a node pool has a certain status
2953          # (e.g., ERROR or DEGRADED).
2954        "message": "A String", # Human-friendly representation of the condition
2955        "code": "A String", # Machine-friendly representation of the condition
2956      },
2957    ],
2958  }</pre>
2959</div>
2960
2961<div class="method">
2962    <code class="details" id="resourceLabels">resourceLabels(projectId, zone, clusterId, body, x__xgafv=None)</code>
2963  <pre>Sets labels on a cluster.
2964
2965Args:
2966  projectId: string, Deprecated. The Google Developers Console [project ID or project
2967number](https://developers.google.com/console/help/new/#projectnumber).
2968This field has been deprecated and replaced by the name field. (required)
2969  zone: string, Deprecated. The name of the Google Compute Engine
2970[zone](/compute/docs/zones#available) in which the cluster
2971resides.
2972This field has been deprecated and replaced by the name field. (required)
2973  clusterId: string, Deprecated. The name of the cluster.
2974This field has been deprecated and replaced by the name field. (required)
2975  body: object, The request body. (required)
2976    The object takes the form of:
2977
2978{ # SetLabelsRequest sets the Google Cloud Platform labels on a Google Container
2979      # Engine cluster, which will in turn set them for Google Compute Engine
2980      # resources used by that cluster
2981    "name": "A String", # The name (project, location, cluster id) of the cluster to set labels.
2982        # Specified in the format 'projects/*/locations/*/clusters/*'.
2983    "zone": "A String", # Deprecated. The name of the Google Compute Engine
2984        # [zone](/compute/docs/zones#available) in which the cluster
2985        # resides.
2986        # This field has been deprecated and replaced by the name field.
2987    "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
2988        # number](https://developers.google.com/console/help/new/#projectnumber).
2989        # This field has been deprecated and replaced by the name field.
2990    "labelFingerprint": "A String", # The fingerprint of the previous set of labels for this resource,
2991        # used to detect conflicts. The fingerprint is initially generated by
2992        # Kubernetes Engine and changes after every request to modify or update
2993        # labels. You must always provide an up-to-date fingerprint hash when
2994        # updating or changing labels. Make a <code>get()</code> request to the
2995        # resource to get the latest fingerprint.
2996    "clusterId": "A String", # Deprecated. The name of the cluster.
2997        # This field has been deprecated and replaced by the name field.
2998    "resourceLabels": { # The labels to set for that cluster.
2999      "a_key": "A String",
3000    },
3001  }
3002
3003  x__xgafv: string, V1 error format.
3004    Allowed values
3005      1 - v1 error format
3006      2 - v2 error format
3007
3008Returns:
3009  An object of the form:
3010
3011    { # This operation resource represents operations that may have happened or are
3012      # happening on the cluster. All fields are output only.
3013    "status": "A String", # The current status of the operation.
3014    "selfLink": "A String", # Server-defined URL for the resource.
3015    "name": "A String", # The server-assigned ID for the operation.
3016    "zone": "A String", # The name of the Google Compute Engine
3017        # [zone](/compute/docs/zones#available) in which the operation
3018        # is taking place.
3019        # This field is deprecated, use location instead.
3020    "startTime": "A String", # [Output only] The time the operation started, in
3021        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3022    "detail": "A String", # Detailed operation progress, if available.
3023    "operationType": "A String", # The operation type.
3024    "targetLink": "A String", # Server-defined URL for the target of the operation.
3025    "location": "A String", # [Output only] The name of the Google Compute Engine
3026        # [zone](/compute/docs/regions-zones/regions-zones#available) or
3027        # [region](/compute/docs/regions-zones/regions-zones#available) in which
3028        # the cluster resides.
3029    "nodepoolConditions": [ # Which conditions caused the current node pool state.
3030      { # StatusCondition describes why a cluster or a node pool has a certain status
3031          # (e.g., ERROR or DEGRADED).
3032        "message": "A String", # Human-friendly representation of the condition
3033        "code": "A String", # Machine-friendly representation of the condition
3034      },
3035    ],
3036    "endTime": "A String", # [Output only] The time the operation completed, in
3037        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3038    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
3039    "clusterConditions": [ # Which conditions caused the current cluster state.
3040      { # StatusCondition describes why a cluster or a node pool has a certain status
3041          # (e.g., ERROR or DEGRADED).
3042        "message": "A String", # Human-friendly representation of the condition
3043        "code": "A String", # Machine-friendly representation of the condition
3044      },
3045    ],
3046  }</pre>
3047</div>
3048
3049<div class="method">
3050    <code class="details" id="setMaintenancePolicy">setMaintenancePolicy(projectId, zone, clusterId, body, x__xgafv=None)</code>
3051  <pre>Sets the maintenance policy for a cluster.
3052
3053Args:
3054  projectId: string, The Google Developers Console [project ID or project
3055number](https://support.google.com/cloud/answer/6158840). (required)
3056  zone: string, The name of the Google Compute Engine
3057[zone](/compute/docs/zones#available) in which the cluster
3058resides. (required)
3059  clusterId: string, The name of the cluster to update. (required)
3060  body: object, The request body. (required)
3061    The object takes the form of:
3062
3063{ # SetMaintenancePolicyRequest sets the maintenance policy for a cluster.
3064    "projectId": "A String", # The Google Developers Console [project ID or project
3065        # number](https://support.google.com/cloud/answer/6158840).
3066    "maintenancePolicy": { # MaintenancePolicy defines the maintenance policy to be used for the cluster. # The maintenance policy to be set for the cluster. An empty field
3067        # clears the existing maintenance policy.
3068      "window": { # MaintenanceWindow defines the maintenance window to be used for the cluster. # Specifies the maintenance window in which maintenance may be performed.
3069        "dailyMaintenanceWindow": { # Time window specified for daily maintenance operations. # DailyMaintenanceWindow specifies a daily maintenance operation window.
3070          "duration": "A String", # [Output only] Duration of the time window, automatically chosen to be
3071              # smallest possible in the given scenario.
3072              # Duration will be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
3073              # format "PTnHnMnS".
3074          "startTime": "A String", # Time within the maintenance window to start the maintenance operations.
3075              # Time format should be in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt)
3076              # format "HH:MM", where HH : [00-23] and MM : [00-59] GMT.
3077        },
3078      },
3079    },
3080    "clusterId": "A String", # The name of the cluster to update.
3081    "name": "A String", # The name (project, location, cluster id) of the cluster to set maintenance
3082        # policy.
3083        # Specified in the format 'projects/*/locations/*/clusters/*'.
3084    "zone": "A String", # The name of the Google Compute Engine
3085        # [zone](/compute/docs/zones#available) in which the cluster
3086        # resides.
3087  }
3088
3089  x__xgafv: string, V1 error format.
3090    Allowed values
3091      1 - v1 error format
3092      2 - v2 error format
3093
3094Returns:
3095  An object of the form:
3096
3097    { # This operation resource represents operations that may have happened or are
3098      # happening on the cluster. All fields are output only.
3099    "status": "A String", # The current status of the operation.
3100    "selfLink": "A String", # Server-defined URL for the resource.
3101    "name": "A String", # The server-assigned ID for the operation.
3102    "zone": "A String", # The name of the Google Compute Engine
3103        # [zone](/compute/docs/zones#available) in which the operation
3104        # is taking place.
3105        # This field is deprecated, use location instead.
3106    "startTime": "A String", # [Output only] The time the operation started, in
3107        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3108    "detail": "A String", # Detailed operation progress, if available.
3109    "operationType": "A String", # The operation type.
3110    "targetLink": "A String", # Server-defined URL for the target of the operation.
3111    "location": "A String", # [Output only] The name of the Google Compute Engine
3112        # [zone](/compute/docs/regions-zones/regions-zones#available) or
3113        # [region](/compute/docs/regions-zones/regions-zones#available) in which
3114        # the cluster resides.
3115    "nodepoolConditions": [ # Which conditions caused the current node pool state.
3116      { # StatusCondition describes why a cluster or a node pool has a certain status
3117          # (e.g., ERROR or DEGRADED).
3118        "message": "A String", # Human-friendly representation of the condition
3119        "code": "A String", # Machine-friendly representation of the condition
3120      },
3121    ],
3122    "endTime": "A String", # [Output only] The time the operation completed, in
3123        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3124    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
3125    "clusterConditions": [ # Which conditions caused the current cluster state.
3126      { # StatusCondition describes why a cluster or a node pool has a certain status
3127          # (e.g., ERROR or DEGRADED).
3128        "message": "A String", # Human-friendly representation of the condition
3129        "code": "A String", # Machine-friendly representation of the condition
3130      },
3131    ],
3132  }</pre>
3133</div>
3134
3135<div class="method">
3136    <code class="details" id="setMasterAuth">setMasterAuth(projectId, zone, clusterId, body, x__xgafv=None)</code>
3137  <pre>Sets master auth materials. Currently supports changing the admin password
3138or a specific cluster, either via password generation or explicitly setting
3139the password.
3140
3141Args:
3142  projectId: string, Deprecated. The Google Developers Console [project ID or project
3143number](https://support.google.com/cloud/answer/6158840).
3144This field has been deprecated and replaced by the name field. (required)
3145  zone: string, Deprecated. The name of the Google Compute Engine
3146[zone](/compute/docs/zones#available) in which the cluster
3147resides.
3148This field has been deprecated and replaced by the name field. (required)
3149  clusterId: string, Deprecated. The name of the cluster to upgrade.
3150This field has been deprecated and replaced by the name field. (required)
3151  body: object, The request body. (required)
3152    The object takes the form of:
3153
3154{ # SetMasterAuthRequest updates the admin password of a cluster.
3155    "name": "A String", # The name (project, location, cluster) of the cluster to set auth.
3156        # Specified in the format 'projects/*/locations/*/clusters/*'.
3157    "zone": "A String", # Deprecated. The name of the Google Compute Engine
3158        # [zone](/compute/docs/zones#available) in which the cluster
3159        # resides.
3160        # This field has been deprecated and replaced by the name field.
3161    "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
3162        # number](https://support.google.com/cloud/answer/6158840).
3163        # This field has been deprecated and replaced by the name field.
3164    "clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
3165        # This field has been deprecated and replaced by the name field.
3166    "update": { # The authentication information for accessing the master endpoint. # A description of the update.
3167        # Authentication can be done using HTTP basic auth or using client
3168        # certificates.
3169      "username": "A String", # The username to use for HTTP basic authentication to the master endpoint.
3170          # For clusters v1.6.0 and later, basic authentication can be disabled by
3171          # leaving username unspecified (or setting it to the empty string).
3172      "clientKey": "A String", # [Output only] Base64-encoded private key used by clients to authenticate
3173          # to the cluster endpoint.
3174      "clientCertificate": "A String", # [Output only] Base64-encoded public certificate used by clients to
3175          # authenticate to the cluster endpoint.
3176      "clientCertificateConfig": { # Configuration for client certificates on the cluster. # Configuration for client certificate authentication on the cluster. For
3177          # clusters before v1.12, if no configuration is specified, a client
3178          # certificate is issued.
3179        "issueClientCertificate": True or False, # Issue a client certificate.
3180      },
3181      "password": "A String", # The password to use for HTTP basic authentication to the master endpoint.
3182          # Because the master endpoint is open to the Internet, you should create a
3183          # strong password.  If a password is provided for cluster creation, username
3184          # must be non-empty.
3185      "clusterCaCertificate": "A String", # [Output only] Base64-encoded public certificate that is the root of
3186          # trust for the cluster.
3187    },
3188    "action": "A String", # The exact form of action to be taken on the master auth.
3189  }
3190
3191  x__xgafv: string, V1 error format.
3192    Allowed values
3193      1 - v1 error format
3194      2 - v2 error format
3195
3196Returns:
3197  An object of the form:
3198
3199    { # This operation resource represents operations that may have happened or are
3200      # happening on the cluster. All fields are output only.
3201    "status": "A String", # The current status of the operation.
3202    "selfLink": "A String", # Server-defined URL for the resource.
3203    "name": "A String", # The server-assigned ID for the operation.
3204    "zone": "A String", # The name of the Google Compute Engine
3205        # [zone](/compute/docs/zones#available) in which the operation
3206        # is taking place.
3207        # This field is deprecated, use location instead.
3208    "startTime": "A String", # [Output only] The time the operation started, in
3209        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3210    "detail": "A String", # Detailed operation progress, if available.
3211    "operationType": "A String", # The operation type.
3212    "targetLink": "A String", # Server-defined URL for the target of the operation.
3213    "location": "A String", # [Output only] The name of the Google Compute Engine
3214        # [zone](/compute/docs/regions-zones/regions-zones#available) or
3215        # [region](/compute/docs/regions-zones/regions-zones#available) in which
3216        # the cluster resides.
3217    "nodepoolConditions": [ # Which conditions caused the current node pool state.
3218      { # StatusCondition describes why a cluster or a node pool has a certain status
3219          # (e.g., ERROR or DEGRADED).
3220        "message": "A String", # Human-friendly representation of the condition
3221        "code": "A String", # Machine-friendly representation of the condition
3222      },
3223    ],
3224    "endTime": "A String", # [Output only] The time the operation completed, in
3225        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3226    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
3227    "clusterConditions": [ # Which conditions caused the current cluster state.
3228      { # StatusCondition describes why a cluster or a node pool has a certain status
3229          # (e.g., ERROR or DEGRADED).
3230        "message": "A String", # Human-friendly representation of the condition
3231        "code": "A String", # Machine-friendly representation of the condition
3232      },
3233    ],
3234  }</pre>
3235</div>
3236
3237<div class="method">
3238    <code class="details" id="setNetworkPolicy">setNetworkPolicy(projectId, zone, clusterId, body, x__xgafv=None)</code>
3239  <pre>Enables or disables Network Policy for a cluster.
3240
3241Args:
3242  projectId: string, Deprecated. The Google Developers Console [project ID or project
3243number](https://developers.google.com/console/help/new/#projectnumber).
3244This field has been deprecated and replaced by the name field. (required)
3245  zone: string, Deprecated. The name of the Google Compute Engine
3246[zone](/compute/docs/zones#available) in which the cluster
3247resides.
3248This field has been deprecated and replaced by the name field. (required)
3249  clusterId: string, Deprecated. The name of the cluster.
3250This field has been deprecated and replaced by the name field. (required)
3251  body: object, The request body. (required)
3252    The object takes the form of:
3253
3254{ # SetNetworkPolicyRequest enables/disables network policy for a cluster.
3255    "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
3256        # number](https://developers.google.com/console/help/new/#projectnumber).
3257        # This field has been deprecated and replaced by the name field.
3258    "clusterId": "A String", # Deprecated. The name of the cluster.
3259        # This field has been deprecated and replaced by the name field.
3260    "networkPolicy": { # Configuration options for the NetworkPolicy feature. # Configuration options for the NetworkPolicy feature.
3261        # https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
3262      "enabled": True or False, # Whether network policy is enabled on the cluster.
3263      "provider": "A String", # The selected network policy provider.
3264    },
3265    "zone": "A String", # Deprecated. The name of the Google Compute Engine
3266        # [zone](/compute/docs/zones#available) in which the cluster
3267        # resides.
3268        # This field has been deprecated and replaced by the name field.
3269    "name": "A String", # The name (project, location, cluster id) of the cluster to set networking
3270        # policy. Specified in the format 'projects/*/locations/*/clusters/*'.
3271  }
3272
3273  x__xgafv: string, V1 error format.
3274    Allowed values
3275      1 - v1 error format
3276      2 - v2 error format
3277
3278Returns:
3279  An object of the form:
3280
3281    { # This operation resource represents operations that may have happened or are
3282      # happening on the cluster. All fields are output only.
3283    "status": "A String", # The current status of the operation.
3284    "selfLink": "A String", # Server-defined URL for the resource.
3285    "name": "A String", # The server-assigned ID for the operation.
3286    "zone": "A String", # The name of the Google Compute Engine
3287        # [zone](/compute/docs/zones#available) in which the operation
3288        # is taking place.
3289        # This field is deprecated, use location instead.
3290    "startTime": "A String", # [Output only] The time the operation started, in
3291        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3292    "detail": "A String", # Detailed operation progress, if available.
3293    "operationType": "A String", # The operation type.
3294    "targetLink": "A String", # Server-defined URL for the target of the operation.
3295    "location": "A String", # [Output only] The name of the Google Compute Engine
3296        # [zone](/compute/docs/regions-zones/regions-zones#available) or
3297        # [region](/compute/docs/regions-zones/regions-zones#available) in which
3298        # the cluster resides.
3299    "nodepoolConditions": [ # Which conditions caused the current node pool state.
3300      { # StatusCondition describes why a cluster or a node pool has a certain status
3301          # (e.g., ERROR or DEGRADED).
3302        "message": "A String", # Human-friendly representation of the condition
3303        "code": "A String", # Machine-friendly representation of the condition
3304      },
3305    ],
3306    "endTime": "A String", # [Output only] The time the operation completed, in
3307        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3308    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
3309    "clusterConditions": [ # Which conditions caused the current cluster state.
3310      { # StatusCondition describes why a cluster or a node pool has a certain status
3311          # (e.g., ERROR or DEGRADED).
3312        "message": "A String", # Human-friendly representation of the condition
3313        "code": "A String", # Machine-friendly representation of the condition
3314      },
3315    ],
3316  }</pre>
3317</div>
3318
3319<div class="method">
3320    <code class="details" id="startIpRotation">startIpRotation(projectId, zone, clusterId, body, x__xgafv=None)</code>
3321  <pre>Starts master IP rotation.
3322
3323Args:
3324  projectId: string, Deprecated. The Google Developers Console [project ID or project
3325number](https://developers.google.com/console/help/new/#projectnumber).
3326This field has been deprecated and replaced by the name field. (required)
3327  zone: string, Deprecated. The name of the Google Compute Engine
3328[zone](/compute/docs/zones#available) in which the cluster
3329resides.
3330This field has been deprecated and replaced by the name field. (required)
3331  clusterId: string, Deprecated. The name of the cluster.
3332This field has been deprecated and replaced by the name field. (required)
3333  body: object, The request body. (required)
3334    The object takes the form of:
3335
3336{ # StartIPRotationRequest creates a new IP for the cluster and then performs
3337      # a node upgrade on each node pool to point to the new IP.
3338    "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
3339        # number](https://developers.google.com/console/help/new/#projectnumber).
3340        # This field has been deprecated and replaced by the name field.
3341    "rotateCredentials": True or False, # Whether to rotate credentials during IP rotation.
3342    "clusterId": "A String", # Deprecated. The name of the cluster.
3343        # This field has been deprecated and replaced by the name field.
3344    "name": "A String", # The name (project, location, cluster id) of the cluster to start IP
3345        # rotation. Specified in the format 'projects/*/locations/*/clusters/*'.
3346    "zone": "A String", # Deprecated. The name of the Google Compute Engine
3347        # [zone](/compute/docs/zones#available) in which the cluster
3348        # resides.
3349        # This field has been deprecated and replaced by the name field.
3350  }
3351
3352  x__xgafv: string, V1 error format.
3353    Allowed values
3354      1 - v1 error format
3355      2 - v2 error format
3356
3357Returns:
3358  An object of the form:
3359
3360    { # This operation resource represents operations that may have happened or are
3361      # happening on the cluster. All fields are output only.
3362    "status": "A String", # The current status of the operation.
3363    "selfLink": "A String", # Server-defined URL for the resource.
3364    "name": "A String", # The server-assigned ID for the operation.
3365    "zone": "A String", # The name of the Google Compute Engine
3366        # [zone](/compute/docs/zones#available) in which the operation
3367        # is taking place.
3368        # This field is deprecated, use location instead.
3369    "startTime": "A String", # [Output only] The time the operation started, in
3370        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3371    "detail": "A String", # Detailed operation progress, if available.
3372    "operationType": "A String", # The operation type.
3373    "targetLink": "A String", # Server-defined URL for the target of the operation.
3374    "location": "A String", # [Output only] The name of the Google Compute Engine
3375        # [zone](/compute/docs/regions-zones/regions-zones#available) or
3376        # [region](/compute/docs/regions-zones/regions-zones#available) in which
3377        # the cluster resides.
3378    "nodepoolConditions": [ # Which conditions caused the current node pool state.
3379      { # StatusCondition describes why a cluster or a node pool has a certain status
3380          # (e.g., ERROR or DEGRADED).
3381        "message": "A String", # Human-friendly representation of the condition
3382        "code": "A String", # Machine-friendly representation of the condition
3383      },
3384    ],
3385    "endTime": "A String", # [Output only] The time the operation completed, in
3386        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3387    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
3388    "clusterConditions": [ # Which conditions caused the current cluster state.
3389      { # StatusCondition describes why a cluster or a node pool has a certain status
3390          # (e.g., ERROR or DEGRADED).
3391        "message": "A String", # Human-friendly representation of the condition
3392        "code": "A String", # Machine-friendly representation of the condition
3393      },
3394    ],
3395  }</pre>
3396</div>
3397
3398<div class="method">
3399    <code class="details" id="update">update(projectId, zone, clusterId, body, x__xgafv=None)</code>
3400  <pre>Updates the settings of a specific cluster.
3401
3402Args:
3403  projectId: string, Deprecated. The Google Developers Console [project ID or project
3404number](https://support.google.com/cloud/answer/6158840).
3405This field has been deprecated and replaced by the name field. (required)
3406  zone: string, Deprecated. The name of the Google Compute Engine
3407[zone](/compute/docs/zones#available) in which the cluster
3408resides.
3409This field has been deprecated and replaced by the name field. (required)
3410  clusterId: string, Deprecated. The name of the cluster to upgrade.
3411This field has been deprecated and replaced by the name field. (required)
3412  body: object, The request body. (required)
3413    The object takes the form of:
3414
3415{ # UpdateClusterRequest updates the settings of a cluster.
3416    "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
3417        # number](https://support.google.com/cloud/answer/6158840).
3418        # This field has been deprecated and replaced by the name field.
3419    "clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
3420        # This field has been deprecated and replaced by the name field.
3421    "update": { # ClusterUpdate describes an update to the cluster. Exactly one update can # A description of the update.
3422        # be applied to a cluster with each request, so at most one field can be
3423        # provided.
3424      "desiredLoggingService": "A String", # The logging service the cluster should use to write logs.
3425          # Currently available options:
3426          #
3427          # * "logging.googleapis.com/kubernetes" - the Google Cloud Logging
3428          # service with Kubernetes-native resource model in Stackdriver
3429          # * "logging.googleapis.com" - the Google Cloud Logging service
3430          # * "none" - no logs will be exported from the cluster
3431      "desiredMasterAuthorizedNetworksConfig": { # Configuration options for the master authorized networks feature. Enabled # The desired configuration options for master authorized networks feature.
3432          # master authorized networks will disallow all external traffic to access
3433          # Kubernetes master through HTTPS except traffic from the given CIDR blocks,
3434          # Google Compute Engine Public IPs and Google Prod IPs.
3435        "enabled": True or False, # Whether or not master authorized networks is enabled.
3436        "cidrBlocks": [ # cidr_blocks define up to 50 external networks that could access
3437            # Kubernetes master through HTTPS.
3438          { # CidrBlock contains an optional name and one CIDR block.
3439            "displayName": "A String", # display_name is an optional field for users to identify CIDR blocks.
3440            "cidrBlock": "A String", # cidr_block must be specified in CIDR notation.
3441          },
3442        ],
3443      },
3444      "desiredNodePoolId": "A String", # The node pool to be upgraded. This field is mandatory if
3445          # "desired_node_version", "desired_image_family" or
3446          # "desired_node_pool_autoscaling" is specified and there is more than one
3447          # node pool on the cluster.
3448      "desiredAddonsConfig": { # Configuration for the addons that can be automatically spun up in the # Configurations for the various addons available to run in the cluster.
3449          # cluster, enabling additional functionality.
3450        "httpLoadBalancing": { # Configuration options for the HTTP (L7) load balancing controller addon, # Configuration for the HTTP (L7) load balancing controller addon, which
3451            # makes it easy to set up HTTP load balancers for services in a cluster.
3452            # which makes it easy to set up HTTP load balancers for services in a cluster.
3453          "disabled": True or False, # Whether the HTTP Load Balancing controller is enabled in the cluster.
3454              # When enabled, it runs a small pod in the cluster that manages the load
3455              # balancers.
3456        },
3457        "networkPolicyConfig": { # Configuration for NetworkPolicy. This only tracks whether the addon # Configuration for NetworkPolicy. This only tracks whether the addon
3458            # is enabled or not on the Master, it does not track whether network policy
3459            # is enabled for the nodes.
3460            # is enabled or not on the Master, it does not track whether network policy
3461            # is enabled for the nodes.
3462          "disabled": True or False, # Whether NetworkPolicy is enabled for this cluster.
3463        },
3464        "kubernetesDashboard": { # Configuration for the Kubernetes Dashboard. # Configuration for the Kubernetes Dashboard.
3465            # This addon is deprecated, and will be disabled in 1.15. It is recommended
3466            # to use the Cloud Console to manage and monitor your Kubernetes clusters,
3467            # workloads and applications. For more information, see:
3468            # https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
3469          "disabled": True or False, # Whether the Kubernetes Dashboard is enabled for this cluster.
3470        },
3471        "horizontalPodAutoscaling": { # Configuration options for the horizontal pod autoscaling feature, which # Configuration for the horizontal pod autoscaling feature, which
3472            # increases or decreases the number of replica pods a replication controller
3473            # has based on the resource usage of the existing pods.
3474            # increases or decreases the number of replica pods a replication controller
3475            # has based on the resource usage of the existing pods.
3476          "disabled": True or False, # Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
3477              # When enabled, it ensures that a Heapster pod is running in the cluster,
3478              # which is also used by the Cloud Monitoring service.
3479        },
3480      },
3481      "desiredMasterVersion": "A String", # The Kubernetes version to change the master to.
3482          #
3483          # Users may specify either explicit versions offered by
3484          # Kubernetes Engine or version aliases, which have the following behavior:
3485          #
3486          # - "latest": picks the highest valid Kubernetes version
3487          # - "1.X": picks the highest valid patch+gke.N patch in the 1.X version
3488          # - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
3489          # - "1.X.Y-gke.N": picks an explicit Kubernetes version
3490          # - "-": picks the default Kubernetes version
3491      "desiredLocations": [ # The desired list of Google Compute Engine
3492          # [zones](/compute/docs/zones#available) in which the cluster's nodes
3493          # should be located. Changing the locations a cluster is in will result
3494          # in nodes being either created or removed from the cluster, depending on
3495          # whether locations are being added or removed.
3496          #
3497          # This list must always include the cluster's primary zone.
3498        "A String",
3499      ],
3500      "desiredNodeVersion": "A String", # The Kubernetes version to change the nodes to (typically an
3501          # upgrade).
3502          #
3503          # Users may specify either explicit versions offered by
3504          # Kubernetes Engine or version aliases, which have the following behavior:
3505          #
3506          # - "latest": picks the highest valid Kubernetes version
3507          # - "1.X": picks the highest valid patch+gke.N patch in the 1.X version
3508          # - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
3509          # - "1.X.Y-gke.N": picks an explicit Kubernetes version
3510          # - "-": picks the Kubernetes master version
3511      "desiredMonitoringService": "A String", # The monitoring service the cluster should use to write metrics.
3512          # Currently available options:
3513          #
3514          # * "monitoring.googleapis.com/kubernetes" - the Google Cloud Monitoring
3515          # service with Kubernetes-native resource model in Stackdriver
3516          # * "monitoring.googleapis.com" - the Google Cloud Monitoring service
3517          # * "none" - no metrics will be exported from the cluster
3518      "desiredResourceUsageExportConfig": { # Configuration for exporting cluster resource usages. # The desired configuration for exporting resource usage.
3519        "bigqueryDestination": { # Parameters for using BigQuery as the destination of resource usage export. # Configuration to use BigQuery as usage export destination.
3520          "datasetId": "A String", # The ID of a BigQuery Dataset.
3521        },
3522        "enableNetworkEgressMetering": True or False, # Whether to enable network egress metering for this cluster. If enabled, a
3523            # daemonset will be created in the cluster to meter network egress traffic.
3524        "consumptionMeteringConfig": { # Parameters for controlling consumption metering. # Configuration to enable resource consumption metering.
3525          "enabled": True or False, # Whether to enable consumption metering for this cluster. If enabled, a
3526              # second BigQuery table will be created to hold resource consumption
3527              # records.
3528        },
3529      },
3530      "desiredNodePoolAutoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for the node pool specified in
3531          # desired_node_pool_id. If there is only one pool in the
3532          # cluster and desired_node_pool_id is not provided then
3533          # the change applies to that single node pool.
3534          # adjust the size of the node pool to the current cluster usage.
3535        "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be >= 1 and <=
3536            # max_node_count.
3537        "enabled": True or False, # Is autoscaling enabled for this node pool.
3538        "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There
3539            # has to enough quota to scale up the cluster.
3540      },
3541      "desiredImageType": "A String", # The desired image type for the node pool.
3542          # NOTE: Set the "desired_node_pool" field as well.
3543    },
3544    "zone": "A String", # Deprecated. The name of the Google Compute Engine
3545        # [zone](/compute/docs/zones#available) in which the cluster
3546        # resides.
3547        # This field has been deprecated and replaced by the name field.
3548    "name": "A String", # The name (project, location, cluster) of the cluster to update.
3549        # Specified in the format 'projects/*/locations/*/clusters/*'.
3550  }
3551
3552  x__xgafv: string, V1 error format.
3553    Allowed values
3554      1 - v1 error format
3555      2 - v2 error format
3556
3557Returns:
3558  An object of the form:
3559
3560    { # This operation resource represents operations that may have happened or are
3561      # happening on the cluster. All fields are output only.
3562    "status": "A String", # The current status of the operation.
3563    "selfLink": "A String", # Server-defined URL for the resource.
3564    "name": "A String", # The server-assigned ID for the operation.
3565    "zone": "A String", # The name of the Google Compute Engine
3566        # [zone](/compute/docs/zones#available) in which the operation
3567        # is taking place.
3568        # This field is deprecated, use location instead.
3569    "startTime": "A String", # [Output only] The time the operation started, in
3570        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3571    "detail": "A String", # Detailed operation progress, if available.
3572    "operationType": "A String", # The operation type.
3573    "targetLink": "A String", # Server-defined URL for the target of the operation.
3574    "location": "A String", # [Output only] The name of the Google Compute Engine
3575        # [zone](/compute/docs/regions-zones/regions-zones#available) or
3576        # [region](/compute/docs/regions-zones/regions-zones#available) in which
3577        # the cluster resides.
3578    "nodepoolConditions": [ # Which conditions caused the current node pool state.
3579      { # StatusCondition describes why a cluster or a node pool has a certain status
3580          # (e.g., ERROR or DEGRADED).
3581        "message": "A String", # Human-friendly representation of the condition
3582        "code": "A String", # Machine-friendly representation of the condition
3583      },
3584    ],
3585    "endTime": "A String", # [Output only] The time the operation completed, in
3586        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
3587    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
3588    "clusterConditions": [ # Which conditions caused the current cluster state.
3589      { # StatusCondition describes why a cluster or a node pool has a certain status
3590          # (e.g., ERROR or DEGRADED).
3591        "message": "A String", # Human-friendly representation of the condition
3592        "code": "A String", # Machine-friendly representation of the condition
3593      },
3594    ],
3595  }</pre>
3596</div>
3597
3598</body></html>