diff --git a/pkg/controller/nodelifecycle/node_lifecycle_controller.go b/pkg/controller/nodelifecycle/node_lifecycle_controller.go index 6de3fd14a65..7a3aa1991ce 100644 --- a/pkg/controller/nodelifecycle/node_lifecycle_controller.go +++ b/pkg/controller/nodelifecycle/node_lifecycle_controller.go @@ -89,6 +89,7 @@ var ( v1.NodeOutOfDisk: algorithm.TaintNodeOutOfDisk, v1.NodeDiskPressure: algorithm.TaintNodeDiskPressure, v1.NodeNetworkUnavailable: algorithm.TaintNodeNetworkUnavailable, + v1.NodePIDPressure: algorithm.TaintNodePIDPressure, } taintKeyToNodeConditionMap = map[string]v1.NodeConditionType{ @@ -96,6 +97,7 @@ var ( algorithm.TaintNodeMemoryPressure: v1.NodeMemoryPressure, algorithm.TaintNodeOutOfDisk: v1.NodeOutOfDisk, algorithm.TaintNodeDiskPressure: v1.NodeDiskPressure, + algorithm.TaintNodePIDPressure: v1.NodePIDPressure, } ) diff --git a/pkg/scheduler/algorithm/well_known_labels.go b/pkg/scheduler/algorithm/well_known_labels.go index 6a246bdcaf3..ae811cf28df 100644 --- a/pkg/scheduler/algorithm/well_known_labels.go +++ b/pkg/scheduler/algorithm/well_known_labels.go @@ -56,6 +56,11 @@ const ( // and removed when network becomes ready. TaintNodeNetworkUnavailable = "node.kubernetes.io/network-unavailable" + // TaintNodePIDPressure will be added when node has pid pressure + // and feature-gate for TaintNodesByCondition flag is enabled, + // and removed when node has enough disk. + TaintNodePIDPressure = "node.kubernetes.io/pid-pressure" + // TaintExternalCloudProvider sets this taint on a node to mark it as unusable, // when kubelet is started with the "external" cloud provider, until a controller // from the cloud-controller-manager intitializes this node, and then removes