Documentation

Index

Constants

View Source
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"
)

Variables

This section is empty.

Functions

func New

    New initializes a new plugin and returns it.

    Types

    type NodeAffinity

    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

      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

        func (pl *NodeAffinity) Name() string

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

          func (*NodeAffinity) NormalizeScore

          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) Score

            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

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

                ScoreExtensions of the Score plugin.