Class NodePool.UpgradeSettings.Builder (2.46.0)

public static final class NodePool.UpgradeSettings.Builder extends GeneratedMessageV3.Builder<NodePool.UpgradeSettings.Builder> implements NodePool.UpgradeSettingsOrBuilder

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.

These upgrade settings configure the upgrade strategy for the node pool. Use strategy to switch between the strategies applied to the node pool.

If the strategy is SURGE, use max_surge and max_unavailable to control the level of parallelism and the level of disruption caused by upgrade.

  1. 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.
  2. maxUnavailable controls the number of nodes that can be simultaneously unavailable.
  3. (maxUnavailable + maxSurge) determines the level of parallelism (how many nodes are being upgraded at the same time).

    If the strategy is BLUE_GREEN, use blue_green_settings to configure the blue-green upgrade related settings.

  4. standard_rollout_policy is the default policy. The policy is used to control the way blue pool gets drained. The draining is executed in the batch mode. The batch size could be specified as either percentage of the node pool size or the number of nodes. batch_soak_duration is the soak time after each batch gets drained.
  5. node_pool_soak_duration is the soak time after all blue nodes are drained. After this period, the blue pool nodes will be deleted.

Protobuf type google.container.v1beta1.NodePool.UpgradeSettings

Static Methods

getDescriptor()

public static final Descriptors.Descriptor getDescriptor()
Returns
Type Description
Descriptor

Methods

addRepeatedField(Descriptors.FieldDescriptor field, Object value)

public NodePool.UpgradeSettings.Builder addRepeatedField(Descriptors.FieldDescriptor field, Object value)
Parameters
Name Description
field FieldDescriptor
value Object
Returns
Type Description
NodePool.UpgradeSettings.Builder
Overrides

build()

public NodePool.UpgradeSettings build()
Returns
Type Description
NodePool.UpgradeSettings

buildPartial()

public NodePool.UpgradeSettings buildPartial()
Returns
Type Description
NodePool.UpgradeSettings

clear()

public NodePool.UpgradeSettings.Builder clear()
Returns
Type Description
NodePool.UpgradeSettings.Builder
Overrides

clearBlueGreenSettings()

public NodePool.UpgradeSettings.Builder clearBlueGreenSettings()

Settings for blue-green upgrade strategy.

optional .google.container.v1beta1.BlueGreenSettings blue_green_settings = 4;

Returns
Type Description
NodePool.UpgradeSettings.Builder

clearField(Descriptors.FieldDescriptor field)

public NodePool.UpgradeSettings.Builder clearField(Descriptors.FieldDescriptor field)
Parameter
Name Description
field FieldDescriptor
Returns
Type Description
NodePool.UpgradeSettings.Builder
Overrides

clearMaxSurge()

public NodePool.UpgradeSettings.Builder clearMaxSurge()

The maximum number of nodes that can be created beyond the current size of the node pool during the upgrade process.

int32 max_surge = 1;

Returns
Type Description
NodePool.UpgradeSettings.Builder

This builder for chaining.

clearMaxUnavailable()

public NodePool.UpgradeSettings.Builder clearMaxUnavailable()

The maximum number of nodes that can be simultaneously unavailable during the upgrade process. A node is considered available if its status is Ready.

int32 max_unavailable = 2;

Returns
Type Description
NodePool.UpgradeSettings.Builder

This builder for chaining.

clearOneof(Descriptors.OneofDescriptor oneof)

public NodePool.UpgradeSettings.Builder clearOneof(Descriptors.OneofDescriptor oneof)
Parameter
Name Description
oneof OneofDescriptor
Returns
Type Description
NodePool.UpgradeSettings.Builder
Overrides

clearStrategy()

public NodePool.UpgradeSettings.Builder clearStrategy()

Update strategy of the node pool.

optional .google.container.v1beta1.NodePoolUpdateStrategy strategy = 3;

Returns
Type Description
NodePool.UpgradeSettings.Builder

