nodelabel

package
v1.23.0-alpha.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 28, 2021 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Overview

This plugin has been deprecated and is only configurable through the scheduler policy API and the v1beta1 component config API. It is recommended to use the NodeAffinity plugin instead.

Index

Constants

View Source
const (
	// ErrReasonPresenceViolated is used for CheckNodeLabelPresence predicate error.
	ErrReasonPresenceViolated = "node(s) didn't have the requested labels"
)
View Source
const Name = names.NodeLabel

Name of this plugin.

Variables

This section is empty.

Functions

func New

func New(plArgs runtime.Object, handle framework.Handle) (framework.Plugin, error)

New initializes a new plugin and returns it.

Types

type NodeLabel

type NodeLabel struct {
	// contains filtered or unexported fields
}

NodeLabel checks whether a pod can fit based on the node labels which match a filter that it requests.

func (*NodeLabel) EventsToRegister added in v1.22.0

func (pl *NodeLabel) EventsToRegister() []framework.ClusterEvent

EventsToRegister returns the possible events that may make a Pod failed by this plugin schedulable.

func (*NodeLabel) Filter

func (pl *NodeLabel) Filter(ctx context.Context, _ *framework.CycleState, _ *v1.Pod, nodeInfo *framework.NodeInfo) *framework.Status

Filter invoked at the filter extension point. It checks whether all of the specified labels exists on a node or not, regardless of their value

Consider the cases where the nodes are placed in regions/zones/racks and these are identified by labels In some cases, it is required that only nodes that are part of ANY of the defined regions/zones/racks be selected

Alternately, eliminating nodes that have a certain label, regardless of value, is also useful A node may have a label with "retiring" as key and the date as the value and it may be desirable to avoid scheduling new pods on this node.

func (*NodeLabel) Name

func (pl *NodeLabel) Name() string

Name returns name of the plugin. It is used in logs, etc.

func (*NodeLabel) Score

func (pl *NodeLabel) Score(ctx context.Context, _ *framework.CycleState, _ *v1.Pod, nodeName string) (int64, *framework.Status)

Score invoked at the score extension point.

func (*NodeLabel) ScoreExtensions

func (pl *NodeLabel) ScoreExtensions() framework.ScoreExtensions

ScoreExtensions of the Score plugin.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL