Share via


UndrainableNodeBehavior Class

public final class UndrainableNodeBehavior
extends ExpandableStringEnum<UndrainableNodeBehavior>

Defines the behavior for undrainable nodes during upgrade. The most common cause of undrainable nodes is Pod Disruption Budgets (PDBs), but other issues, such as pod termination grace period is exceeding the remaining per-node drain timeout or pod is still being in a running state, can also cause undrainable nodes.

Field Summary

Modifier and Type Field and Description
static final UndrainableNodeBehavior CORDON

AKS will cordon the blocked nodes and replace them with surge nodes during upgrade.

static final UndrainableNodeBehavior SCHEDULE

AKS will mark the blocked nodes schedulable, but the blocked nodes are not upgraded.

Constructor Summary

Constructor Description
UndrainableNodeBehavior()

Deprecated

Use the fromString(String name) factory method.

Creates a new instance of UndrainableNodeBehavior value.

Method Summary

Modifier and Type Method and Description
static UndrainableNodeBehavior fromString(String name)

Creates or finds a UndrainableNodeBehavior from its string representation.

static Collection<UndrainableNodeBehavior> values()

Gets known UndrainableNodeBehavior values.

Methods inherited from ExpandableStringEnum

Methods inherited from java.lang.Object

Field Details

CORDON

public static final UndrainableNodeBehavior CORDON

AKS will cordon the blocked nodes and replace them with surge nodes during upgrade. The blocked nodes will be cordoned and replaced by surge nodes. The blocked nodes will have label 'kubernetes.azure.com/upgrade-status:Quarantined'. A surge node will be retained for each blocked node. A best-effort attempt will be made to delete all other surge nodes. If there are enough surge nodes to replace blocked nodes, then the upgrade operation and the managed cluster will be in failed state. Otherwise, the upgrade operation and the managed cluster will be in canceled state.

SCHEDULE

public static final UndrainableNodeBehavior SCHEDULE

AKS will mark the blocked nodes schedulable, but the blocked nodes are not upgraded. A best-effort attempt will be made to delete all surge nodes. The upgrade operation and the managed cluster will be in failed state if there are any blocked nodes.

Constructor Details

UndrainableNodeBehavior

@Deprecated
public UndrainableNodeBehavior()

Deprecated

Use the fromString(String name) factory method.

Creates a new instance of UndrainableNodeBehavior value.

Method Details

fromString

public static UndrainableNodeBehavior fromString(String name)

Creates or finds a UndrainableNodeBehavior from its string representation.

Parameters:

name - a name to look for.

Returns:

the corresponding UndrainableNodeBehavior.

values

public static Collection<UndrainableNodeBehavior> values()

Gets known UndrainableNodeBehavior values.

Returns:

known UndrainableNodeBehavior values.

Applies to