kubernetes: k8s.io/kubernetes/pkg/scheduler/framework/plugins/nodeaffinity Index | Files

package nodeaffinity

import "k8s.io/kubernetes/pkg/scheduler/framework/plugins/nodeaffinity"


Package Files



const (
    // Name is the name of the plugin used in the plugin registry and configurations.
    Name = "NodeAffinity"

    // ErrReasonPod is the reason for Pod's node affinity/selector not matching.
    ErrReasonPod = "node(s) didn't match Pod's node affinity/selector"

func New Uses

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

New initializes a new plugin and returns it.

type NodeAffinity Uses

type NodeAffinity struct {
    // contains filtered or unexported fields

NodeAffinity is a plugin that checks if a pod node selector matches the node label.

func (*NodeAffinity) Filter Uses

func (pl *NodeAffinity) Filter(ctx context.Context, state *framework.CycleState, pod *v1.Pod, nodeInfo *framework.NodeInfo) *framework.Status

Filter checks if the Node matches the Pod .spec.affinity.nodeAffinity and the plugin's added affinity.

func (*NodeAffinity) Name Uses

func (pl *NodeAffinity) Name() string

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

func (*NodeAffinity) NormalizeScore Uses

func (pl *NodeAffinity) NormalizeScore(ctx context.Context, state *framework.CycleState, pod *v1.Pod, scores framework.NodeScoreList) *framework.Status

NormalizeScore invoked after scoring all nodes.

func (*NodeAffinity) PreScore Uses

func (pl *NodeAffinity) PreScore(ctx context.Context, cycleState *framework.CycleState, pod *v1.Pod, nodes []*v1.Node) *framework.Status

PreScore builds and writes cycle state used by Score and NormalizeScore.

func (*NodeAffinity) Score Uses

func (pl *NodeAffinity) Score(ctx context.Context, state *framework.CycleState, pod *v1.Pod, nodeName string) (int64, *framework.Status)

Score returns the sum of the weights of the terms that match the Node. Terms came from the Pod .spec.affinity.nodeAffinity and from the plugin's default affinity.

func (*NodeAffinity) ScoreExtensions Uses

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

ScoreExtensions of the Score plugin.

Package nodeaffinity imports 9 packages (graph) and is imported by 39 packages. Updated 2021-01-05. Refresh now. Tools for package owners.