This builder for chaining.

clone()

public NodePool.UpgradeSettings.Builder clone()
Returns
Type Description
NodePool.UpgradeSettings.Builder
Overrides

getBlueGreenSettings()

public BlueGreenSettings getBlueGreenSettings()

Settings for blue-green upgrade strategy.

optional .google.container.v1beta1.BlueGreenSettings blue_green_settings = 4;

Returns
Type Description
BlueGreenSettings

The blueGreenSettings.

getBlueGreenSettingsBuilder()

public BlueGreenSettings.Builder getBlueGreenSettingsBuilder()

Settings for blue-green upgrade strategy.

optional .google.container.v1beta1.BlueGreenSettings blue_green_settings = 4;

Returns
Type Description
BlueGreenSettings.Builder

getBlueGreenSettingsOrBuilder()

public BlueGreenSettingsOrBuilder getBlueGreenSettingsOrBuilder()

Settings for blue-green upgrade strategy.

optional .google.container.v1beta1.BlueGreenSettings blue_green_settings = 4;

Returns
Type Description
BlueGreenSettingsOrBuilder

getDefaultInstanceForType()

public NodePool.UpgradeSettings getDefaultInstanceForType()
Returns
Type Description
NodePool.UpgradeSettings

getDescriptorForType()

public Descriptors.Descriptor getDescriptorForType()
Returns
Type Description
Descriptor
Overrides

getMaxSurge()

public int getMaxSurge()

The maximum number of nodes that can be created beyond the current size of the node pool during the upgrade process.

int32 max_surge = 1;

Returns
Type Description
int

The maxSurge.

getMaxUnavailable()

public int getMaxUnavailable()

The maximum number of nodes that can be simultaneously unavailable during the upgrade process. A node is considered available if its status is Ready.

int32 max_unavailable = 2;

Returns
Type Description
int

The maxUnavailable.

getStrategy()

public NodePoolUpdateStrategy getStrategy()

Update strategy of the node pool.

optional .google.container.v1beta1.NodePoolUpdateStrategy strategy = 3;

Returns
Type Description
NodePoolUpdateStrategy

The strategy.

getStrategyValue()

public int getStrategyValue()

Update strategy of the node pool.

optional .google.container.v1beta1.NodePoolUpdateStrategy strategy = 3;

Returns
Type Description
int

The enum numeric value on the wire for strategy.

hasBlueGreenSettings()

public boolean hasBlueGreenSettings()

Settings for blue-green upgrade strategy.

optional .google.container.v1beta1.BlueGreenSettings blue_green_settings = 4;

Returns
Type Description
boolean

Whether the blueGreenSettings field is set.

hasStrategy()

public boolean hasStrategy()

Update strategy of the node pool.

optional .google.container.v1beta1.NodePoolUpdateStrategy strategy = 3;

Returns
Type Description
boolean

Whether the strategy field is set.

internalGetFieldAccessorTable()

protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
Type Description
FieldAccessorTable
Overrides

isInitialized()

public final boolean isInitialized()
Returns
Type Description
boolean
Overrides

mergeBlueGreenSettings(BlueGreenSettings value)

public NodePool.UpgradeSettings.Builder mergeBlueGreenSettings(BlueGreenSettings value)

Settings for blue-green upgrade strategy.

optional .google.container.v1beta1.BlueGreenSettings blue_green_settings = 4;

Parameter
Name Description
value BlueGreenSettings
Returns
Type Description
NodePool.UpgradeSettings.Builder

mergeFrom(NodePool.UpgradeSettings other)

public NodePool.UpgradeSettings.Builder mergeFrom(NodePool.UpgradeSettings other)
Parameter
Name Description
other NodePool.UpgradeSettings
Returns
Type Description
NodePool.UpgradeSettings.Builder

mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public NodePool.UpgradeSettings.Builder mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input CodedInputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
NodePool.UpgradeSettings.Builder
Overrides
Exceptions
Type Description
IOException

