blob: 1ccd020d28ac5d44826f10ddb07808f56f48c3ee [file] [log] [blame]
<html><body>
<style>
body, h1, h2, h3, div, span, p, pre, a {
margin: 0;
padding: 0;
border: 0;
font-weight: inherit;
font-style: inherit;
font-size: 100%;
font-family: inherit;
vertical-align: baseline;
}
body {
font-size: 13px;
padding: 1em;
}
h1 {
font-size: 26px;
margin-bottom: 1em;
}
h2 {
font-size: 24px;
margin-bottom: 1em;
}
h3 {
font-size: 20px;
margin-bottom: 1em;
margin-top: 1em;
}
pre, code {
line-height: 1.5;
font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}
pre {
margin-top: 0.5em;
}
h1, h2, h3, p {
font-family: Arial, sans serif;
}
h1, h2, h3 {
border-bottom: solid #CCC 1px;
}
.toc_element {
margin-top: 0.5em;
}
.firstline {
margin-left: 2 em;
}
.method {
margin-top: 1em;
border: solid 1px #CCC;
padding: 1em;
background: #EEE;
}
.details {
font-weight: bold;
font-size: 14px;
}
</style>
<h1><a href="container_v1beta1.html">Kubernetes Engine API</a> . <a href="container_v1beta1.projects.html">projects</a> . <a href="container_v1beta1.projects.locations.html">locations</a> . <a href="container_v1beta1.projects.locations.clusters.html">clusters</a> . <a href="container_v1beta1.projects.locations.clusters.nodePools.html">nodePools</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
<code><a href="#create">create(parent, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Creates a node pool for a cluster.</p>
<p class="toc_element">
<code><a href="#delete">delete(name, clusterId=None, projectId=None, zone=None, nodePoolId=None, x__xgafv=None)</a></code></p>
<p class="firstline">Deletes a node pool from a cluster.</p>
<p class="toc_element">
<code><a href="#get">get(name, clusterId=None, projectId=None, zone=None, nodePoolId=None, x__xgafv=None)</a></code></p>
<p class="firstline">Retrieves the requested node pool.</p>
<p class="toc_element">
<code><a href="#list">list(parent, projectId=None, clusterId=None, zone=None, x__xgafv=None)</a></code></p>
<p class="firstline">Lists the node pools for a cluster.</p>
<p class="toc_element">
<code><a href="#rollback">rollback(name, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Rolls back a previously Aborted or Failed NodePool upgrade.</p>
<p class="toc_element">
<code><a href="#setAutoscaling">setAutoscaling(name, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Sets the autoscaling settings of a specific node pool.</p>
<p class="toc_element">
<code><a href="#setManagement">setManagement(name, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Sets the NodeManagement options for a node pool.</p>
<p class="toc_element">
<code><a href="#setSize">setSize(name, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Sets the size for a specific node pool.</p>
<p class="toc_element">
<code><a href="#update">update(name, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Updates the version and/or image type of a specific node pool.</p>
<h3>Method Details</h3>
<div class="method">
<code class="details" id="create">create(parent, body=None, x__xgafv=None)</code>
<pre>Creates a node pool for a cluster.
Args:
parent: string, The parent (project, location, cluster id) where the node pool will be
created. Specified in the format
`projects/*/locations/*/clusters/*`. (required)
body: object, The request body.
The object takes the form of:
{ # CreateNodePoolRequest creates a node pool for a cluster.
&quot;zone&quot;: &quot;A String&quot;, # Required. Deprecated. The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# cluster resides. This field has been deprecated and replaced by the parent
# field.
&quot;projectId&quot;: &quot;A String&quot;, # Required. Deprecated. The Google Developers Console [project ID or project
# number](https://developers.google.com/console/help/new/#projectnumber).
# This field has been deprecated and replaced by the parent field.
&quot;nodePool&quot;: { # NodePool contains the name and configuration for a cluster&#x27;s node pool. # Required. The node pool to create.
# Node pools are a set of nodes (i.e. VM&#x27;s), with a common configuration and
# specification, under the control of the cluster master. They may have a set
# of Kubernetes labels applied to them, which may be used to reference them
# during pod scheduling. They may also be resized up or down, to accommodate
# the workload.
&quot;status&quot;: &quot;A String&quot;, # [Output only] The status of the nodes in this pool instance.
&quot;upgradeSettings&quot;: { # These upgrade settings control the level of parallelism and the level of # Upgrade settings control disruption and speed of the upgrade.
# disruption caused by an upgrade.
#
# maxUnavailable controls the number of nodes that can be simultaneously
# unavailable.
#
# maxSurge controls the number of additional nodes that can be added to the
# node pool temporarily for the time of the upgrade to increase the number of
# available nodes.
#
# (maxUnavailable + maxSurge) determines the level of parallelism (how many
# nodes are being upgraded at the same time).
#
# Note: upgrades inevitably introduce some disruption since workloads need to
# be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
# this holds true. (Disruption stays within the limits of
# PodDisruptionBudget, if it is configured.)
#
# Consider a hypothetical node pool with 5 nodes having maxSurge=2,
# maxUnavailable=1. This means the upgrade process upgrades 3 nodes
# simultaneously. It creates 2 additional (upgraded) nodes, then it brings
# down 3 old (not yet upgraded) nodes at the same time. This ensures that
# there are always at least 4 nodes available.
&quot;maxUnavailable&quot;: 42, # The maximum number of nodes that can be simultaneously unavailable during
# the upgrade process. A node is considered available if its status is
# Ready.
&quot;maxSurge&quot;: 42, # The maximum number of nodes that can be created beyond the current size
# of the node pool during the upgrade process.
},
&quot;instanceGroupUrls&quot;: [ # [Output only] The resource URLs of the [managed instance
# groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
# associated with this node pool.
&quot;A String&quot;,
],
&quot;autoscaling&quot;: { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for this NodePool. Autoscaler is enabled
# only if a valid configuration is present.
# adjust the size of the node pool to the current cluster usage.
&quot;autoprovisioned&quot;: True or False, # Can this node pool be deleted automatically.
&quot;minNodeCount&quot;: 42, # Minimum number of nodes in the NodePool. Must be &gt;= 1 and &lt;=
# max_node_count.
&quot;enabled&quot;: True or False, # Is autoscaling enabled for this node pool.
&quot;maxNodeCount&quot;: 42, # Maximum number of nodes in the NodePool. Must be &gt;= min_node_count. There
# has to enough quota to scale up the cluster.
},
&quot;initialNodeCount&quot;: 42, # The initial node count for the pool. You must ensure that your
# Compute Engine [resource quota](https://cloud.google.com/compute/quotas)
# is sufficient for this number of instances. You must also have available
# firewall and routes quota.
&quot;config&quot;: { # Parameters that describe the nodes in a cluster. # The node configuration of the pool.
&quot;oauthScopes&quot;: [ # The set of Google API scopes to be made available on all of the
# node VMs under the &quot;default&quot; service account.
#
# The following scopes are recommended, but not required, and by default are
# not included:
#
# * `https://www.googleapis.com/auth/compute` is required for mounting
# persistent storage on your nodes.
# * `https://www.googleapis.com/auth/devstorage.read_only` is required for
# communicating with **gcr.io**
# (the [Google Container
# Registry](https://cloud.google.com/container-registry/)).
#
# If unspecified, no scopes are added, unless Cloud Logging or Cloud
# Monitoring are enabled, in which case their required scopes will be added.
&quot;A String&quot;,
],
&quot;metadata&quot;: { # The metadata key/value pairs assigned to instances in the cluster.
#
# Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
# in length. These are reflected as part of a URL in the metadata server.
# Additionally, to avoid ambiguity, keys must not conflict with any other
# metadata keys for the project or be one of the reserved keys:
# &quot;cluster-location&quot;
# &quot;cluster-name&quot;
# &quot;cluster-uid&quot;
# &quot;configure-sh&quot;
# &quot;containerd-configure-sh&quot;
# &quot;enable-oslogin&quot;
# &quot;gci-ensure-gke-docker&quot;
# &quot;gci-metrics-enabled&quot;
# &quot;gci-update-strategy&quot;
# &quot;instance-template&quot;
# &quot;kube-env&quot;
# &quot;startup-script&quot;
# &quot;user-data&quot;
# &quot;disable-address-manager&quot;
# &quot;windows-startup-script-ps1&quot;
# &quot;common-psm1&quot;
# &quot;k8s-node-setup-psm1&quot;
# &quot;install-ssh-psm1&quot;
# &quot;user-profile-psm1&quot;
# &quot;serial-port-logging-enable&quot;
# Values are free-form strings, and only have meaning as interpreted by
# the image running in the instance. The only restriction placed on them is
# that each value&#x27;s size must be less than or equal to 32 KB.
#
# The total size of all keys and values must be less than 512 KB.
&quot;a_key&quot;: &quot;A String&quot;,
},
&quot;machineType&quot;: &quot;A String&quot;, # The name of a Google Compute Engine [machine
# type](https://cloud.google.com/compute/docs/machine-types) (e.g.
# `n1-standard-1`).
#
# If unspecified, the default machine type is
# `n1-standard-1`.
&quot;nodeGroup&quot;: &quot;A String&quot;, # Setting this field will assign instances of this
# pool to run on the specified node group. This is useful for running
# workloads on [sole tenant
# nodes](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes).
&quot;shieldedInstanceConfig&quot;: { # A set of Shielded Instance options. # Shielded Instance options.
&quot;enableSecureBoot&quot;: True or False, # Defines whether the instance has Secure Boot enabled.
#
# Secure Boot helps ensure that the system only runs authentic software by
# verifying the digital signature of all boot components, and halting the
# boot process if signature verification fails.
&quot;enableIntegrityMonitoring&quot;: True or False, # Defines whether the instance has integrity monitoring enabled.
#
# Enables monitoring and attestation of the boot integrity of the instance.
# The attestation is performed against the integrity policy baseline. This
# baseline is initially derived from the implicitly trusted boot image when
# the instance is created.
},
&quot;serviceAccount&quot;: &quot;A String&quot;, # The Google Cloud Platform Service Account to be used by the node VMs.
# Specify the email address of the Service Account; otherwise, if no Service
# Account is specified, the &quot;default&quot; service account is used.
&quot;linuxNodeConfig&quot;: { # Parameters that can be configured on Linux nodes. # Parameters that can be configured on Linux nodes.
&quot;sysctls&quot;: { # The Linux kernel parameters to be applied to the nodes and all pods running
# on the nodes.
#
# The following parameters are supported.
#
# net.core.netdev_max_backlog
# net.core.rmem_max
# net.core.wmem_default
# net.core.wmem_max
# net.core.optmem_max
# net.core.somaxconn
# net.ipv4.tcp_rmem
# net.ipv4.tcp_wmem
# net.ipv4.tcp_tw_reuse
&quot;a_key&quot;: &quot;A String&quot;,
},
},
&quot;sandboxConfig&quot;: { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
&quot;type&quot;: &quot;A String&quot;, # Type of the sandbox to use for the node.
&quot;sandboxType&quot;: &quot;A String&quot;, # Type of the sandbox to use for the node (e.g. &#x27;gvisor&#x27;)
},
&quot;taints&quot;: [ # List of kubernetes taints to be applied to each node.
#
# For more information, including usage and the valid values, see:
# https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
{ # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
# can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute.
#
# See
# [here](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration)
# for more information, including usage and the valid values.
&quot;effect&quot;: &quot;A String&quot;, # Effect for taint.
&quot;key&quot;: &quot;A String&quot;, # Key for taint.
&quot;value&quot;: &quot;A String&quot;, # Value for taint.
},
],
&quot;kubeletConfig&quot;: { # Node kubelet configs. # Node kubelet configs.
&quot;cpuCfsQuotaPeriod&quot;: &quot;A String&quot;, # Set the CPU CFS quota period value &#x27;cpu.cfs_period_us&#x27;.
#
# The string must be a sequence of decimal numbers, each with optional
# fraction and a unit suffix, such as &quot;300ms&quot;.
# Valid time units are &quot;ns&quot;, &quot;us&quot; (or &quot;µs&quot;), &quot;ms&quot;, &quot;s&quot;, &quot;m&quot;, &quot;h&quot;.
# The value must be a positive duration.
&quot;cpuCfsQuota&quot;: True or False, # Enable CPU CFS quota enforcement for containers that specify CPU limits.
#
# If this option is enabled, kubelet uses CFS quota
# (https://www.kernel.org/doc/Documentation/scheduler/sched-bwc.txt) to
# enforce container CPU limits. Otherwise, CPU limits will not be enforced at
# all.
#
# Disable this option to mitigate CPU throttling problems while still having
# your pods to be in Guaranteed QoS class by specifying the CPU limits.
#
# The default value is &#x27;true&#x27; if unspecified.
&quot;cpuManagerPolicy&quot;: &quot;A String&quot;, # Control the CPU management policy on the node.
# See
# https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/
#
# The following values are allowed.
# - &quot;none&quot;: the default, which represents the existing scheduling behavior.
# - &quot;static&quot;: allows pods with certain resource characteristics to be
# granted increased CPU affinity and exclusivity on the node.
},
&quot;labels&quot;: { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
# These will added in addition to any default label(s) that
# Kubernetes may apply to the node.
# In case of conflict in label keys, the applied set may differ depending on
# the Kubernetes version -- it&#x27;s best to assume the behavior is undefined
# and conflicts should be avoided.
# For more information, including usage and the valid values, see:
# https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
&quot;a_key&quot;: &quot;A String&quot;,
},
&quot;diskType&quot;: &quot;A String&quot;, # Type of the disk attached to each node (e.g. &#x27;pd-standard&#x27; or &#x27;pd-ssd&#x27;)
#
# If unspecified, the default disk type is &#x27;pd-standard&#x27;
&quot;workloadMetadataConfig&quot;: { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
# workloads on the node pool.
&quot;nodeMetadata&quot;: &quot;A String&quot;, # NodeMetadata is the configuration for how to expose metadata to the
# workloads running on the node.
&quot;mode&quot;: &quot;A String&quot;, # Mode is the configuration for how to expose metadata to workloads running
# on the node pool.
},
&quot;bootDiskKmsKey&quot;: &quot;A String&quot;, #
# The Customer Managed Encryption Key used to encrypt the boot disk attached
# to each node in the node pool. This should be of the form
# projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
# For more information about protecting resources with Cloud KMS Keys please
# see:
# https://cloud.google.com/compute/docs/disks/customer-managed-encryption
&quot;diskSizeGb&quot;: 42, # Size of the disk attached to each node, specified in GB.
# The smallest allowed disk size is 10GB.
#
# If unspecified, the default disk size is 100GB.
&quot;reservationAffinity&quot;: { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
# the specified [Zonal Compute
# Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
# to this node pool.
# is the configuration of desired reservation which instances could take
# capacity from.
&quot;consumeReservationType&quot;: &quot;A String&quot;, # Corresponds to the type of reservation consumption.
&quot;key&quot;: &quot;A String&quot;, # Corresponds to the label key of a reservation resource. To target a
# SPECIFIC_RESERVATION by name, specify &quot;googleapis.com/reservation-name&quot; as
# the key and specify the name of your reservation as its value.
&quot;values&quot;: [ # Corresponds to the label value(s) of reservation resource(s).
&quot;A String&quot;,
],
},
&quot;preemptible&quot;: True or False, # Whether the nodes are created as preemptible VM instances. See:
# https://cloud.google.com/compute/docs/instances/preemptible for more
# inforamtion about preemptible VM instances.
&quot;minCpuPlatform&quot;: &quot;A String&quot;, # Minimum CPU platform to be used by this instance. The instance may be
# scheduled on the specified or newer CPU platform. Applicable values are the
# friendly names of CPU platforms, such as
# &lt;code&gt;minCpuPlatform: &amp;quot;Intel Haswell&amp;quot;&lt;/code&gt; or
# &lt;code&gt;minCpuPlatform: &amp;quot;Intel Sandy Bridge&amp;quot;&lt;/code&gt;. For more
# information, read [how to specify min CPU
# platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
&quot;tags&quot;: [ # The list of instance tags applied to all nodes. Tags are used to identify
# valid sources or targets for network firewalls and are specified by
# the client during cluster or node pool creation. Each tag within the list
# must comply with RFC1035.
&quot;A String&quot;,
],
&quot;accelerators&quot;: [ # A list of hardware accelerators to be attached to each node.
# See https://cloud.google.com/compute/docs/gpus for more information about
# support for GPUs.
{ # AcceleratorConfig represents a Hardware Accelerator request.
&quot;acceleratorCount&quot;: &quot;A String&quot;, # The number of the accelerator cards exposed to an instance.
&quot;acceleratorType&quot;: &quot;A String&quot;, # The accelerator type resource name. List of supported accelerators
# [here](https://cloud.google.com/compute/docs/gpus)
},
],
&quot;localSsdCount&quot;: 42, # The number of local SSD disks to be attached to the node.
#
# The limit for this value is dependent upon the maximum number of
# disks available on a machine per zone. See:
# https://cloud.google.com/compute/docs/disks/local-ssd
# for more information.
&quot;imageType&quot;: &quot;A String&quot;, # The image type to use for this node. Note that for a given image type,
# the latest version of it will be used.
},
&quot;selfLink&quot;: &quot;A String&quot;, # [Output only] Server-defined URL for the resource.
&quot;management&quot;: { # NodeManagement defines the set of node management services turned on for the # NodeManagement configuration for this NodePool.
# node pool.
&quot;autoRepair&quot;: True or False, # Whether the nodes will be automatically repaired.
&quot;autoUpgrade&quot;: True or False, # Whether the nodes will be automatically upgraded.
&quot;upgradeOptions&quot;: { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
# the Auto Upgrades will proceed.
&quot;description&quot;: &quot;A String&quot;, # [Output only] This field is set when upgrades are about to commence
# with the description of the upgrade.
&quot;autoUpgradeStartTime&quot;: &quot;A String&quot;, # [Output only] This field is set when upgrades are about to commence
# with the approximate start time for the upgrades, in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
},
},
&quot;name&quot;: &quot;A String&quot;, # The name of the node pool.
&quot;version&quot;: &quot;A String&quot;, # The version of the Kubernetes of this node.
&quot;maxPodsConstraint&quot;: { # Constraints applied to pods. # The constraint on the maximum number of pods that can be run
# simultaneously on a node in the node pool.
&quot;maxPodsPerNode&quot;: &quot;A String&quot;, # Constraint enforced on the max num of pods per node.
},
&quot;statusMessage&quot;: &quot;A String&quot;, # [Output only] Additional information about the current status of this
# node pool instance, if available.
&quot;podIpv4CidrSize&quot;: 42, # [Output only] The pod CIDR block size per node in this node pool.
&quot;conditions&quot;: [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
&quot;code&quot;: &quot;A String&quot;, # Machine-friendly representation of the condition
&quot;message&quot;: &quot;A String&quot;, # Human-friendly representation of the condition
},
],
&quot;locations&quot;: [ # The list of Google Compute Engine
# [zones](https://cloud.google.com/compute/docs/zones#available) in which the
# NodePool&#x27;s nodes should be located.
&quot;A String&quot;,
],
},
&quot;clusterId&quot;: &quot;A String&quot;, # Required. Deprecated. The name of the cluster.
# This field has been deprecated and replaced by the parent field.
&quot;parent&quot;: &quot;A String&quot;, # The parent (project, location, cluster id) where the node pool will be
# created. Specified in the format
# `projects/*/locations/*/clusters/*`.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
&quot;targetLink&quot;: &quot;A String&quot;, # Server-defined URL for the target of the operation.
&quot;operationType&quot;: &quot;A String&quot;, # The operation type.
&quot;progress&quot;: { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
&quot;stages&quot;: [ # Substages of an operation or a stage.
# Object with schema name: OperationProgress
],
&quot;name&quot;: &quot;A String&quot;, # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
&quot;status&quot;: &quot;A String&quot;, # Status of an operation stage.
# Unset for single-stage operations.
&quot;metrics&quot;: [ # Progress metric bundle, for example:
# metrics: [{name: &quot;nodes done&quot;, int_value: 15},
# {name: &quot;nodes total&quot;, int_value: 32}]
# or
# metrics: [{name: &quot;progress&quot;, double_value: 0.56},
# {name: &quot;progress scale&quot;, double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
&quot;doubleValue&quot;: 3.14, # For metrics with floating point value.
&quot;stringValue&quot;: &quot;A String&quot;, # For metrics with custom values (ratios, visual progress, etc.).
&quot;name&quot;: &quot;A String&quot;, # Required. Metric name, e.g., &quot;nodes total&quot;, &quot;percent done&quot;.
&quot;intValue&quot;: &quot;A String&quot;, # For metrics with integer value.
},
],
},
&quot;selfLink&quot;: &quot;A String&quot;, # Server-defined URL for the resource.
&quot;location&quot;: &quot;A String&quot;, # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
&quot;zone&quot;: &quot;A String&quot;, # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
&quot;endTime&quot;: &quot;A String&quot;, # [Output only] The time the operation completed, in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;statusMessage&quot;: &quot;A String&quot;, # Output only. If an error has occurred, a textual description of the error.
&quot;name&quot;: &quot;A String&quot;, # The server-assigned ID for the operation.
&quot;clusterConditions&quot;: [ # Which conditions caused the current cluster state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
&quot;code&quot;: &quot;A String&quot;, # Machine-friendly representation of the condition
&quot;message&quot;: &quot;A String&quot;, # Human-friendly representation of the condition
},
],
&quot;startTime&quot;: &quot;A String&quot;, # [Output only] The time the operation started, in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;detail&quot;: &quot;A String&quot;, # Detailed operation progress, if available.
&quot;nodepoolConditions&quot;: [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
&quot;code&quot;: &quot;A String&quot;, # Machine-friendly representation of the condition
&quot;message&quot;: &quot;A String&quot;, # Human-friendly representation of the condition
},
],
&quot;status&quot;: &quot;A String&quot;, # The current status of the operation.
}</pre>
</div>
<div class="method">
<code class="details" id="delete">delete(name, clusterId=None, projectId=None, zone=None, nodePoolId=None, x__xgafv=None)</code>
<pre>Deletes a node pool from a cluster.
Args:
name: string, The name (project, location, cluster, node pool id) of the node pool to
delete. Specified in the format
`projects/*/locations/*/clusters/*/nodePools/*`. (required)
clusterId: string, Required. Deprecated. The name of the cluster.
This field has been deprecated and replaced by the name field.
projectId: string, Required. Deprecated. The Google Developers Console [project ID or project
number](https://developers.google.com/console/help/new/#projectnumber).
This field has been deprecated and replaced by the name field.
zone: string, Required. Deprecated. The name of the Google Compute Engine
[zone](https://cloud.google.com/compute/docs/zones#available) in which the
cluster resides. This field has been deprecated and replaced by the name
field.
nodePoolId: string, Required. Deprecated. The name of the node pool to delete.
This field has been deprecated and replaced by the name field.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
&quot;targetLink&quot;: &quot;A String&quot;, # Server-defined URL for the target of the operation.
&quot;operationType&quot;: &quot;A String&quot;, # The operation type.
&quot;progress&quot;: { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
&quot;stages&quot;: [ # Substages of an operation or a stage.
# Object with schema name: OperationProgress
],
&quot;name&quot;: &quot;A String&quot;, # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
&quot;status&quot;: &quot;A String&quot;, # Status of an operation stage.
# Unset for single-stage operations.
&quot;metrics&quot;: [ # Progress metric bundle, for example:
# metrics: [{name: &quot;nodes done&quot;, int_value: 15},
# {name: &quot;nodes total&quot;, int_value: 32}]
# or
# metrics: [{name: &quot;progress&quot;, double_value: 0.56},
# {name: &quot;progress scale&quot;, double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
&quot;doubleValue&quot;: 3.14, # For metrics with floating point value.
&quot;stringValue&quot;: &quot;A String&quot;, # For metrics with custom values (ratios, visual progress, etc.).
&quot;name&quot;: &quot;A String&quot;, # Required. Metric name, e.g., &quot;nodes total&quot;, &quot;percent done&quot;.
&quot;intValue&quot;: &quot;A String&quot;, # For metrics with integer value.
},
],
},
&quot;selfLink&quot;: &quot;A String&quot;, # Server-defined URL for the resource.
&quot;location&quot;: &quot;A String&quot;, # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
&quot;zone&quot;: &quot;A String&quot;, # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
&quot;endTime&quot;: &quot;A String&quot;, # [Output only] The time the operation completed, in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;statusMessage&quot;: &quot;A String&quot;, # Output only. If an error has occurred, a textual description of the error.
&quot;name&quot;: &quot;A String&quot;, # The server-assigned ID for the operation.
&quot;clusterConditions&quot;: [ # Which conditions caused the current cluster state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
&quot;code&quot;: &quot;A String&quot;, # Machine-friendly representation of the condition
&quot;message&quot;: &quot;A String&quot;, # Human-friendly representation of the condition
},
],
&quot;startTime&quot;: &quot;A String&quot;, # [Output only] The time the operation started, in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;detail&quot;: &quot;A String&quot;, # Detailed operation progress, if available.
&quot;nodepoolConditions&quot;: [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
&quot;code&quot;: &quot;A String&quot;, # Machine-friendly representation of the condition
&quot;message&quot;: &quot;A String&quot;, # Human-friendly representation of the condition
},
],
&quot;status&quot;: &quot;A String&quot;, # The current status of the operation.
}</pre>
</div>
<div class="method">
<code class="details" id="get">get(name, clusterId=None, projectId=None, zone=None, nodePoolId=None, x__xgafv=None)</code>
<pre>Retrieves the requested node pool.
Args:
name: string, The name (project, location, cluster, node pool id) of the node pool to
get. Specified in the format
`projects/*/locations/*/clusters/*/nodePools/*`. (required)
clusterId: string, Required. Deprecated. The name of the cluster.
This field has been deprecated and replaced by the name field.
projectId: string, Required. Deprecated. The Google Developers Console [project ID or project
number](https://developers.google.com/console/help/new/#projectnumber).
This field has been deprecated and replaced by the name field.
zone: string, Required. Deprecated. The name of the Google Compute Engine
[zone](https://cloud.google.com/compute/docs/zones#available) in which the
cluster resides. This field has been deprecated and replaced by the name
field.
nodePoolId: string, Required. Deprecated. The name of the node pool.
This field has been deprecated and replaced by the name field.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # NodePool contains the name and configuration for a cluster&#x27;s node pool.
# Node pools are a set of nodes (i.e. VM&#x27;s), with a common configuration and
# specification, under the control of the cluster master. They may have a set
# of Kubernetes labels applied to them, which may be used to reference them
# during pod scheduling. They may also be resized up or down, to accommodate
# the workload.
&quot;status&quot;: &quot;A String&quot;, # [Output only] The status of the nodes in this pool instance.
&quot;upgradeSettings&quot;: { # These upgrade settings control the level of parallelism and the level of # Upgrade settings control disruption and speed of the upgrade.
# disruption caused by an upgrade.
#
# maxUnavailable controls the number of nodes that can be simultaneously
# unavailable.
#
# maxSurge controls the number of additional nodes that can be added to the
# node pool temporarily for the time of the upgrade to increase the number of
# available nodes.
#
# (maxUnavailable + maxSurge) determines the level of parallelism (how many
# nodes are being upgraded at the same time).
#
# Note: upgrades inevitably introduce some disruption since workloads need to
# be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
# this holds true. (Disruption stays within the limits of
# PodDisruptionBudget, if it is configured.)
#
# Consider a hypothetical node pool with 5 nodes having maxSurge=2,
# maxUnavailable=1. This means the upgrade process upgrades 3 nodes
# simultaneously. It creates 2 additional (upgraded) nodes, then it brings
# down 3 old (not yet upgraded) nodes at the same time. This ensures that
# there are always at least 4 nodes available.
&quot;maxUnavailable&quot;: 42, # The maximum number of nodes that can be simultaneously unavailable during
# the upgrade process. A node is considered available if its status is
# Ready.
&quot;maxSurge&quot;: 42, # The maximum number of nodes that can be created beyond the current size
# of the node pool during the upgrade process.
},
&quot;instanceGroupUrls&quot;: [ # [Output only] The resource URLs of the [managed instance
# groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
# associated with this node pool.
&quot;A String&quot;,
],
&quot;autoscaling&quot;: { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for this NodePool. Autoscaler is enabled
# only if a valid configuration is present.
# adjust the size of the node pool to the current cluster usage.
&quot;autoprovisioned&quot;: True or False, # Can this node pool be deleted automatically.
&quot;minNodeCount&quot;: 42, # Minimum number of nodes in the NodePool. Must be &gt;= 1 and &lt;=
# max_node_count.
&quot;enabled&quot;: True or False, # Is autoscaling enabled for this node pool.
&quot;maxNodeCount&quot;: 42, # Maximum number of nodes in the NodePool. Must be &gt;= min_node_count. There
# has to enough quota to scale up the cluster.
},
&quot;initialNodeCount&quot;: 42, # The initial node count for the pool. You must ensure that your
# Compute Engine [resource quota](https://cloud.google.com/compute/quotas)
# is sufficient for this number of instances. You must also have available
# firewall and routes quota.
&quot;config&quot;: { # Parameters that describe the nodes in a cluster. # The node configuration of the pool.
&quot;oauthScopes&quot;: [ # The set of Google API scopes to be made available on all of the
# node VMs under the &quot;default&quot; service account.
#
# The following scopes are recommended, but not required, and by default are
# not included:
#
# * `https://www.googleapis.com/auth/compute` is required for mounting
# persistent storage on your nodes.
# * `https://www.googleapis.com/auth/devstorage.read_only` is required for
# communicating with **gcr.io**
# (the [Google Container
# Registry](https://cloud.google.com/container-registry/)).
#
# If unspecified, no scopes are added, unless Cloud Logging or Cloud
# Monitoring are enabled, in which case their required scopes will be added.
&quot;A String&quot;,
],
&quot;metadata&quot;: { # The metadata key/value pairs assigned to instances in the cluster.
#
# Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
# in length. These are reflected as part of a URL in the metadata server.
# Additionally, to avoid ambiguity, keys must not conflict with any other
# metadata keys for the project or be one of the reserved keys:
# &quot;cluster-location&quot;
# &quot;cluster-name&quot;
# &quot;cluster-uid&quot;
# &quot;configure-sh&quot;
# &quot;containerd-configure-sh&quot;
# &quot;enable-oslogin&quot;
# &quot;gci-ensure-gke-docker&quot;
# &quot;gci-metrics-enabled&quot;
# &quot;gci-update-strategy&quot;
# &quot;instance-template&quot;
# &quot;kube-env&quot;
# &quot;startup-script&quot;
# &quot;user-data&quot;
# &quot;disable-address-manager&quot;
# &quot;windows-startup-script-ps1&quot;
# &quot;common-psm1&quot;
# &quot;k8s-node-setup-psm1&quot;
# &quot;install-ssh-psm1&quot;
# &quot;user-profile-psm1&quot;
# &quot;serial-port-logging-enable&quot;
# Values are free-form strings, and only have meaning as interpreted by
# the image running in the instance. The only restriction placed on them is
# that each value&#x27;s size must be less than or equal to 32 KB.
#
# The total size of all keys and values must be less than 512 KB.
&quot;a_key&quot;: &quot;A String&quot;,
},
&quot;machineType&quot;: &quot;A String&quot;, # The name of a Google Compute Engine [machine
# type](https://cloud.google.com/compute/docs/machine-types) (e.g.
# `n1-standard-1`).
#
# If unspecified, the default machine type is
# `n1-standard-1`.
&quot;nodeGroup&quot;: &quot;A String&quot;, # Setting this field will assign instances of this
# pool to run on the specified node group. This is useful for running
# workloads on [sole tenant
# nodes](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes).
&quot;shieldedInstanceConfig&quot;: { # A set of Shielded Instance options. # Shielded Instance options.
&quot;enableSecureBoot&quot;: True or False, # Defines whether the instance has Secure Boot enabled.
#
# Secure Boot helps ensure that the system only runs authentic software by
# verifying the digital signature of all boot components, and halting the
# boot process if signature verification fails.
&quot;enableIntegrityMonitoring&quot;: True or False, # Defines whether the instance has integrity monitoring enabled.
#
# Enables monitoring and attestation of the boot integrity of the instance.
# The attestation is performed against the integrity policy baseline. This
# baseline is initially derived from the implicitly trusted boot image when
# the instance is created.
},
&quot;serviceAccount&quot;: &quot;A String&quot;, # The Google Cloud Platform Service Account to be used by the node VMs.
# Specify the email address of the Service Account; otherwise, if no Service
# Account is specified, the &quot;default&quot; service account is used.
&quot;linuxNodeConfig&quot;: { # Parameters that can be configured on Linux nodes. # Parameters that can be configured on Linux nodes.
&quot;sysctls&quot;: { # The Linux kernel parameters to be applied to the nodes and all pods running
# on the nodes.
#
# The following parameters are supported.
#
# net.core.netdev_max_backlog
# net.core.rmem_max
# net.core.wmem_default
# net.core.wmem_max
# net.core.optmem_max
# net.core.somaxconn
# net.ipv4.tcp_rmem
# net.ipv4.tcp_wmem
# net.ipv4.tcp_tw_reuse
&quot;a_key&quot;: &quot;A String&quot;,
},
},
&quot;sandboxConfig&quot;: { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
&quot;type&quot;: &quot;A String&quot;, # Type of the sandbox to use for the node.
&quot;sandboxType&quot;: &quot;A String&quot;, # Type of the sandbox to use for the node (e.g. &#x27;gvisor&#x27;)
},
&quot;taints&quot;: [ # List of kubernetes taints to be applied to each node.
#
# For more information, including usage and the valid values, see:
# https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
{ # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
# can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute.
#
# See
# [here](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration)
# for more information, including usage and the valid values.
&quot;effect&quot;: &quot;A String&quot;, # Effect for taint.
&quot;key&quot;: &quot;A String&quot;, # Key for taint.
&quot;value&quot;: &quot;A String&quot;, # Value for taint.
},
],
&quot;kubeletConfig&quot;: { # Node kubelet configs. # Node kubelet configs.
&quot;cpuCfsQuotaPeriod&quot;: &quot;A String&quot;, # Set the CPU CFS quota period value &#x27;cpu.cfs_period_us&#x27;.
#
# The string must be a sequence of decimal numbers, each with optional
# fraction and a unit suffix, such as &quot;300ms&quot;.
# Valid time units are &quot;ns&quot;, &quot;us&quot; (or &quot;µs&quot;), &quot;ms&quot;, &quot;s&quot;, &quot;m&quot;, &quot;h&quot;.
# The value must be a positive duration.
&quot;cpuCfsQuota&quot;: True or False, # Enable CPU CFS quota enforcement for containers that specify CPU limits.
#
# If this option is enabled, kubelet uses CFS quota
# (https://www.kernel.org/doc/Documentation/scheduler/sched-bwc.txt) to
# enforce container CPU limits. Otherwise, CPU limits will not be enforced at
# all.
#
# Disable this option to mitigate CPU throttling problems while still having
# your pods to be in Guaranteed QoS class by specifying the CPU limits.
#
# The default value is &#x27;true&#x27; if unspecified.
&quot;cpuManagerPolicy&quot;: &quot;A String&quot;, # Control the CPU management policy on the node.
# See
# https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/
#
# The following values are allowed.
# - &quot;none&quot;: the default, which represents the existing scheduling behavior.
# - &quot;static&quot;: allows pods with certain resource characteristics to be
# granted increased CPU affinity and exclusivity on the node.
},
&quot;labels&quot;: { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
# These will added in addition to any default label(s) that
# Kubernetes may apply to the node.
# In case of conflict in label keys, the applied set may differ depending on
# the Kubernetes version -- it&#x27;s best to assume the behavior is undefined
# and conflicts should be avoided.
# For more information, including usage and the valid values, see:
# https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
&quot;a_key&quot;: &quot;A String&quot;,
},
&quot;diskType&quot;: &quot;A String&quot;, # Type of the disk attached to each node (e.g. &#x27;pd-standard&#x27; or &#x27;pd-ssd&#x27;)
#
# If unspecified, the default disk type is &#x27;pd-standard&#x27;
&quot;workloadMetadataConfig&quot;: { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
# workloads on the node pool.
&quot;nodeMetadata&quot;: &quot;A String&quot;, # NodeMetadata is the configuration for how to expose metadata to the
# workloads running on the node.
&quot;mode&quot;: &quot;A String&quot;, # Mode is the configuration for how to expose metadata to workloads running
# on the node pool.
},
&quot;bootDiskKmsKey&quot;: &quot;A String&quot;, #
# The Customer Managed Encryption Key used to encrypt the boot disk attached
# to each node in the node pool. This should be of the form
# projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
# For more information about protecting resources with Cloud KMS Keys please
# see:
# https://cloud.google.com/compute/docs/disks/customer-managed-encryption
&quot;diskSizeGb&quot;: 42, # Size of the disk attached to each node, specified in GB.
# The smallest allowed disk size is 10GB.
#
# If unspecified, the default disk size is 100GB.
&quot;reservationAffinity&quot;: { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
# the specified [Zonal Compute
# Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
# to this node pool.
# is the configuration of desired reservation which instances could take
# capacity from.
&quot;consumeReservationType&quot;: &quot;A String&quot;, # Corresponds to the type of reservation consumption.
&quot;key&quot;: &quot;A String&quot;, # Corresponds to the label key of a reservation resource. To target a
# SPECIFIC_RESERVATION by name, specify &quot;googleapis.com/reservation-name&quot; as
# the key and specify the name of your reservation as its value.
&quot;values&quot;: [ # Corresponds to the label value(s) of reservation resource(s).
&quot;A String&quot;,
],
},
&quot;preemptible&quot;: True or False, # Whether the nodes are created as preemptible VM instances. See:
# https://cloud.google.com/compute/docs/instances/preemptible for more
# inforamtion about preemptible VM instances.
&quot;minCpuPlatform&quot;: &quot;A String&quot;, # Minimum CPU platform to be used by this instance. The instance may be
# scheduled on the specified or newer CPU platform. Applicable values are the
# friendly names of CPU platforms, such as
# &lt;code&gt;minCpuPlatform: &amp;quot;Intel Haswell&amp;quot;&lt;/code&gt; or
# &lt;code&gt;minCpuPlatform: &amp;quot;Intel Sandy Bridge&amp;quot;&lt;/code&gt;. For more
# information, read [how to specify min CPU
# platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
&quot;tags&quot;: [ # The list of instance tags applied to all nodes. Tags are used to identify
# valid sources or targets for network firewalls and are specified by
# the client during cluster or node pool creation. Each tag within the list
# must comply with RFC1035.
&quot;A String&quot;,
],
&quot;accelerators&quot;: [ # A list of hardware accelerators to be attached to each node.
# See https://cloud.google.com/compute/docs/gpus for more information about
# support for GPUs.
{ # AcceleratorConfig represents a Hardware Accelerator request.
&quot;acceleratorCount&quot;: &quot;A String&quot;, # The number of the accelerator cards exposed to an instance.
&quot;acceleratorType&quot;: &quot;A String&quot;, # The accelerator type resource name. List of supported accelerators
# [here](https://cloud.google.com/compute/docs/gpus)
},
],
&quot;localSsdCount&quot;: 42, # The number of local SSD disks to be attached to the node.
#
# The limit for this value is dependent upon the maximum number of
# disks available on a machine per zone. See:
# https://cloud.google.com/compute/docs/disks/local-ssd
# for more information.
&quot;imageType&quot;: &quot;A String&quot;, # The image type to use for this node. Note that for a given image type,
# the latest version of it will be used.
},
&quot;selfLink&quot;: &quot;A String&quot;, # [Output only] Server-defined URL for the resource.
&quot;management&quot;: { # NodeManagement defines the set of node management services turned on for the # NodeManagement configuration for this NodePool.
# node pool.
&quot;autoRepair&quot;: True or False, # Whether the nodes will be automatically repaired.
&quot;autoUpgrade&quot;: True or False, # Whether the nodes will be automatically upgraded.
&quot;upgradeOptions&quot;: { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
# the Auto Upgrades will proceed.
&quot;description&quot;: &quot;A String&quot;, # [Output only] This field is set when upgrades are about to commence
# with the description of the upgrade.
&quot;autoUpgradeStartTime&quot;: &quot;A String&quot;, # [Output only] This field is set when upgrades are about to commence
# with the approximate start time for the upgrades, in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
},
},
&quot;name&quot;: &quot;A String&quot;, # The name of the node pool.
&quot;version&quot;: &quot;A String&quot;, # The version of the Kubernetes of this node.
&quot;maxPodsConstraint&quot;: { # Constraints applied to pods. # The constraint on the maximum number of pods that can be run
# simultaneously on a node in the node pool.
&quot;maxPodsPerNode&quot;: &quot;A String&quot;, # Constraint enforced on the max num of pods per node.
},
&quot;statusMessage&quot;: &quot;A String&quot;, # [Output only] Additional information about the current status of this
# node pool instance, if available.
&quot;podIpv4CidrSize&quot;: 42, # [Output only] The pod CIDR block size per node in this node pool.
&quot;conditions&quot;: [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
&quot;code&quot;: &quot;A String&quot;, # Machine-friendly representation of the condition
&quot;message&quot;: &quot;A String&quot;, # Human-friendly representation of the condition
},
],
&quot;locations&quot;: [ # The list of Google Compute Engine
# [zones](https://cloud.google.com/compute/docs/zones#available) in which the
# NodePool&#x27;s nodes should be located.
&quot;A String&quot;,
],
}</pre>
</div>
<div class="method">
<code class="details" id="list">list(parent, projectId=None, clusterId=None, zone=None, x__xgafv=None)</code>
<pre>Lists the node pools for a cluster.
Args:
parent: string, The parent (project, location, cluster id) where the node pools will be
listed. Specified in the format `projects/*/locations/*/clusters/*`. (required)
projectId: string, Required. Deprecated. The Google Developers Console [project ID or project
number](https://developers.google.com/console/help/new/#projectnumber).
This field has been deprecated and replaced by the parent field.
clusterId: string, Required. Deprecated. The name of the cluster.
This field has been deprecated and replaced by the parent field.
zone: string, Required. Deprecated. The name of the Google Compute Engine
[zone](https://cloud.google.com/compute/docs/zones#available) in which the
cluster resides. This field has been deprecated and replaced by the parent
field.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # ListNodePoolsResponse is the result of ListNodePoolsRequest.
&quot;nodePools&quot;: [ # A list of node pools for a cluster.
{ # NodePool contains the name and configuration for a cluster&#x27;s node pool.
# Node pools are a set of nodes (i.e. VM&#x27;s), with a common configuration and
# specification, under the control of the cluster master. They may have a set
# of Kubernetes labels applied to them, which may be used to reference them
# during pod scheduling. They may also be resized up or down, to accommodate
# the workload.
&quot;status&quot;: &quot;A String&quot;, # [Output only] The status of the nodes in this pool instance.
&quot;upgradeSettings&quot;: { # These upgrade settings control the level of parallelism and the level of # Upgrade settings control disruption and speed of the upgrade.
# disruption caused by an upgrade.
#
# maxUnavailable controls the number of nodes that can be simultaneously
# unavailable.
#
# maxSurge controls the number of additional nodes that can be added to the
# node pool temporarily for the time of the upgrade to increase the number of
# available nodes.
#
# (maxUnavailable + maxSurge) determines the level of parallelism (how many
# nodes are being upgraded at the same time).
#
# Note: upgrades inevitably introduce some disruption since workloads need to
# be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
# this holds true. (Disruption stays within the limits of
# PodDisruptionBudget, if it is configured.)
#
# Consider a hypothetical node pool with 5 nodes having maxSurge=2,
# maxUnavailable=1. This means the upgrade process upgrades 3 nodes
# simultaneously. It creates 2 additional (upgraded) nodes, then it brings
# down 3 old (not yet upgraded) nodes at the same time. This ensures that
# there are always at least 4 nodes available.
&quot;maxUnavailable&quot;: 42, # The maximum number of nodes that can be simultaneously unavailable during
# the upgrade process. A node is considered available if its status is
# Ready.
&quot;maxSurge&quot;: 42, # The maximum number of nodes that can be created beyond the current size
# of the node pool during the upgrade process.
},
&quot;instanceGroupUrls&quot;: [ # [Output only] The resource URLs of the [managed instance
# groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
# associated with this node pool.
&quot;A String&quot;,
],
&quot;autoscaling&quot;: { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for this NodePool. Autoscaler is enabled
# only if a valid configuration is present.
# adjust the size of the node pool to the current cluster usage.
&quot;autoprovisioned&quot;: True or False, # Can this node pool be deleted automatically.
&quot;minNodeCount&quot;: 42, # Minimum number of nodes in the NodePool. Must be &gt;= 1 and &lt;=
# max_node_count.
&quot;enabled&quot;: True or False, # Is autoscaling enabled for this node pool.
&quot;maxNodeCount&quot;: 42, # Maximum number of nodes in the NodePool. Must be &gt;= min_node_count. There
# has to enough quota to scale up the cluster.
},
&quot;initialNodeCount&quot;: 42, # The initial node count for the pool. You must ensure that your
# Compute Engine [resource quota](https://cloud.google.com/compute/quotas)
# is sufficient for this number of instances. You must also have available
# firewall and routes quota.
&quot;config&quot;: { # Parameters that describe the nodes in a cluster. # The node configuration of the pool.
&quot;oauthScopes&quot;: [ # The set of Google API scopes to be made available on all of the
# node VMs under the &quot;default&quot; service account.
#
# The following scopes are recommended, but not required, and by default are
# not included:
#
# * `https://www.googleapis.com/auth/compute` is required for mounting
# persistent storage on your nodes.
# * `https://www.googleapis.com/auth/devstorage.read_only` is required for
# communicating with **gcr.io**
# (the [Google Container
# Registry](https://cloud.google.com/container-registry/)).
#
# If unspecified, no scopes are added, unless Cloud Logging or Cloud
# Monitoring are enabled, in which case their required scopes will be added.
&quot;A String&quot;,
],
&quot;metadata&quot;: { # The metadata key/value pairs assigned to instances in the cluster.
#
# Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
# in length. These are reflected as part of a URL in the metadata server.
# Additionally, to avoid ambiguity, keys must not conflict with any other
# metadata keys for the project or be one of the reserved keys:
# &quot;cluster-location&quot;
# &quot;cluster-name&quot;
# &quot;cluster-uid&quot;
# &quot;configure-sh&quot;
# &quot;containerd-configure-sh&quot;
# &quot;enable-oslogin&quot;
# &quot;gci-ensure-gke-docker&quot;
# &quot;gci-metrics-enabled&quot;
# &quot;gci-update-strategy&quot;
# &quot;instance-template&quot;
# &quot;kube-env&quot;
# &quot;startup-script&quot;
# &quot;user-data&quot;
# &quot;disable-address-manager&quot;
# &quot;windows-startup-script-ps1&quot;
# &quot;common-psm1&quot;
# &quot;k8s-node-setup-psm1&quot;
# &quot;install-ssh-psm1&quot;
# &quot;user-profile-psm1&quot;
# &quot;serial-port-logging-enable&quot;
# Values are free-form strings, and only have meaning as interpreted by
# the image running in the instance. The only restriction placed on them is
# that each value&#x27;s size must be less than or equal to 32 KB.
#
# The total size of all keys and values must be less than 512 KB.
&quot;a_key&quot;: &quot;A String&quot;,
},
&quot;machineType&quot;: &quot;A String&quot;, # The name of a Google Compute Engine [machine
# type](https://cloud.google.com/compute/docs/machine-types) (e.g.
# `n1-standard-1`).
#
# If unspecified, the default machine type is
# `n1-standard-1`.
&quot;nodeGroup&quot;: &quot;A String&quot;, # Setting this field will assign instances of this
# pool to run on the specified node group. This is useful for running
# workloads on [sole tenant
# nodes](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes).
&quot;shieldedInstanceConfig&quot;: { # A set of Shielded Instance options. # Shielded Instance options.
&quot;enableSecureBoot&quot;: True or False, # Defines whether the instance has Secure Boot enabled.
#
# Secure Boot helps ensure that the system only runs authentic software by
# verifying the digital signature of all boot components, and halting the
# boot process if signature verification fails.
&quot;enableIntegrityMonitoring&quot;: True or False, # Defines whether the instance has integrity monitoring enabled.
#
# Enables monitoring and attestation of the boot integrity of the instance.
# The attestation is performed against the integrity policy baseline. This
# baseline is initially derived from the implicitly trusted boot image when
# the instance is created.
},
&quot;serviceAccount&quot;: &quot;A String&quot;, # The Google Cloud Platform Service Account to be used by the node VMs.
# Specify the email address of the Service Account; otherwise, if no Service
# Account is specified, the &quot;default&quot; service account is used.
&quot;linuxNodeConfig&quot;: { # Parameters that can be configured on Linux nodes. # Parameters that can be configured on Linux nodes.
&quot;sysctls&quot;: { # The Linux kernel parameters to be applied to the nodes and all pods running
# on the nodes.
#
# The following parameters are supported.
#
# net.core.netdev_max_backlog
# net.core.rmem_max
# net.core.wmem_default
# net.core.wmem_max
# net.core.optmem_max
# net.core.somaxconn
# net.ipv4.tcp_rmem
# net.ipv4.tcp_wmem
# net.ipv4.tcp_tw_reuse
&quot;a_key&quot;: &quot;A String&quot;,
},
},
&quot;sandboxConfig&quot;: { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
&quot;type&quot;: &quot;A String&quot;, # Type of the sandbox to use for the node.
&quot;sandboxType&quot;: &quot;A String&quot;, # Type of the sandbox to use for the node (e.g. &#x27;gvisor&#x27;)
},
&quot;taints&quot;: [ # List of kubernetes taints to be applied to each node.
#
# For more information, including usage and the valid values, see:
# https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
{ # Kubernetes taint is comprised of three fields: key, value, and effect. Effect
# can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute.
#
# See
# [here](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration)
# for more information, including usage and the valid values.
&quot;effect&quot;: &quot;A String&quot;, # Effect for taint.
&quot;key&quot;: &quot;A String&quot;, # Key for taint.
&quot;value&quot;: &quot;A String&quot;, # Value for taint.
},
],
&quot;kubeletConfig&quot;: { # Node kubelet configs. # Node kubelet configs.
&quot;cpuCfsQuotaPeriod&quot;: &quot;A String&quot;, # Set the CPU CFS quota period value &#x27;cpu.cfs_period_us&#x27;.
#
# The string must be a sequence of decimal numbers, each with optional
# fraction and a unit suffix, such as &quot;300ms&quot;.
# Valid time units are &quot;ns&quot;, &quot;us&quot; (or &quot;µs&quot;), &quot;ms&quot;, &quot;s&quot;, &quot;m&quot;, &quot;h&quot;.
# The value must be a positive duration.
&quot;cpuCfsQuota&quot;: True or False, # Enable CPU CFS quota enforcement for containers that specify CPU limits.
#
# If this option is enabled, kubelet uses CFS quota
# (https://www.kernel.org/doc/Documentation/scheduler/sched-bwc.txt) to
# enforce container CPU limits. Otherwise, CPU limits will not be enforced at
# all.
#
# Disable this option to mitigate CPU throttling problems while still having
# your pods to be in Guaranteed QoS class by specifying the CPU limits.
#
# The default value is &#x27;true&#x27; if unspecified.
&quot;cpuManagerPolicy&quot;: &quot;A String&quot;, # Control the CPU management policy on the node.
# See
# https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/
#
# The following values are allowed.
# - &quot;none&quot;: the default, which represents the existing scheduling behavior.
# - &quot;static&quot;: allows pods with certain resource characteristics to be
# granted increased CPU affinity and exclusivity on the node.
},
&quot;labels&quot;: { # The map of Kubernetes labels (key/value pairs) to be applied to each node.
# These will added in addition to any default label(s) that
# Kubernetes may apply to the node.
# In case of conflict in label keys, the applied set may differ depending on
# the Kubernetes version -- it&#x27;s best to assume the behavior is undefined
# and conflicts should be avoided.
# For more information, including usage and the valid values, see:
# https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
&quot;a_key&quot;: &quot;A String&quot;,
},
&quot;diskType&quot;: &quot;A String&quot;, # Type of the disk attached to each node (e.g. &#x27;pd-standard&#x27; or &#x27;pd-ssd&#x27;)
#
# If unspecified, the default disk type is &#x27;pd-standard&#x27;
&quot;workloadMetadataConfig&quot;: { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
# workloads on the node pool.
&quot;nodeMetadata&quot;: &quot;A String&quot;, # NodeMetadata is the configuration for how to expose metadata to the
# workloads running on the node.
&quot;mode&quot;: &quot;A String&quot;, # Mode is the configuration for how to expose metadata to workloads running
# on the node pool.
},
&quot;bootDiskKmsKey&quot;: &quot;A String&quot;, #
# The Customer Managed Encryption Key used to encrypt the boot disk attached
# to each node in the node pool. This should be of the form
# projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
# For more information about protecting resources with Cloud KMS Keys please
# see:
# https://cloud.google.com/compute/docs/disks/customer-managed-encryption
&quot;diskSizeGb&quot;: 42, # Size of the disk attached to each node, specified in GB.
# The smallest allowed disk size is 10GB.
#
# If unspecified, the default disk size is 100GB.
&quot;reservationAffinity&quot;: { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
# the specified [Zonal Compute
# Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
# to this node pool.
# is the configuration of desired reservation which instances could take
# capacity from.
&quot;consumeReservationType&quot;: &quot;A String&quot;, # Corresponds to the type of reservation consumption.
&quot;key&quot;: &quot;A String&quot;, # Corresponds to the label key of a reservation resource. To target a
# SPECIFIC_RESERVATION by name, specify &quot;googleapis.com/reservation-name&quot; as
# the key and specify the name of your reservation as its value.
&quot;values&quot;: [ # Corresponds to the label value(s) of reservation resource(s).
&quot;A String&quot;,
],
},
&quot;preemptible&quot;: True or False, # Whether the nodes are created as preemptible VM instances. See:
# https://cloud.google.com/compute/docs/instances/preemptible for more
# inforamtion about preemptible VM instances.
&quot;minCpuPlatform&quot;: &quot;A String&quot;, # Minimum CPU platform to be used by this instance. The instance may be
# scheduled on the specified or newer CPU platform. Applicable values are the
# friendly names of CPU platforms, such as
# &lt;code&gt;minCpuPlatform: &amp;quot;Intel Haswell&amp;quot;&lt;/code&gt; or
# &lt;code&gt;minCpuPlatform: &amp;quot;Intel Sandy Bridge&amp;quot;&lt;/code&gt;. For more
# information, read [how to specify min CPU
# platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
&quot;tags&quot;: [ # The list of instance tags applied to all nodes. Tags are used to identify
# valid sources or targets for network firewalls and are specified by
# the client during cluster or node pool creation. Each tag within the list
# must comply with RFC1035.
&quot;A String&quot;,
],
&quot;accelerators&quot;: [ # A list of hardware accelerators to be attached to each node.
# See https://cloud.google.com/compute/docs/gpus for more information about
# support for GPUs.
{ # AcceleratorConfig represents a Hardware Accelerator request.
&quot;acceleratorCount&quot;: &quot;A String&quot;, # The number of the accelerator cards exposed to an instance.
&quot;acceleratorType&quot;: &quot;A String&quot;, # The accelerator type resource name. List of supported accelerators
# [here](https://cloud.google.com/compute/docs/gpus)
},
],
&quot;localSsdCount&quot;: 42, # The number of local SSD disks to be attached to the node.
#
# The limit for this value is dependent upon the maximum number of
# disks available on a machine per zone. See:
# https://cloud.google.com/compute/docs/disks/local-ssd
# for more information.
&quot;imageType&quot;: &quot;A String&quot;, # The image type to use for this node. Note that for a given image type,
# the latest version of it will be used.
},
&quot;selfLink&quot;: &quot;A String&quot;, # [Output only] Server-defined URL for the resource.
&quot;management&quot;: { # NodeManagement defines the set of node management services turned on for the # NodeManagement configuration for this NodePool.
# node pool.
&quot;autoRepair&quot;: True or False, # Whether the nodes will be automatically repaired.
&quot;autoUpgrade&quot;: True or False, # Whether the nodes will be automatically upgraded.
&quot;upgradeOptions&quot;: { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
# the Auto Upgrades will proceed.
&quot;description&quot;: &quot;A String&quot;, # [Output only] This field is set when upgrades are about to commence
# with the description of the upgrade.
&quot;autoUpgradeStartTime&quot;: &quot;A String&quot;, # [Output only] This field is set when upgrades are about to commence
# with the approximate start time for the upgrades, in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
},
},
&quot;name&quot;: &quot;A String&quot;, # The name of the node pool.
&quot;version&quot;: &quot;A String&quot;, # The version of the Kubernetes of this node.
&quot;maxPodsConstraint&quot;: { # Constraints applied to pods. # The constraint on the maximum number of pods that can be run
# simultaneously on a node in the node pool.
&quot;maxPodsPerNode&quot;: &quot;A String&quot;, # Constraint enforced on the max num of pods per node.
},
&quot;statusMessage&quot;: &quot;A String&quot;, # [Output only] Additional information about the current status of this
# node pool instance, if available.
&quot;podIpv4CidrSize&quot;: 42, # [Output only] The pod CIDR block size per node in this node pool.
&quot;conditions&quot;: [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
&quot;code&quot;: &quot;A String&quot;, # Machine-friendly representation of the condition
&quot;message&quot;: &quot;A String&quot;, # Human-friendly representation of the condition
},
],
&quot;locations&quot;: [ # The list of Google Compute Engine
# [zones](https://cloud.google.com/compute/docs/zones#available) in which the
# NodePool&#x27;s nodes should be located.
&quot;A String&quot;,
],
},
],
}</pre>
</div>
<div class="method">
<code class="details" id="rollback">rollback(name, body=None, x__xgafv=None)</code>
<pre>Rolls back a previously Aborted or Failed NodePool upgrade.
This makes no changes if the last upgrade successfully completed.
Args:
name: string, The name (project, location, cluster, node pool id) of the node poll to
rollback upgrade.
Specified in the format `projects/*/locations/*/clusters/*/nodePools/*`. (required)
body: object, The request body.
The object takes the form of:
{ # RollbackNodePoolUpgradeRequest rollbacks the previously Aborted or Failed
# NodePool upgrade. This will be an no-op if the last upgrade successfully
# completed.
&quot;zone&quot;: &quot;A String&quot;, # Required. Deprecated. The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# cluster resides. This field has been deprecated and replaced by the name
# field.
&quot;name&quot;: &quot;A String&quot;, # The name (project, location, cluster, node pool id) of the node poll to
# rollback upgrade.
# Specified in the format `projects/*/locations/*/clusters/*/nodePools/*`.
&quot;nodePoolId&quot;: &quot;A String&quot;, # Required. Deprecated. The name of the node pool to rollback.
# This field has been deprecated and replaced by the name field.
&quot;projectId&quot;: &quot;A String&quot;, # Required. Deprecated. The Google Developers Console [project ID or project
# number](https://support.google.com/cloud/answer/6158840).
# This field has been deprecated and replaced by the name field.
&quot;clusterId&quot;: &quot;A String&quot;, # Required. Deprecated. The name of the cluster to rollback.
# This field has been deprecated and replaced by the name field.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
&quot;targetLink&quot;: &quot;A String&quot;, # Server-defined URL for the target of the operation.
&quot;operationType&quot;: &quot;A String&quot;, # The operation type.
&quot;progress&quot;: { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
&quot;stages&quot;: [ # Substages of an operation or a stage.
# Object with schema name: OperationProgress
],
&quot;name&quot;: &quot;A String&quot;, # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
&quot;status&quot;: &quot;A String&quot;, # Status of an operation stage.
# Unset for single-stage operations.
&quot;metrics&quot;: [ # Progress metric bundle, for example:
# metrics: [{name: &quot;nodes done&quot;, int_value: 15},
# {name: &quot;nodes total&quot;, int_value: 32}]
# or
# metrics: [{name: &quot;progress&quot;, double_value: 0.56},
# {name: &quot;progress scale&quot;, double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
&quot;doubleValue&quot;: 3.14, # For metrics with floating point value.
&quot;stringValue&quot;: &quot;A String&quot;, # For metrics with custom values (ratios, visual progress, etc.).
&quot;name&quot;: &quot;A String&quot;, # Required. Metric name, e.g., &quot;nodes total&quot;, &quot;percent done&quot;.
&quot;intValue&quot;: &quot;A String&quot;, # For metrics with integer value.
},
],
},
&quot;selfLink&quot;: &quot;A String&quot;, # Server-defined URL for the resource.
&quot;location&quot;: &quot;A String&quot;, # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
&quot;zone&quot;: &quot;A String&quot;, # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
&quot;endTime&quot;: &quot;A String&quot;, # [Output only] The time the operation completed, in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;statusMessage&quot;: &quot;A String&quot;, # Output only. If an error has occurred, a textual description of the error.
&quot;name&quot;: &quot;A String&quot;, # The server-assigned ID for the operation.
&quot;clusterConditions&quot;: [ # Which conditions caused the current cluster state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
&quot;code&quot;: &quot;A String&quot;, # Machine-friendly representation of the condition
&quot;message&quot;: &quot;A String&quot;, # Human-friendly representation of the condition
},
],
&quot;startTime&quot;: &quot;A String&quot;, # [Output only] The time the operation started, in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;detail&quot;: &quot;A String&quot;, # Detailed operation progress, if available.
&quot;nodepoolConditions&quot;: [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
&quot;code&quot;: &quot;A String&quot;, # Machine-friendly representation of the condition
&quot;message&quot;: &quot;A String&quot;, # Human-friendly representation of the condition
},
],
&quot;status&quot;: &quot;A String&quot;, # The current status of the operation.
}</pre>
</div>
<div class="method">
<code class="details" id="setAutoscaling">setAutoscaling(name, body=None, x__xgafv=None)</code>
<pre>Sets the autoscaling settings of a specific node pool.
Args:
name: string, The name (project, location, cluster, node pool) of the node pool to set
autoscaler settings. Specified in the format
`projects/*/locations/*/clusters/*/nodePools/*`. (required)
body: object, The request body.
The object takes the form of:
{ # SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool.
&quot;autoscaling&quot;: { # NodePoolAutoscaling contains information required by cluster autoscaler to # Required. Autoscaling configuration for the node pool.
# adjust the size of the node pool to the current cluster usage.
&quot;autoprovisioned&quot;: True or False, # Can this node pool be deleted automatically.
&quot;minNodeCount&quot;: 42, # Minimum number of nodes in the NodePool. Must be &gt;= 1 and &lt;=
# max_node_count.
&quot;enabled&quot;: True or False, # Is autoscaling enabled for this node pool.
&quot;maxNodeCount&quot;: 42, # Maximum number of nodes in the NodePool. Must be &gt;= min_node_count. There
# has to enough quota to scale up the cluster.
},
&quot;zone&quot;: &quot;A String&quot;, # Required. Deprecated. The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# cluster resides. This field has been deprecated and replaced by the name
# field.
&quot;projectId&quot;: &quot;A String&quot;, # Required. Deprecated. The Google Developers Console [project ID or project
# number](https://support.google.com/cloud/answer/6158840).
# This field has been deprecated and replaced by the name field.
&quot;clusterId&quot;: &quot;A String&quot;, # Required. Deprecated. The name of the cluster to upgrade.
# This field has been deprecated and replaced by the name field.
&quot;name&quot;: &quot;A String&quot;, # The name (project, location, cluster, node pool) of the node pool to set
# autoscaler settings. Specified in the format
# `projects/*/locations/*/clusters/*/nodePools/*`.
&quot;nodePoolId&quot;: &quot;A String&quot;, # Required. Deprecated. The name of the node pool to upgrade.
# This field has been deprecated and replaced by the name field.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
&quot;targetLink&quot;: &quot;A String&quot;, # Server-defined URL for the target of the operation.
&quot;operationType&quot;: &quot;A String&quot;, # The operation type.
&quot;progress&quot;: { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
&quot;stages&quot;: [ # Substages of an operation or a stage.
# Object with schema name: OperationProgress
],
&quot;name&quot;: &quot;A String&quot;, # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
&quot;status&quot;: &quot;A String&quot;, # Status of an operation stage.
# Unset for single-stage operations.
&quot;metrics&quot;: [ # Progress metric bundle, for example:
# metrics: [{name: &quot;nodes done&quot;, int_value: 15},
# {name: &quot;nodes total&quot;, int_value: 32}]
# or
# metrics: [{name: &quot;progress&quot;, double_value: 0.56},
# {name: &quot;progress scale&quot;, double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
&quot;doubleValue&quot;: 3.14, # For metrics with floating point value.
&quot;stringValue&quot;: &quot;A String&quot;, # For metrics with custom values (ratios, visual progress, etc.).
&quot;name&quot;: &quot;A String&quot;, # Required. Metric name, e.g., &quot;nodes total&quot;, &quot;percent done&quot;.
&quot;intValue&quot;: &quot;A String&quot;, # For metrics with integer value.
},
],
},
&quot;selfLink&quot;: &quot;A String&quot;, # Server-defined URL for the resource.
&quot;location&quot;: &quot;A String&quot;, # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
&quot;zone&quot;: &quot;A String&quot;, # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
&quot;endTime&quot;: &quot;A String&quot;, # [Output only] The time the operation completed, in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;statusMessage&quot;: &quot;A String&quot;, # Output only. If an error has occurred, a textual description of the error.
&quot;name&quot;: &quot;A String&quot;, # The server-assigned ID for the operation.
&quot;clusterConditions&quot;: [ # Which conditions caused the current cluster state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
&quot;code&quot;: &quot;A String&quot;, # Machine-friendly representation of the condition
&quot;message&quot;: &quot;A String&quot;, # Human-friendly representation of the condition
},
],
&quot;startTime&quot;: &quot;A String&quot;, # [Output only] The time the operation started, in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;detail&quot;: &quot;A String&quot;, # Detailed operation progress, if available.
&quot;nodepoolConditions&quot;: [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
&quot;code&quot;: &quot;A String&quot;, # Machine-friendly representation of the condition
&quot;message&quot;: &quot;A String&quot;, # Human-friendly representation of the condition
},
],
&quot;status&quot;: &quot;A String&quot;, # The current status of the operation.
}</pre>
</div>
<div class="method">
<code class="details" id="setManagement">setManagement(name, body=None, x__xgafv=None)</code>
<pre>Sets the NodeManagement options for a node pool.
Args:
name: string, The name (project, location, cluster, node pool id) of the node pool to set
management properties. Specified in the format
`projects/*/locations/*/clusters/*/nodePools/*`. (required)
body: object, The request body.
The object takes the form of:
{ # SetNodePoolManagementRequest sets the node management properties of a node
# pool.
&quot;projectId&quot;: &quot;A String&quot;, # Required. Deprecated. The Google Developers Console [project ID or project
# number](https://support.google.com/cloud/answer/6158840).
# This field has been deprecated and replaced by the name field.
&quot;management&quot;: { # NodeManagement defines the set of node management services turned on for the # Required. NodeManagement configuration for the node pool.
# node pool.
&quot;autoRepair&quot;: True or False, # Whether the nodes will be automatically repaired.
&quot;autoUpgrade&quot;: True or False, # Whether the nodes will be automatically upgraded.
&quot;upgradeOptions&quot;: { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
# the Auto Upgrades will proceed.
&quot;description&quot;: &quot;A String&quot;, # [Output only] This field is set when upgrades are about to commence
# with the description of the upgrade.
&quot;autoUpgradeStartTime&quot;: &quot;A String&quot;, # [Output only] This field is set when upgrades are about to commence
# with the approximate start time for the upgrades, in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
},
},
&quot;zone&quot;: &quot;A String&quot;, # Required. Deprecated. The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# cluster resides. This field has been deprecated and replaced by the name
# field.
&quot;clusterId&quot;: &quot;A String&quot;, # Required. Deprecated. The name of the cluster to update.
# This field has been deprecated and replaced by the name field.
&quot;name&quot;: &quot;A String&quot;, # The name (project, location, cluster, node pool id) of the node pool to set
# management properties. Specified in the format
# `projects/*/locations/*/clusters/*/nodePools/*`.
&quot;nodePoolId&quot;: &quot;A String&quot;, # Required. Deprecated. The name of the node pool to update.
# This field has been deprecated and replaced by the name field.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
&quot;targetLink&quot;: &quot;A String&quot;, # Server-defined URL for the target of the operation.
&quot;operationType&quot;: &quot;A String&quot;, # The operation type.
&quot;progress&quot;: { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
&quot;stages&quot;: [ # Substages of an operation or a stage.
# Object with schema name: OperationProgress
],
&quot;name&quot;: &quot;A String&quot;, # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
&quot;status&quot;: &quot;A String&quot;, # Status of an operation stage.
# Unset for single-stage operations.
&quot;metrics&quot;: [ # Progress metric bundle, for example:
# metrics: [{name: &quot;nodes done&quot;, int_value: 15},
# {name: &quot;nodes total&quot;, int_value: 32}]
# or
# metrics: [{name: &quot;progress&quot;, double_value: 0.56},
# {name: &quot;progress scale&quot;, double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
&quot;doubleValue&quot;: 3.14, # For metrics with floating point value.
&quot;stringValue&quot;: &quot;A String&quot;, # For metrics with custom values (ratios, visual progress, etc.).
&quot;name&quot;: &quot;A String&quot;, # Required. Metric name, e.g., &quot;nodes total&quot;, &quot;percent done&quot;.
&quot;intValue&quot;: &quot;A String&quot;, # For metrics with integer value.
},
],
},
&quot;selfLink&quot;: &quot;A String&quot;, # Server-defined URL for the resource.
&quot;location&quot;: &quot;A String&quot;, # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
&quot;zone&quot;: &quot;A String&quot;, # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
&quot;endTime&quot;: &quot;A String&quot;, # [Output only] The time the operation completed, in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;statusMessage&quot;: &quot;A String&quot;, # Output only. If an error has occurred, a textual description of the error.
&quot;name&quot;: &quot;A String&quot;, # The server-assigned ID for the operation.
&quot;clusterConditions&quot;: [ # Which conditions caused the current cluster state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
&quot;code&quot;: &quot;A String&quot;, # Machine-friendly representation of the condition
&quot;message&quot;: &quot;A String&quot;, # Human-friendly representation of the condition
},
],
&quot;startTime&quot;: &quot;A String&quot;, # [Output only] The time the operation started, in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;detail&quot;: &quot;A String&quot;, # Detailed operation progress, if available.
&quot;nodepoolConditions&quot;: [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
&quot;code&quot;: &quot;A String&quot;, # Machine-friendly representation of the condition
&quot;message&quot;: &quot;A String&quot;, # Human-friendly representation of the condition
},
],
&quot;status&quot;: &quot;A String&quot;, # The current status of the operation.
}</pre>
</div>
<div class="method">
<code class="details" id="setSize">setSize(name, body=None, x__xgafv=None)</code>
<pre>Sets the size for a specific node pool.
Args:
name: string, The name (project, location, cluster, node pool id) of the node pool to set
size.
Specified in the format `projects/*/locations/*/clusters/*/nodePools/*`. (required)
body: object, The request body.
The object takes the form of:
{ # SetNodePoolSizeRequest sets the size a node
# pool.
&quot;name&quot;: &quot;A String&quot;, # The name (project, location, cluster, node pool id) of the node pool to set
# size.
# Specified in the format `projects/*/locations/*/clusters/*/nodePools/*`.
&quot;nodePoolId&quot;: &quot;A String&quot;, # Required. Deprecated. The name of the node pool to update.
# This field has been deprecated and replaced by the name field.
&quot;clusterId&quot;: &quot;A String&quot;, # Required. Deprecated. The name of the cluster to update.
# This field has been deprecated and replaced by the name field.
&quot;projectId&quot;: &quot;A String&quot;, # Required. Deprecated. The Google Developers Console [project ID or project
# number](https://support.google.com/cloud/answer/6158840).
# This field has been deprecated and replaced by the name field.
&quot;zone&quot;: &quot;A String&quot;, # Required. Deprecated. The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# cluster resides. This field has been deprecated and replaced by the name
# field.
&quot;nodeCount&quot;: 42, # Required. The desired node count for the pool.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
&quot;targetLink&quot;: &quot;A String&quot;, # Server-defined URL for the target of the operation.
&quot;operationType&quot;: &quot;A String&quot;, # The operation type.
&quot;progress&quot;: { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
&quot;stages&quot;: [ # Substages of an operation or a stage.
# Object with schema name: OperationProgress
],
&quot;name&quot;: &quot;A String&quot;, # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
&quot;status&quot;: &quot;A String&quot;, # Status of an operation stage.
# Unset for single-stage operations.
&quot;metrics&quot;: [ # Progress metric bundle, for example:
# metrics: [{name: &quot;nodes done&quot;, int_value: 15},
# {name: &quot;nodes total&quot;, int_value: 32}]
# or
# metrics: [{name: &quot;progress&quot;, double_value: 0.56},
# {name: &quot;progress scale&quot;, double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
&quot;doubleValue&quot;: 3.14, # For metrics with floating point value.
&quot;stringValue&quot;: &quot;A String&quot;, # For metrics with custom values (ratios, visual progress, etc.).
&quot;name&quot;: &quot;A String&quot;, # Required. Metric name, e.g., &quot;nodes total&quot;, &quot;percent done&quot;.
&quot;intValue&quot;: &quot;A String&quot;, # For metrics with integer value.
},
],
},
&quot;selfLink&quot;: &quot;A String&quot;, # Server-defined URL for the resource.
&quot;location&quot;: &quot;A String&quot;, # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
&quot;zone&quot;: &quot;A String&quot;, # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
&quot;endTime&quot;: &quot;A String&quot;, # [Output only] The time the operation completed, in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;statusMessage&quot;: &quot;A String&quot;, # Output only. If an error has occurred, a textual description of the error.
&quot;name&quot;: &quot;A String&quot;, # The server-assigned ID for the operation.
&quot;clusterConditions&quot;: [ # Which conditions caused the current cluster state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
&quot;code&quot;: &quot;A String&quot;, # Machine-friendly representation of the condition
&quot;message&quot;: &quot;A String&quot;, # Human-friendly representation of the condition
},
],
&quot;startTime&quot;: &quot;A String&quot;, # [Output only] The time the operation started, in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;detail&quot;: &quot;A String&quot;, # Detailed operation progress, if available.
&quot;nodepoolConditions&quot;: [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
&quot;code&quot;: &quot;A String&quot;, # Machine-friendly representation of the condition
&quot;message&quot;: &quot;A String&quot;, # Human-friendly representation of the condition
},
],
&quot;status&quot;: &quot;A String&quot;, # The current status of the operation.
}</pre>
</div>
<div class="method">
<code class="details" id="update">update(name, body=None, x__xgafv=None)</code>
<pre>Updates the version and/or image type of a specific node pool.
Args:
name: string, The name (project, location, cluster, node pool) of the node pool to
update. Specified in the format
`projects/*/locations/*/clusters/*/nodePools/*`. (required)
body: object, The request body.
The object takes the form of:
{ # SetNodePoolVersionRequest updates the version of a node pool.
&quot;projectId&quot;: &quot;A String&quot;, # Required. Deprecated. The Google Developers Console [project ID or project
# number](https://support.google.com/cloud/answer/6158840).
# This field has been deprecated and replaced by the name field.
&quot;upgradeSettings&quot;: { # These upgrade settings control the level of parallelism and the level of # Upgrade settings control disruption and speed of the upgrade.
# disruption caused by an upgrade.
#
# maxUnavailable controls the number of nodes that can be simultaneously
# unavailable.
#
# maxSurge controls the number of additional nodes that can be added to the
# node pool temporarily for the time of the upgrade to increase the number of
# available nodes.
#
# (maxUnavailable + maxSurge) determines the level of parallelism (how many
# nodes are being upgraded at the same time).
#
# Note: upgrades inevitably introduce some disruption since workloads need to
# be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
# this holds true. (Disruption stays within the limits of
# PodDisruptionBudget, if it is configured.)
#
# Consider a hypothetical node pool with 5 nodes having maxSurge=2,
# maxUnavailable=1. This means the upgrade process upgrades 3 nodes
# simultaneously. It creates 2 additional (upgraded) nodes, then it brings
# down 3 old (not yet upgraded) nodes at the same time. This ensures that
# there are always at least 4 nodes available.
&quot;maxUnavailable&quot;: 42, # The maximum number of nodes that can be simultaneously unavailable during
# the upgrade process. A node is considered available if its status is
# Ready.
&quot;maxSurge&quot;: 42, # The maximum number of nodes that can be created beyond the current size
# of the node pool during the upgrade process.
},
&quot;nodePoolId&quot;: &quot;A String&quot;, # Required. Deprecated. The name of the node pool to upgrade.
# This field has been deprecated and replaced by the name field.
&quot;clusterId&quot;: &quot;A String&quot;, # Required. Deprecated. The name of the cluster to upgrade.
# This field has been deprecated and replaced by the name field.
&quot;nodeVersion&quot;: &quot;A String&quot;, # Required. The Kubernetes version to change the nodes to (typically an
# upgrade).
#
# Users may specify either explicit versions offered by Kubernetes Engine or
# version aliases, which have the following behavior:
#
# - &quot;latest&quot;: picks the highest valid Kubernetes version
# - &quot;1.X&quot;: picks the highest valid patch+gke.N patch in the 1.X version
# - &quot;1.X.Y&quot;: picks the highest valid gke.N patch in the 1.X.Y version
# - &quot;1.X.Y-gke.N&quot;: picks an explicit Kubernetes version
# - &quot;-&quot;: picks the Kubernetes master version
&quot;zone&quot;: &quot;A String&quot;, # Required. Deprecated. The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# cluster resides. This field has been deprecated and replaced by the name
# field.
&quot;locations&quot;: [ # The desired list of Google Compute Engine
# [zones](https://cloud.google.com/compute/docs/zones#available) in which the
# node pool&#x27;s nodes should be located. Changing the locations for a node pool
# will result in nodes being either created or removed from the node pool,
# depending on whether locations are being added or removed.
&quot;A String&quot;,
],
&quot;kubeletConfig&quot;: { # Node kubelet configs. # Node kubelet configs.
&quot;cpuCfsQuotaPeriod&quot;: &quot;A String&quot;, # Set the CPU CFS quota period value &#x27;cpu.cfs_period_us&#x27;.
#
# The string must be a sequence of decimal numbers, each with optional
# fraction and a unit suffix, such as &quot;300ms&quot;.
# Valid time units are &quot;ns&quot;, &quot;us&quot; (or &quot;µs&quot;), &quot;ms&quot;, &quot;s&quot;, &quot;m&quot;, &quot;h&quot;.
# The value must be a positive duration.
&quot;cpuCfsQuota&quot;: True or False, # Enable CPU CFS quota enforcement for containers that specify CPU limits.
#
# If this option is enabled, kubelet uses CFS quota
# (https://www.kernel.org/doc/Documentation/scheduler/sched-bwc.txt) to
# enforce container CPU limits. Otherwise, CPU limits will not be enforced at
# all.
#
# Disable this option to mitigate CPU throttling problems while still having
# your pods to be in Guaranteed QoS class by specifying the CPU limits.
#
# The default value is &#x27;true&#x27; if unspecified.
&quot;cpuManagerPolicy&quot;: &quot;A String&quot;, # Control the CPU management policy on the node.
# See
# https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/
#
# The following values are allowed.
# - &quot;none&quot;: the default, which represents the existing scheduling behavior.
# - &quot;static&quot;: allows pods with certain resource characteristics to be
# granted increased CPU affinity and exclusivity on the node.
},
&quot;imageType&quot;: &quot;A String&quot;, # Required. The desired image type for the node pool.
&quot;workloadMetadataConfig&quot;: { # WorkloadMetadataConfig defines the metadata configuration to expose to # The desired workload metadata config for the node pool.
# workloads on the node pool.
&quot;nodeMetadata&quot;: &quot;A String&quot;, # NodeMetadata is the configuration for how to expose metadata to the
# workloads running on the node.
&quot;mode&quot;: &quot;A String&quot;, # Mode is the configuration for how to expose metadata to workloads running
# on the node pool.
},
&quot;linuxNodeConfig&quot;: { # Parameters that can be configured on Linux nodes. # Parameters that can be configured on Linux nodes.
&quot;sysctls&quot;: { # The Linux kernel parameters to be applied to the nodes and all pods running
# on the nodes.
#
# The following parameters are supported.
#
# net.core.netdev_max_backlog
# net.core.rmem_max
# net.core.wmem_default
# net.core.wmem_max
# net.core.optmem_max
# net.core.somaxconn
# net.ipv4.tcp_rmem
# net.ipv4.tcp_wmem
# net.ipv4.tcp_tw_reuse
&quot;a_key&quot;: &quot;A String&quot;,
},
},
&quot;name&quot;: &quot;A String&quot;, # The name (project, location, cluster, node pool) of the node pool to
# update. Specified in the format
# `projects/*/locations/*/clusters/*/nodePools/*`.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # This operation resource represents operations that may have happened or are
# happening on the cluster. All fields are output only.
&quot;targetLink&quot;: &quot;A String&quot;, # Server-defined URL for the target of the operation.
&quot;operationType&quot;: &quot;A String&quot;, # The operation type.
&quot;progress&quot;: { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
&quot;stages&quot;: [ # Substages of an operation or a stage.
# Object with schema name: OperationProgress
],
&quot;name&quot;: &quot;A String&quot;, # A non-parameterized string describing an operation stage.
# Unset for single-stage operations.
&quot;status&quot;: &quot;A String&quot;, # Status of an operation stage.
# Unset for single-stage operations.
&quot;metrics&quot;: [ # Progress metric bundle, for example:
# metrics: [{name: &quot;nodes done&quot;, int_value: 15},
# {name: &quot;nodes total&quot;, int_value: 32}]
# or
# metrics: [{name: &quot;progress&quot;, double_value: 0.56},
# {name: &quot;progress scale&quot;, double_value: 1.0}]
{ # Progress metric is (string, int|float|string) pair.
&quot;doubleValue&quot;: 3.14, # For metrics with floating point value.
&quot;stringValue&quot;: &quot;A String&quot;, # For metrics with custom values (ratios, visual progress, etc.).
&quot;name&quot;: &quot;A String&quot;, # Required. Metric name, e.g., &quot;nodes total&quot;, &quot;percent done&quot;.
&quot;intValue&quot;: &quot;A String&quot;, # For metrics with integer value.
},
],
},
&quot;selfLink&quot;: &quot;A String&quot;, # Server-defined URL for the resource.
&quot;location&quot;: &quot;A String&quot;, # [Output only] The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# or
# [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
# in which the cluster resides.
&quot;zone&quot;: &quot;A String&quot;, # The name of the Google Compute Engine
# [zone](https://cloud.google.com/compute/docs/zones#available) in which the
# operation is taking place. This field is deprecated, use location instead.
&quot;endTime&quot;: &quot;A String&quot;, # [Output only] The time the operation completed, in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;statusMessage&quot;: &quot;A String&quot;, # Output only. If an error has occurred, a textual description of the error.
&quot;name&quot;: &quot;A String&quot;, # The server-assigned ID for the operation.
&quot;clusterConditions&quot;: [ # Which conditions caused the current cluster state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
&quot;code&quot;: &quot;A String&quot;, # Machine-friendly representation of the condition
&quot;message&quot;: &quot;A String&quot;, # Human-friendly representation of the condition
},
],
&quot;startTime&quot;: &quot;A String&quot;, # [Output only] The time the operation started, in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;detail&quot;: &quot;A String&quot;, # Detailed operation progress, if available.
&quot;nodepoolConditions&quot;: [ # Which conditions caused the current node pool state.
{ # StatusCondition describes why a cluster or a node pool has a certain status
# (e.g., ERROR or DEGRADED).
&quot;code&quot;: &quot;A String&quot;, # Machine-friendly representation of the condition
&quot;message&quot;: &quot;A String&quot;, # Human-friendly representation of the condition
},
],
&quot;status&quot;: &quot;A String&quot;, # The current status of the operation.
}</pre>
</div>
</body></html>