import "k8s.io/kubernetes/pkg/scheduler/framework/plugins/nodevolumelimits"
const ( // ErrReasonMaxVolumeCountExceeded is used for MaxVolumeCount predicate error. ErrReasonMaxVolumeCountExceeded = "node(s) exceed max volume count" // KubeMaxPDVols defines the maximum number of PD Volumes per kubelet. KubeMaxPDVols = "KUBE_MAX_PD_VOLS" )
const AzureDiskName = "AzureDiskLimits"
AzureDiskName is the name of the plugin used in the plugin registry and configurations.
const CSIName = "NodeVolumeLimits"
CSIName is the name of the plugin used in the plugin registry and configurations.
const CinderName = "CinderLimits"
CinderName is the name of the plugin used in the plugin registry and configurations.
const EBSName = "EBSLimits"
EBSName is the name of the plugin used in the plugin registry and configurations.
const GCEPDName = "GCEPDLimits"
GCEPDName is the name of the plugin used in the plugin registry and configurations.
NewAzureDisk returns function that initializes a new plugin and returns it.
NewCSI initializes a new plugin and returns it.
NewCinder returns function that initializes a new plugin and returns it.
NewEBS returns function that initializes a new plugin and returns it.
NewGCEPD returns function that initializes a new plugin and returns it.
type CSILimits struct {
// contains filtered or unexported fields
}
CSILimits is a plugin that checks node volume limits.
func (pl *CSILimits) Filter(ctx context.Context, _ *framework.CycleState, pod *v1.Pod, nodeInfo *framework.NodeInfo) *framework.Status
Filter invoked at the filter extension point.
Name returns name of the plugin. It is used in logs, etc.
type InTreeToCSITranslator interface { IsPVMigratable(pv *v1.PersistentVolume) bool IsMigratableIntreePluginByName(inTreePluginName string) bool GetInTreePluginNameFromSpec(pv *v1.PersistentVolume, vol *v1.Volume) (string, error) GetCSINameFromInTreeName(pluginName string) (string, error) TranslateInTreePVToCSI(pv *v1.PersistentVolume) (*v1.PersistentVolume, error) }
InTreeToCSITranslator contains methods required to check migratable status and perform translations from InTree PV's to CSI
type VolumeFilter struct { // Filter normal volumes FilterVolume func(vol *v1.Volume) (id string, relevant bool) FilterPersistentVolume func(pv *v1.PersistentVolume) (id string, relevant bool) // MatchProvisioner evaluates if the StorageClass provisioner matches the running predicate MatchProvisioner func(sc *storage.StorageClass) (relevant bool) // IsMigrated returns a boolean specifying whether the plugin is migrated to a CSI driver IsMigrated func(csiNode *storage.CSINode) bool }
VolumeFilter contains information on how to filter PD Volumes when checking PD Volume caps.
Package nodevolumelimits imports 22 packages (graph) and is imported by 34 packages. Updated 2021-01-07. Refresh now. Tools for package owners.