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