# Class UpdateNodePoolRequest (2.65.0)

2.65.0 (latest) 2.62.0 2.61.0 2.60.0 2.59.0 2.58.0 2.57.0 2.56.1 2.55.1 2.54.0 2.53.0 2.52.0 2.50.0 2.49.0 2.48.0 2.47.1 2.46.0 2.45.0 2.44.0 2.43.0 2.42.0 2.41.0 2.40.0 2.39.0 2.38.0 2.37.0 2.36.0 2.35.0 2.34.0 2.33.0 2.32.0 2.31.0 2.30.0 2.29.0 2.28.0 2.27.0 2.26.0 2.25.0 2.24.0 2.23.0 2.22.0 2.21.0 2.20.0 2.19.0 2.18.0 2.17.4 2.16.0 2.15.0 2.14.0 2.13.0 2.12.2 2.11.2 2.10.8 2.9.0 2.8.1 2.7.1 2.6.1 2.5.0 2.4.1 2.3.1 2.2.0 2.1.0 2.0.1 1.0.3 0.5.0 0.4.0 0.3.0

    UpdateNodePoolRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)

UpdateNodePoolRequests update a node pool's image and/or
version.

.. _oneof: <https://proto-plus-python.readthedocs.io/en/stable/fields.html#oneofs-mutually-exclusive-fields>

| ## Attributes ||
|---|---|
| **Name** | **Description** |
| `project_id` | `str` Deprecated. The Google Developers Console \`project ID or project number |
| `zone` | `str` Deprecated. The name of the Google Compute Engine `zone `__ in which the cluster resides. This field has been deprecated and replaced by the name field. |
| `cluster_id` | `str` Deprecated. The name of the cluster to upgrade. This field has been deprecated and replaced by the name field. |
| `node_pool_id` | `str` Deprecated. The name of the node pool to upgrade. This field has been deprecated and replaced by the name field. |
| `node_version` | `str` 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: - "latest": picks the highest valid Kubernetes version - "1.X": picks the highest valid patch+gke.N patch in the 1.X version - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version - "1.X.Y-gke.N": picks an explicit Kubernetes version - "-": picks the Kubernetes master version |
| `image_type` | `str` Required. The desired image type for the node pool. Please see https://cloud.google.com/kubernetes-engine/docs/concepts/node-images for available image types. |
| `name` | `str` The name (project, location, cluster, node pool) of the node pool to update. Specified in the format `projects/*/locations/*/clusters/*/nodePools/*`. |
| `locations` | `MutableSequence[str]` The desired list of Google Compute Engine `zones `__ in which the node pool'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. Warning: It is recommended to update node pool locations in a standalone API call. Do not combine a location update with changes to other fields (such as `tags`, `labels`, `taints`, etc.) in the same request. Otherwise, the API performs a structural modification where changes to other fields will only apply to newly created nodes and will not be applied to existing nodes in the node pool. To ensure all nodes are updated consistently, use a separate API call for location changes. |
| `workload_metadata_config` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.WorkloadMetadataConfig` The desired workload metadata config for the node pool. |
| `upgrade_settings` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.NodePool.UpgradeSettings` Upgrade settings control disruption and speed of the upgrade. |
| `tags` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.NetworkTags` The desired network tags to be applied to all nodes in the node pool. If this field is not present, the tags will not be changed. Otherwise, the existing network tags will be \*replaced\* with the provided tags. |
| `taints` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.NodeTaints` The desired node taints to be applied to all nodes in the node pool. If this field is not present, the taints will not be changed. Otherwise, the existing node taints will be \*replaced\* with the provided taints. |
| `labels` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.NodeLabels` The desired node labels to be applied to all nodes in the node pool. If this field is not present, the labels will not be changed. Otherwise, the existing node labels will be \*replaced\* with the provided labels. |
| `linux_node_config` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.LinuxNodeConfig` Parameters that can be configured on Linux nodes. |
| `kubelet_config` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.NodeKubeletConfig` Node kubelet configs. |
| `node_network_config` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.NodeNetworkConfig` Node network config. |
| `gcfs_config` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.GcfsConfig` GCFS config. |
| `confidential_nodes` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.ConfidentialNodes` Confidential nodes config. All the nodes in the node pool will be Confidential VM once enabled. |
| `gvnic` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.VirtualNIC` Enable or disable gvnic on the node pool. |
| `etag` | `str` The current etag of the node pool. If an etag is provided and does not match the current etag of the node pool, update will be blocked and an ABORTED error will be returned. |
| `fast_socket` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.FastSocket` Enable or disable NCCL fast socket for the node pool. |
| `logging_config` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.NodePoolLoggingConfig` Logging configuration. |
| `resource_labels` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.ResourceLabels` The resource labels for the node pool to use to annotate any related Google Compute Engine resources. |
| `windows_node_config` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.WindowsNodeConfig` Parameters that can be configured on Windows nodes. |
| `accelerators` | `MutableSequence[https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.AcceleratorConfig]` 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. |
| `machine_type` | `str` Optional. The desired \`Google Compute Engine machine type |
| `disk_type` | `str` Optional. The desired disk type (e.g. 'pd-standard', 'pd-ssd' or 'pd-balanced') for nodes in the node pool. Initiates an upgrade operation that migrates the nodes in the node pool to the specified disk type. |
| `disk_size_gb` | `int` Optional. The desired disk size for nodes in the node pool specified in GB. The smallest allowed disk size is 10GB. Initiates an upgrade operation that migrates the nodes in the node pool to the specified disk size. |
| `resource_manager_tags` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.ResourceManagerTags` Desired resource manager tag keys and values to be attached to the nodes for managing Compute Engine firewalls using Network Firewall Policies. Existing tags will be replaced with new values. |
| `containerd_config` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.ContainerdConfig` The desired containerd config for nodes in the node pool. Initiates an upgrade operation that recreates the nodes with the new config. |
| `queued_provisioning` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.NodePool.QueuedProvisioning` Specifies the configuration of queued provisioning. |
| `storage_pools` | `MutableSequence[str]` List of Storage Pools where boot disks are provisioned. Existing Storage Pools will be replaced with storage-pools. |
| `max_run_duration` | `google.protobuf.duration_pb2.Duration` The maximum duration for the nodes to exist. If unspecified, the nodes can exist indefinitely. |
| `flex_start` | `bool` Flex Start flag for enabling Flex Start VM. This field is a member of `oneof`_ `_flex_start`. |
| `boot_disk` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.BootDisk` The desired boot disk config for nodes in the node pool. Initiates an upgrade operation that migrates the nodes in the node pool to the specified boot disk config. |
| `node_drain_config` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.NodePool.NodeDrainConfig` The desired node drain configuration for nodes in the node pool. |
| `consolidation_delay` | `google.protobuf.duration_pb2.Duration` Consolidation delay defines duration after which the Cluster Autoscaler can scale down underutilized nodes. If not set, nodes are scaled down by default behavior, i.e. according to the chosen autoscaling profile. |
| `taint_config` | `https://docs.cloud.google.com/python/docs/reference/container/latest/google.cloud.container_v1.types.TaintConfig` The taint configuration for the node pool. |