mergeFrom(Message other)

public NodePool.UpgradeSettings.Builder mergeFrom(Message other)
Parameter
Name Description
other Message
Returns
Type Description
NodePool.UpgradeSettings.Builder
Overrides

mergeUnknownFields(UnknownFieldSet unknownFields)

public final NodePool.UpgradeSettings.Builder mergeUnknownFields(UnknownFieldSet unknownFields)
Parameter
Name Description
unknownFields UnknownFieldSet
Returns
Type Description
NodePool.UpgradeSettings.Builder
Overrides

setBlueGreenSettings(BlueGreenSettings value)

public NodePool.UpgradeSettings.Builder setBlueGreenSettings(BlueGreenSettings value)

Settings for blue-green upgrade strategy.

optional .google.container.v1beta1.BlueGreenSettings blue_green_settings = 4;

Parameter
Name Description
value BlueGreenSettings
Returns
Type Description
NodePool.UpgradeSettings.Builder

setBlueGreenSettings(BlueGreenSettings.Builder builderForValue)

public NodePool.UpgradeSettings.Builder setBlueGreenSettings(BlueGreenSettings.Builder builderForValue)

Settings for blue-green upgrade strategy.

optional .google.container.v1beta1.BlueGreenSettings blue_green_settings = 4;

Parameter
Name Description
builderForValue BlueGreenSettings.Builder
Returns
Type Description
NodePool.UpgradeSettings.Builder

setField(Descriptors.FieldDescriptor field, Object value)

public NodePool.UpgradeSettings.Builder setField(Descriptors.FieldDescriptor field, Object value)
Parameters
Name Description
field FieldDescriptor
value Object
Returns
Type Description
NodePool.UpgradeSettings.Builder
Overrides

setMaxSurge(int value)

public NodePool.UpgradeSettings.Builder setMaxSurge(int value)

The maximum number of nodes that can be created beyond the current size of the node pool during the upgrade process.

int32 max_surge = 1;

Parameter
Name Description
value int

The maxSurge to set.

Returns
Type Description
NodePool.UpgradeSettings.Builder

This builder for chaining.

setMaxUnavailable(int value)

public NodePool.UpgradeSettings.Builder setMaxUnavailable(int value)

The maximum number of nodes that can be simultaneously unavailable during the upgrade process. A node is considered available if its status is Ready.

int32 max_unavailable = 2;

Parameter
Name Description
value int

The maxUnavailable to set.

Returns
Type Description
NodePool.UpgradeSettings.Builder

This builder for chaining.

setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)

public NodePool.UpgradeSettings.Builder setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)
Parameters
Name Description
field FieldDescriptor
index int
value Object
Returns
Type Description
NodePool.UpgradeSettings.Builder
Overrides

setStrategy(NodePoolUpdateStrategy value)

public NodePool.UpgradeSettings.Builder setStrategy(NodePoolUpdateStrategy value)

Update strategy of the node pool.

optional .google.container.v1beta1.NodePoolUpdateStrategy strategy = 3;

Parameter
Name Description
value NodePoolUpdateStrategy

The strategy to set.

Returns
Type Description
NodePool.UpgradeSettings.Builder

This builder for chaining.

setStrategyValue(int value)

public NodePool.UpgradeSettings.Builder setStrategyValue(int value)

Update strategy of the node pool.

optional .google.container.v1beta1.NodePoolUpdateStrategy strategy = 3;

Parameter
Name Description
value int

The enum numeric value on the wire for strategy to set.

Returns
Type Description
NodePool.UpgradeSettings.Builder

This builder for chaining.

setUnknownFields(UnknownFieldSet unknownFields)

public final NodePool.UpgradeSettings.Builder setUnknownFields(UnknownFieldSet unknownFields)
Parameter
Name Description
unknownFields UnknownFieldSet
Returns
Type Description
NodePool.UpgradeSettings.Builder
Overrides