@nebius/js-sdk - v0.2.22
    Preparing search index...

    Interface NodeGroupDeploymentStrategy

    interface NodeGroupDeploymentStrategy {
        "[customJson]"?: () => unknown;
        "[unknownFieldsSymbol]"?: Uint8Array<ArrayBufferLike>;
        $type: "nebius.mk8s.v1.NodeGroupDeploymentStrategy";
        drainTimeout?: Duration;
        maxSurge?: PercentOrCount;
        maxUnavailable?: PercentOrCount;
        [key: symbol]: Uint8Array<ArrayBufferLike> | (() => unknown) | undefined;
    }

    Indexable

    • [key: symbol]: Uint8Array<ArrayBufferLike> | (() => unknown) | undefined
    Index

    Properties

    "[customJson]"?: () => unknown
    "[unknownFieldsSymbol]"?: Uint8Array<ArrayBufferLike>
    $type: "nebius.mk8s.v1.NodeGroupDeploymentStrategy"
    drainTimeout?: Duration

    Maximum amount of time that the service will spend attempting to gracefully drain a node (evicting its pods) before falling back to pod deletion. A value of 0 (or when field is omitted) means no timeout: the node can be drained for an unlimited time. Important consequence of that is if PodDisruptionBudget doesn't allow evicting a pod, then NodeGroup update with node re-creation will hang on that pod eviction. Note that this is different from kubectl drain --timeout, which gives up and returns an error.

    maxSurge?: PercentOrCount

    The maximum number of additional nodes that can be provisioned above the desired number of nodes during the update process.

    This value can be specified either as an absolute number (for example 3) or as a percentage of the desired number of nodes (for example 5%).

    When specified as a percentage, the actual number is calculated by rounding up to the nearest whole number. This value cannot be 0 if max_unavailable is also set to 0.

    Defaults to 1.

    Example: If set to 25%, the node group can scale up by an additional 25% during the update, allowing new nodes to be added before old nodes are removed, which helps minimize workload disruption.

    NOTE:

    it is user responsibility to ensure that there are enough quota for provision nodes above the desired number. Available quota effectively limits max_surge. In case of not enough quota even for one extra node, update operation will hung because of quota exhausted error. Such error will be visible in Operation.progress_data.

    maxUnavailable?: PercentOrCount

    The maximum number of nodes that can be simultaneously unavailable during the update process.

    This value can be specified either as an absolute number (for example 3) or as a percentage of the desired number of nodes (for example 5%).

    When specified as a percentage, the actual number is calculated by rounding down to the nearest whole number. This value cannot be 0 if max_surge is also set to 0.

    Defaults to 0.

    Example: If set to 20%, up to 20% of the nodes can be taken offline at once during the update, ensuring that at least 80% of the desired nodes remain operational.