class documentation

Undocumented

Method __dir__ Undocumented
Method __init__ Undocumented
Method drain_timeout.setter Undocumented
Method max_surge.setter Undocumented
Method max_unavailable.setter Undocumented
Constant __PB2_DESCRIPTOR__ Undocumented
Constant __PY_TO_PB2__ Undocumented
Class Variable __mask_functions__ Undocumented
Property drain_timeout DrainTimeout is the total amount of time that the service will spend on draining a node. By default, node can be drained without any time limitations. NOTE: NodeDrainTimeout is different from `kubectl drain --timeout`...
Property max_surge The maximum number of machines that can be scheduled above the desired number of machines. Value can be an absolute number (ex: 5) or a percentage of desired machines (ex: 10%). This can not be 0 if MaxUnavailable is 0...
Property max_unavailable The maximum number of machines that can be unavailable during the update. Value can be an absolute number (ex: 5) or a percentage of desired machines (ex: 10%). Absolute number is calculated from percentage by rounding down...

Inherited from Message:

Class Method get_descriptor Undocumented
Class Method is_credentials Undocumented
Class Method is_sensitive Undocumented
Method __repr__ Undocumented
Method check_presence Undocumented
Method get_full_update_reset_mask Undocumented
Method get_mask Undocumented
Method is_default Undocumented
Method set_mask Undocumented
Method which_field_in_oneof Undocumented
Class Variable __PB2_CLASS__ Undocumented
Instance Variable __pb2_message__ Undocumented
Method _clear_field Undocumented
Method _get_field Undocumented
Method _set_field Undocumented
Class Variable __credentials_fields Undocumented
Class Variable __default Undocumented
Class Variable __sensitive_fields Undocumented
Instance Variable __recorded_reset_mask Undocumented
def __dir__(self) -> abc.Iterable[builtins.str]: (source)

Undocumented

def __init__(self, initial_message: message_1.Message | None = None, *, max_unavailable: PercentOrCount | node_group_pb2.PercentOrCount | None | unset.UnsetType = unset.Unset, max_surge: PercentOrCount | node_group_pb2.PercentOrCount | None | unset.UnsetType = unset.Unset, drain_timeout: duration_pb2.Duration | datetime.timedelta | None | unset.UnsetType = unset.Unset): (source)
@drain_timeout.setter
def drain_timeout(self, value: duration_pb2.Duration | datetime.timedelta | None): (source)

Undocumented

@max_surge.setter
def max_surge(self, value: PercentOrCount | node_group_pb2.PercentOrCount | None): (source)

Undocumented

@max_unavailable.setter
def max_unavailable(self, value: PercentOrCount | node_group_pb2.PercentOrCount | None): (source)

Undocumented

__PB2_DESCRIPTOR__ = (source)

Undocumented

Value
descriptor.DescriptorWrap[descriptor_1.Descriptor]('.nebius.mk8s.v1alpha1.NodeGr
oupDeploymentStrategy',
                                                   node_group_pb2.DESCRIPTOR,
                                                   descriptor_1.Descriptor)
__PY_TO_PB2__: builtins.dict[builtins.str, builtins.str] = (source)

Undocumented

Value
{'max_unavailable': 'max_unavailable',
 'max_surge': 'max_surge',
 'drain_timeout': 'drain_timeout'}
@builtins.property
drain_timeout: datetime.timedelta = (source)

DrainTimeout is the total amount of time that the service will spend on draining a node. By default, node can be drained without any time limitations. NOTE: NodeDrainTimeout is different from `kubectl drain --timeout`

@builtins.property
max_surge: PercentOrCount = (source)

The maximum number of machines that can be scheduled above the desired number of machines. Value can be an absolute number (ex: 5) or a percentage of desired machines (ex: 10%). This can not be 0 if MaxUnavailable is 0. Absolute number is calculated from percentage by rounding up. Defaults to 1. Example: when this is set to 30%, the new MachineSet can be scaled up immediately when the rolling update starts, such that the total number of old and new machines do not exceed 130% of desired machines. Once old machines have been killed, new MachineSet can be scaled up further, ensuring that total number of machines running at any time during the update is at most 130% of desired machines.

@builtins.property
max_unavailable: PercentOrCount = (source)

The maximum number of machines that can be unavailable during the update. Value can be an absolute number (ex: 5) or a percentage of desired machines (ex: 10%). Absolute number is calculated from percentage by rounding down. This can not be 0 if MaxSurge is 0. Defaults to 0. Example: when this is set to 30%, the old MachineSet can be scaled down to 70% of desired machines immediately when the rolling update starts. Once new machines are ready, old MachineSet can be scaled down further, followed by scaling up the new MachineSet, ensuring that the total number of machines available at all times during the update is at least 70% of desired machines.