kubernetesk8s.io/kubernetes/pkg/scheduler/nodeinfo/snapshot Index | Files

package snapshot

import "k8s.io/kubernetes/pkg/scheduler/nodeinfo/snapshot"

Index

Functions

func CreateNodeInfoMap

func CreateNodeInfoMap(pods []*v1.Pod, nodes []*v1.Node) map[string]*schedulernodeinfo.NodeInfo

CreateNodeInfoMap obtains a list of pods and pivots that list into a map where the keys are node names and the values are the aggregated information for that node.

Types

type Snapshot

type Snapshot struct {
	// NodeInfoMap a map of node name to a snapshot of its NodeInfo.
	NodeInfoMap map[string]*schedulernodeinfo.NodeInfo
	// NodeInfoList is the list of nodes as ordered in the cache's nodeTree.
	NodeInfoList []*schedulernodeinfo.NodeInfo
	// HavePodsWithAffinityNodeInfoList is the list of nodes with at least one pod declaring affinity terms.
	HavePodsWithAffinityNodeInfoList []*schedulernodeinfo.NodeInfo
	Generation                       int64
}

Snapshot is a snapshot of cache NodeInfo and NodeTree order. The scheduler takes a snapshot at the beginning of each scheduling cycle and uses it for its operations in that cycle.

func NewEmptySnapshot

func NewEmptySnapshot() *Snapshot

NewEmptySnapshot initializes a Snapshot struct and returns it.

func NewSnapshot

func NewSnapshot(nodeInfoMap map[string]*schedulernodeinfo.NodeInfo) *Snapshot

NewSnapshot initializes a Snapshot struct and returns it.

func (*Snapshot) ListNodes

func (s *Snapshot) ListNodes() []*v1.Node

ListNodes returns the list of nodes in the snapshot.

func (*Snapshot) NodeInfos

func (s *Snapshot) NodeInfos() schedulerlisters.NodeInfoLister

NodeInfos returns a NodeInfoLister.

func (*Snapshot) Pods

Pods returns a PodLister

Source Files

snapshot.go

Version
v1.17.14
Published
Nov 11, 2020
Platform
js/wasm
Imports
6 packages
Last checked
2 minutes ago

Tools for package owners.