Class: Google::Apis::ContainerV1::UpdateNodePoolRequest
- Inherits:
-
Object
- Object
- Google::Apis::ContainerV1::UpdateNodePoolRequest
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/container_v1/classes.rb,
lib/google/apis/container_v1/representations.rb,
lib/google/apis/container_v1/representations.rb
Overview
UpdateNodePoolRequests update a node pool's image and/or version.
Instance Attribute Summary collapse
-
#cluster_id ⇒ String
Deprecated.
-
#gcfs_config ⇒ Google::Apis::ContainerV1::GcfsConfig
GcfsConfig contains configurations of Google Container File System (image streaming).
-
#gvnic ⇒ Google::Apis::ContainerV1::VirtualNic
Configuration of gVNIC feature.
-
#image_type ⇒ String
Required.
-
#kubelet_config ⇒ Google::Apis::ContainerV1::NodeKubeletConfig
Node kubelet configs.
-
#labels ⇒ Google::Apis::ContainerV1::NodeLabels
Collection of node-level Kubernetes labels.
-
#linux_node_config ⇒ Google::Apis::ContainerV1::LinuxNodeConfig
Parameters that can be configured on Linux nodes.
-
#locations ⇒ Array<String>
The desired list of Google Compute Engine zones in which the node pool's nodes should be located.
-
#name ⇒ String
The name (project, location, cluster, node pool) of the node pool to update.
-
#node_pool_id ⇒ String
Deprecated.
-
#node_version ⇒ String
Required.
-
#project_id ⇒ String
Deprecated.
-
#tags ⇒ Google::Apis::ContainerV1::NetworkTags
Collection of Compute Engine network tags that can be applied to a node's underlying VM instance.
-
#taints ⇒ Google::Apis::ContainerV1::NodeTaints
Collection of Kubernetes node taints.
-
#upgrade_settings ⇒ Google::Apis::ContainerV1::UpgradeSettings
These upgrade settings control the level of parallelism and the level of disruption caused by an upgrade.
-
#workload_metadata_config ⇒ Google::Apis::ContainerV1::WorkloadMetadataConfig
WorkloadMetadataConfig defines the metadata configuration to expose to workloads on the node pool.
-
#zone ⇒ String
Deprecated.
Instance Method Summary collapse
-
#initialize(**args) ⇒ UpdateNodePoolRequest
constructor
A new instance of UpdateNodePoolRequest.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ UpdateNodePoolRequest
Returns a new instance of UpdateNodePoolRequest.
5319 5320 5321 |
# File 'lib/google/apis/container_v1/classes.rb', line 5319 def initialize(**args) update!(**args) end |
Instance Attribute Details
#cluster_id ⇒ String
Deprecated. The name of the cluster to upgrade. This field has been deprecated
and replaced by the name field.
Corresponds to the JSON property clusterId
5203 5204 5205 |
# File 'lib/google/apis/container_v1/classes.rb', line 5203 def cluster_id @cluster_id end |
#gcfs_config ⇒ Google::Apis::ContainerV1::GcfsConfig
GcfsConfig contains configurations of Google Container File System (image
streaming).
Corresponds to the JSON property gcfsConfig
5209 5210 5211 |
# File 'lib/google/apis/container_v1/classes.rb', line 5209 def gcfs_config @gcfs_config end |
#gvnic ⇒ Google::Apis::ContainerV1::VirtualNic
Configuration of gVNIC feature.
Corresponds to the JSON property gvnic
5214 5215 5216 |
# File 'lib/google/apis/container_v1/classes.rb', line 5214 def gvnic @gvnic end |
#image_type ⇒ String
Required. The desired image type for the node pool.
Corresponds to the JSON property imageType
5219 5220 5221 |
# File 'lib/google/apis/container_v1/classes.rb', line 5219 def image_type @image_type end |
#kubelet_config ⇒ Google::Apis::ContainerV1::NodeKubeletConfig
Node kubelet configs.
Corresponds to the JSON property kubeletConfig
5224 5225 5226 |
# File 'lib/google/apis/container_v1/classes.rb', line 5224 def kubelet_config @kubelet_config end |
#labels ⇒ Google::Apis::ContainerV1::NodeLabels
Collection of node-level Kubernetes labels.
Corresponds to the JSON property labels
5230 5231 5232 |
# File 'lib/google/apis/container_v1/classes.rb', line 5230 def labels @labels end |
#linux_node_config ⇒ Google::Apis::ContainerV1::LinuxNodeConfig
Parameters that can be configured on Linux nodes.
Corresponds to the JSON property linuxNodeConfig
5235 5236 5237 |
# File 'lib/google/apis/container_v1/classes.rb', line 5235 def linux_node_config @linux_node_config end |
#locations ⇒ Array<String>
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.
Corresponds to the JSON property locations
5244 5245 5246 |
# File 'lib/google/apis/container_v1/classes.rb', line 5244 def locations @locations end |
#name ⇒ String
The name (project, location, cluster, node pool) of the node pool to update.
Specified in the format projects/*/locations/*/clusters/*/nodePools/*.
Corresponds to the JSON property name
5250 5251 5252 |
# File 'lib/google/apis/container_v1/classes.rb', line 5250 def name @name end |
#node_pool_id ⇒ String
Deprecated. The name of the node pool to upgrade. This field has been
deprecated and replaced by the name field.
Corresponds to the JSON property nodePoolId
5256 5257 5258 |
# File 'lib/google/apis/container_v1/classes.rb', line 5256 def node_pool_id @node_pool_id end |
#node_version ⇒ String
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
Corresponds to the JSON property nodeVersion
5267 5268 5269 |
# File 'lib/google/apis/container_v1/classes.rb', line 5267 def node_version @node_version end |
#project_id ⇒ String
Deprecated. The Google Developers Console project ID or project number. This field has been deprecated and
replaced by the name field.
Corresponds to the JSON property projectId
5274 5275 5276 |
# File 'lib/google/apis/container_v1/classes.rb', line 5274 def project_id @project_id end |
#tags ⇒ Google::Apis::ContainerV1::NetworkTags
Collection of Compute Engine network tags that can be applied to a node's
underlying VM instance.
Corresponds to the JSON property tags
5280 5281 5282 |
# File 'lib/google/apis/container_v1/classes.rb', line 5280 def @tags end |
#taints ⇒ Google::Apis::ContainerV1::NodeTaints
Collection of Kubernetes node taints.
Corresponds to the JSON property taints
5286 5287 5288 |
# File 'lib/google/apis/container_v1/classes.rb', line 5286 def taints @taints end |
#upgrade_settings ⇒ Google::Apis::ContainerV1::UpgradeSettings
These upgrade settings control the level of parallelism and the level of
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.
Corresponds to the JSON property upgradeSettings
5304 5305 5306 |
# File 'lib/google/apis/container_v1/classes.rb', line 5304 def upgrade_settings @upgrade_settings end |
#workload_metadata_config ⇒ Google::Apis::ContainerV1::WorkloadMetadataConfig
WorkloadMetadataConfig defines the metadata configuration to expose to
workloads on the node pool.
Corresponds to the JSON property workloadMetadataConfig
5310 5311 5312 |
# File 'lib/google/apis/container_v1/classes.rb', line 5310 def @workload_metadata_config end |
#zone ⇒ String
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.
Corresponds to the JSON property zone
5317 5318 5319 |
# File 'lib/google/apis/container_v1/classes.rb', line 5317 def zone @zone end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
5324 5325 5326 5327 5328 5329 5330 5331 5332 5333 5334 5335 5336 5337 5338 5339 5340 5341 5342 |
# File 'lib/google/apis/container_v1/classes.rb', line 5324 def update!(**args) @cluster_id = args[:cluster_id] if args.key?(:cluster_id) @gcfs_config = args[:gcfs_config] if args.key?(:gcfs_config) @gvnic = args[:gvnic] if args.key?(:gvnic) @image_type = args[:image_type] if args.key?(:image_type) @kubelet_config = args[:kubelet_config] if args.key?(:kubelet_config) @labels = args[:labels] if args.key?(:labels) @linux_node_config = args[:linux_node_config] if args.key?(:linux_node_config) @locations = args[:locations] if args.key?(:locations) @name = args[:name] if args.key?(:name) @node_pool_id = args[:node_pool_id] if args.key?(:node_pool_id) @node_version = args[:node_version] if args.key?(:node_version) @project_id = args[:project_id] if args.key?(:project_id) @tags = args[:tags] if args.key?(:tags) @taints = args[:taints] if args.key?(:taints) @upgrade_settings = args[:upgrade_settings] if args.key?(:upgrade_settings) @workload_metadata_config = args[:workload_metadata_config] if args.key?(:workload_metadata_config) @zone = args[:zone] if args.key?(:zone) end |