volumebinding

package
v0.0.0-...-d4c82a0 Latest Latest
Warning

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

Go to latest
Published: Mar 26, 2021 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const Name = "VolumeBinding"

Name is the name of the plugin used in Registry and configurations.

Variables

This section is empty.

Functions

func New

New initializes a new plugin with volume binder and returns it.

Types

type VolumeBinding

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

VolumeBinding is a plugin that binds pod volumes in scheduling.

func (*VolumeBinding) Filter

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

Filter invoked at the filter extension point. It evaluates if a pod can fit due to the volumes it requests, for both bound and unbound PVCs.

For PVCs that are bound, then it checks that the corresponding PV's node affinity is satisfied by the given node.

For PVCs that are unbound, it tries to find available PVs that can satisfy the PVC requirements and that the PV node affinity is satisfied by the given node.

The predicate returns true if all bound PVCs have compatible PVs with the node, and if all unbound PVCs can be matched with an available and node-compatible PV.

func (*VolumeBinding) Name

func (pl *VolumeBinding) Name() string

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

Jump to

Keyboard shortcuts

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