Versions in this module Expand all Collapse all v1 v1.16.3 Nov 9, 2022 Changes in this version + const AzureDiskVolumeFilterType + const CheckNodeConditionPred + const CheckNodeDiskPressurePred + const CheckNodeLabelPresencePred + const CheckNodeMemoryPressurePred + const CheckNodePIDPressurePred + const CheckNodeUnschedulablePred + const CheckServiceAffinityPred + const CheckVolumeBindingPred + const CinderVolumeFilterType + const DefaultMaxAzureDiskVolumes + const DefaultMaxGCEPDVolumes + const EBSVolumeFilterType + const EvenPodsSpreadPred + const GCEPDVolumeFilterType + const GeneralPred + const HostNamePred + const KubeMaxPDVols + const MatchInterPodAffinityPred + const MatchNodeSelectorPred + const MaxAzureDiskVolumeCountPred + const MaxCSIVolumeCountPred + const MaxCinderVolumeCountPred + const MaxEBSVolumeCountPred + const MaxGCEPDVolumeCountPred + const NoDiskConflictPred + const NoVolumeZoneConflictPred + const PodFitsHostPortsPred + const PodFitsResourcesPred + const PodToleratesNodeNoExecuteTaintsPred + const PodToleratesNodeTaintsPred + var AzureDiskVolumeFilter = VolumeFilter + var CinderVolumeFilter = VolumeFilter + var EBSVolumeFilter = VolumeFilter + var ErrDiskConflict = newPredicateFailureError("NoDiskConflict", "node(s) had no available disk") + var ErrExistingPodsAntiAffinityRulesNotMatch = newPredicateFailureError("ExistingPodsAntiAffinityRulesNotMatch", ...) + var ErrFakePredicate = newPredicateFailureError("FakePredicateError", "Nodes failed the fake predicate") + var ErrMaxVolumeCountExceeded = newPredicateFailureError("MaxVolumeCount", "node(s) exceed max volume count") + var ErrNodeLabelPresenceViolated = newPredicateFailureError("CheckNodeLabelPresence", "node(s) didn't have the requested labels") + var ErrNodeNetworkUnavailable = newPredicateFailureError("NodeNetworkUnavailable", "node(s) had unavailable network") + var ErrNodeNotReady = newPredicateFailureError("NodeNotReady", "node(s) were not ready") + var ErrNodeSelectorNotMatch = newPredicateFailureError("MatchNodeSelector", "node(s) didn't match node selector") + var ErrNodeUnderDiskPressure = newPredicateFailureError("NodeUnderDiskPressure", "node(s) had disk pressure") + var ErrNodeUnderMemoryPressure = newPredicateFailureError("NodeUnderMemoryPressure", "node(s) had memory pressure") + var ErrNodeUnderPIDPressure = newPredicateFailureError("NodeUnderPIDPressure", "node(s) had pid pressure") + var ErrNodeUnknownCondition = newPredicateFailureError("NodeUnknownCondition", "node(s) had unknown conditions") + var ErrNodeUnschedulable = newPredicateFailureError("NodeUnschedulable", "node(s) were unschedulable") + var ErrPodAffinityNotMatch = newPredicateFailureError("MatchInterPodAffinity", "node(s) didn't match pod affinity/anti-affinity") + var ErrPodAffinityRulesNotMatch = newPredicateFailureError("PodAffinityRulesNotMatch", "node(s) didn't match pod affinity rules") + var ErrPodAntiAffinityRulesNotMatch = newPredicateFailureError("PodAntiAffinityRulesNotMatch", "node(s) didn't match pod anti-affinity rules") + var ErrPodNotFitsHostPorts = newPredicateFailureError("PodFitsHostPorts", ...) + var ErrPodNotMatchHostName = newPredicateFailureError("HostName", "node(s) didn't match the requested hostname") + var ErrServiceAffinityViolated = newPredicateFailureError("CheckServiceAffinity", "node(s) didn't match service affinity") + var ErrTaintsTolerationsNotMatch = newPredicateFailureError("PodToleratesNodeTaints", "node(s) had taints that the pod didn't tolerate") + var ErrTopologySpreadConstraintsNotMatch = newPredicateFailureError("EvenPodsSpreadNotMatch", ...) + var ErrVolumeBindConflict = newPredicateFailureError("VolumeBindingNoMatch", ...) + var ErrVolumeNodeConflict = newPredicateFailureError("VolumeNodeAffinityConflict", "node(s) had volume node affinity conflict") + var ErrVolumeZoneConflict = newPredicateFailureError("NoVolumeZoneConflict", "node(s) had no available volume zone") + var GCEPDVolumeFilter = VolumeFilter + func AddUnsetLabelsToMap(aL map[string]string, labelsToAdd []string, labelSet labels.Set) + func CreateSelectorFromLabels(aL map[string]string) labels.Selector + func FilterPodsByNamespace(pods []*v1.Pod, ns string) []*v1.Pod + func FindLabelsInSet(labelsToKeep []string, selector labels.Set) map[string]string + func GetPodAffinityTerms(podAffinity *v1.PodAffinity) (terms []v1.PodAffinityTerm) + func GetPodAntiAffinityTerms(podAntiAffinity *v1.PodAntiAffinity) (terms []v1.PodAffinityTerm) + func GetResourceRequest(pod *v1.Pod) *schedulernodeinfo.Resource + func NodeLabelsMatchSpreadConstraints(nodeLabels map[string]string, constraints []v1.TopologySpreadConstraint) bool + func Ordering() []string + func PodMatchesNodeSelectorAndAffinityTerms(pod *v1.Pod, node *v1.Node) bool + func PodMatchesSpreadConstraint(podLabelSet labels.Set, constraint v1.TopologySpreadConstraint) (bool, error) + func RegisterPredicateMetadataProducer(predicateName string, precomp predicateMetadataProducer) + func RegisterPredicateMetadataProducerWithExtendedResourceOptions(ignoredExtendedResources sets.String) + func SetPredicatesOrderingDuringTest(value []string) func() + type CSIMaxVolumeLimitChecker struct + type CSINodeInfo interface + GetCSINodeInfo func(nodeName string) (*storagev1beta1.CSINode, error) + type CachedPersistentVolumeClaimInfo struct + func (c *CachedPersistentVolumeClaimInfo) GetPersistentVolumeClaimInfo(namespace string, name string) (*v1.PersistentVolumeClaim, error) + type CachedPersistentVolumeInfo struct + func (c *CachedPersistentVolumeInfo) GetPersistentVolumeInfo(pvID string) (*v1.PersistentVolume, error) + type CachedStorageClassInfo struct + func (c *CachedStorageClassInfo) GetStorageClassInfo(className string) (*storagev1.StorageClass, error) + type FailureReason struct + func NewFailureReason(msg string) *FailureReason + func (e *FailureReason) GetReason() string + type FakeCSINodeInfo storagev1beta1.CSINode + func (n FakeCSINodeInfo) GetCSINodeInfo(name string) (*storagev1beta1.CSINode, error) + type FakeNodeInfo v1.Node + func (n FakeNodeInfo) GetNodeInfo(nodeName string) (*v1.Node, error) + type FakeNodeListInfo []v1.Node + func (nodes FakeNodeListInfo) GetNodeInfo(nodeName string) (*v1.Node, error) + type FakePersistentVolumeClaimInfo []v1.PersistentVolumeClaim + func (pvcs FakePersistentVolumeClaimInfo) GetPersistentVolumeClaimInfo(namespace string, pvcID string) (*v1.PersistentVolumeClaim, error) + type FakePersistentVolumeInfo []v1.PersistentVolume + func (pvs FakePersistentVolumeInfo) GetPersistentVolumeInfo(pvID string) (*v1.PersistentVolume, error) + type FakeStorageClassInfo []storagev1.StorageClass + func (classes FakeStorageClassInfo) GetStorageClassInfo(name string) (*storagev1.StorageClass, error) + type FitPredicate func(pod *v1.Pod, meta PredicateMetadata, nodeInfo *schedulernodeinfo.NodeInfo) (bool, []PredicateFailureReason, error) + func NewCSIMaxVolumeLimitPredicate(csiNodeInfo CSINodeInfo, pvInfo PersistentVolumeInfo, ...) FitPredicate + func NewMaxPDVolumeCountPredicate(filterName string, csiNodeInfo CSINodeInfo, scInfo StorageClassInfo, ...) FitPredicate + func NewNodeLabelPredicate(labels []string, presence bool) FitPredicate + func NewPodAffinityPredicate(info NodeInfo, podLister algorithm.PodLister) FitPredicate + func NewServiceAffinityPredicate(podLister algorithm.PodLister, serviceLister algorithm.ServiceLister, ...) (FitPredicate, predicateMetadataProducer) + func NewVolumeBindingPredicate(binder *volumebinder.VolumeBinder) FitPredicate + func NewVolumeZonePredicate(pvInfo PersistentVolumeInfo, pvcInfo PersistentVolumeClaimInfo, ...) FitPredicate + type InsufficientResourceError struct + ResourceName v1.ResourceName + func NewInsufficientResourceError(resourceName v1.ResourceName, requested, used, capacity int64) *InsufficientResourceError + func (e *InsufficientResourceError) Error() string + func (e *InsufficientResourceError) GetInsufficientAmount() int64 + func (e *InsufficientResourceError) GetReason() string + type MaxPDVolumeCountChecker struct + type NodeInfo interface + GetNodeInfo func(nodeID string) (*v1.Node, error) + type NodeLabelChecker struct + func (n *NodeLabelChecker) CheckNodeLabelPresence(pod *v1.Pod, meta PredicateMetadata, nodeInfo *schedulernodeinfo.NodeInfo) (bool, []PredicateFailureReason, error) + type PersistentVolumeClaimInfo interface + GetPersistentVolumeClaimInfo func(namespace string, name string) (*v1.PersistentVolumeClaim, error) + type PersistentVolumeInfo interface + GetPersistentVolumeInfo func(pvID string) (*v1.PersistentVolume, error) + type PodAffinityChecker struct + func (c *PodAffinityChecker) InterPodAffinityMatches(pod *v1.Pod, meta PredicateMetadata, nodeInfo *schedulernodeinfo.NodeInfo) (bool, []PredicateFailureReason, error) + type PredicateFailureError struct + PredicateDesc string + PredicateName string + func (e *PredicateFailureError) Error() string + func (e *PredicateFailureError) GetReason() string + type PredicateFailureReason interface + GetReason func() string + func CheckNodeConditionPredicate(pod *v1.Pod, meta PredicateMetadata, nodeInfo *schedulernodeinfo.NodeInfo) (bool, []PredicateFailureReason, error) + func CheckNodeDiskPressurePredicate(pod *v1.Pod, meta PredicateMetadata, nodeInfo *schedulernodeinfo.NodeInfo) (bool, []PredicateFailureReason, error) + func CheckNodeMemoryPressurePredicate(pod *v1.Pod, meta PredicateMetadata, nodeInfo *schedulernodeinfo.NodeInfo) (bool, []PredicateFailureReason, error) + func CheckNodePIDPressurePredicate(pod *v1.Pod, meta PredicateMetadata, nodeInfo *schedulernodeinfo.NodeInfo) (bool, []PredicateFailureReason, error) + func CheckNodeUnschedulablePredicate(pod *v1.Pod, meta PredicateMetadata, nodeInfo *schedulernodeinfo.NodeInfo) (bool, []PredicateFailureReason, error) + func EssentialPredicates(pod *v1.Pod, meta PredicateMetadata, nodeInfo *schedulernodeinfo.NodeInfo) (bool, []PredicateFailureReason, error) + func EvenPodsSpreadPredicate(pod *v1.Pod, meta PredicateMetadata, nodeInfo *schedulernodeinfo.NodeInfo) (bool, []PredicateFailureReason, error) + func GeneralPredicates(pod *v1.Pod, meta PredicateMetadata, nodeInfo *schedulernodeinfo.NodeInfo) (bool, []PredicateFailureReason, error) + func NoDiskConflict(pod *v1.Pod, meta PredicateMetadata, nodeInfo *schedulernodeinfo.NodeInfo) (bool, []PredicateFailureReason, error) + func PodFitsHost(pod *v1.Pod, meta PredicateMetadata, nodeInfo *schedulernodeinfo.NodeInfo) (bool, []PredicateFailureReason, error) + func PodFitsHostPorts(pod *v1.Pod, meta PredicateMetadata, nodeInfo *schedulernodeinfo.NodeInfo) (bool, []PredicateFailureReason, error) + func PodFitsResources(pod *v1.Pod, meta PredicateMetadata, nodeInfo *schedulernodeinfo.NodeInfo) (bool, []PredicateFailureReason, error) + func PodMatchNodeSelector(pod *v1.Pod, meta PredicateMetadata, nodeInfo *schedulernodeinfo.NodeInfo) (bool, []PredicateFailureReason, error) + func PodToleratesNodeNoExecuteTaints(pod *v1.Pod, meta PredicateMetadata, nodeInfo *schedulernodeinfo.NodeInfo) (bool, []PredicateFailureReason, error) + func PodToleratesNodeTaints(pod *v1.Pod, meta PredicateMetadata, nodeInfo *schedulernodeinfo.NodeInfo) (bool, []PredicateFailureReason, error) + type PredicateMetadata interface + AddPod func(addedPod *v1.Pod, nodeInfo *schedulernodeinfo.NodeInfo) error + RemovePod func(deletedPod *v1.Pod, node *v1.Node) error + ShallowCopy func() PredicateMetadata + func EmptyPredicateMetadataProducer(pod *v1.Pod, nodeNameToInfo map[string]*schedulernodeinfo.NodeInfo) PredicateMetadata + type PredicateMetadataFactory struct + func (pfactory *PredicateMetadataFactory) GetMetadata(pod *v1.Pod, nodeNameToInfoMap map[string]*schedulernodeinfo.NodeInfo) PredicateMetadata + type PredicateMetadataProducer func(pod *v1.Pod, nodeNameToInfo map[string]*schedulernodeinfo.NodeInfo) PredicateMetadata + func NewPredicateMetadataFactory(podLister algorithm.PodLister) PredicateMetadataProducer + type ServiceAffinity struct + type StorageClassInfo interface + GetStorageClassInfo func(className string) (*storagev1.StorageClass, error) + type VolumeBindingChecker struct + type VolumeFilter struct + FilterPersistentVolume func(pv *v1.PersistentVolume) (id string, relevant bool) + FilterVolume func(vol *v1.Volume) (id string, relevant bool) + IsMigrated func(csiNode *storagev1beta1.CSINode) bool + MatchProvisioner func(sc *storagev1.StorageClass) (relevant bool) + type VolumeZoneChecker struct