Documentation ¶
Index ¶
- type SchedulerCache
- func (cache *SchedulerCache) AddNode(node *v1.Node)
- func (cache *SchedulerCache) AddPod(pod *v1.Pod) error
- func (cache *SchedulerCache) ArePodVolumesAllBound(podKey string) bool
- func (cache *SchedulerCache) AssumePod(pod *v1.Pod, allBound bool) error
- func (cache *SchedulerCache) ForgetPod(pod *v1.Pod) error
- func (cache *SchedulerCache) GetNode(name string) *framework.NodeInfo
- func (cache *SchedulerCache) GetNodeInfo(nodeName string) (*v1.Node, error)
- func (cache *SchedulerCache) GetNodesInfoMap() map[string]*framework.NodeInfo
- func (cache *SchedulerCache) GetNodesInfoMapCopy() map[string]*framework.NodeInfo
- func (cache *SchedulerCache) GetPersistentVolumeClaimInfo(nameSpace, name string) (*v1.PersistentVolumeClaim, error)
- func (cache *SchedulerCache) GetPersistentVolumeInfo(name string) (*v1.PersistentVolume, error)
- func (cache *SchedulerCache) GetPod(uid string) (*v1.Pod, bool)
- func (cache *SchedulerCache) GetStorageClassInfo(className string) (*storageV1.StorageClass, error)
- func (cache *SchedulerCache) List(selector labels.Selector) ([]*v1.Pod, error)
- func (cache *SchedulerCache) RemoveNode(node *v1.Node) error
- func (cache *SchedulerCache) RemovePod(pod *v1.Pod) error
- func (cache *SchedulerCache) UpdateNode(oldNode, newNode *v1.Node) error
- func (cache *SchedulerCache) UpdatePod(oldPod, newPod *v1.Pod) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type SchedulerCache ¶
type SchedulerCache struct {
// contains filtered or unexported fields
}
scheduler cache maintains some critical information about nodes and pods used for scheduling nodes are cached in the form of de-scheduler nodeInfo, instead of re-creating all nodes info from scratch, we replicate nodes info from de-scheduler, in order to re-use predicates functions.
func NewSchedulerCache ¶
func NewSchedulerCache(clients *client.Clients) *SchedulerCache
func (*SchedulerCache) AddNode ¶
func (cache *SchedulerCache) AddNode(node *v1.Node)
func (*SchedulerCache) AddPod ¶
func (cache *SchedulerCache) AddPod(pod *v1.Pod) error
cache pod in the scheduler internal map, so it can be fast retrieved by UID, if pod is assigned to a node, update the cached nodes map too so that scheduler knows which pod is running before pod is bound to that node.
func (*SchedulerCache) ArePodVolumesAllBound ¶
func (cache *SchedulerCache) ArePodVolumesAllBound(podKey string) bool
func (*SchedulerCache) AssumePod ¶
func (cache *SchedulerCache) AssumePod(pod *v1.Pod, allBound bool) error
func (*SchedulerCache) GetNode ¶
func (cache *SchedulerCache) GetNode(name string) *framework.NodeInfo
func (*SchedulerCache) GetNodeInfo ¶
func (cache *SchedulerCache) GetNodeInfo(nodeName string) (*v1.Node, error)
Implement scheduler/algorithm/predicates/predicates.go#NodeInfo interface
func (*SchedulerCache) GetNodesInfoMap ¶
func (cache *SchedulerCache) GetNodesInfoMap() map[string]*framework.NodeInfo
func (*SchedulerCache) GetNodesInfoMapCopy ¶ added in v0.12.0
func (cache *SchedulerCache) GetNodesInfoMapCopy() map[string]*framework.NodeInfo
func (*SchedulerCache) GetPersistentVolumeClaimInfo ¶
func (cache *SchedulerCache) GetPersistentVolumeClaimInfo(nameSpace, name string) (*v1.PersistentVolumeClaim, error)
Implement scheduler/algorithm/predicates/predicates.go#PersistentVolumeClaimInfo interface
func (*SchedulerCache) GetPersistentVolumeInfo ¶
func (cache *SchedulerCache) GetPersistentVolumeInfo(name string) (*v1.PersistentVolume, error)
Implement scheduler/algorithm/predicates/predicates.go#PersistentVolumeClaimInfo interface
func (*SchedulerCache) GetStorageClassInfo ¶
func (cache *SchedulerCache) GetStorageClassInfo(className string) (*storageV1.StorageClass, error)
Implement scheduler/algorithm/predicates/predicates.go#StorageClassInfo interface
func (*SchedulerCache) RemoveNode ¶
func (cache *SchedulerCache) RemoveNode(node *v1.Node) error
func (*SchedulerCache) UpdateNode ¶
func (cache *SchedulerCache) UpdateNode(oldNode, newNode *v1.Node) error