util

package
v1.17.4-beta.0 Latest Latest
Warning

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

Go to latest
Published: Feb 11, 2020 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// DefaultMilliCPURequest defines default milli cpu request number.
	DefaultMilliCPURequest int64 = 100 // 0.1 core
	// DefaultMemoryRequest defines default memory request size.
	DefaultMemoryRequest int64 = 200 * 1024 * 1024 // 200 MB
)

For each of these resources, a pod that doesn't request the resource explicitly will be treated as having requested the amount indicated below, for the purpose of computing priority only. This ensures that when scheduling zero-request pods, such pods will not all be scheduled to the machine with the smallest in-use request, and that when scheduling regular pods, such pods will not see zero-request pods as consuming no resources whatsoever. We chose these values to be similar to the resources that we give to cluster addon pods (#10653). But they are pretty arbitrary. As described in #11713, we use request instead of limit to deal with resource requirements.

Variables

This section is empty.

Functions

func GetNamespacesFromPodAffinityTerm

func GetNamespacesFromPodAffinityTerm(pod *v1.Pod, podAffinityTerm *v1.PodAffinityTerm) sets.String

GetNamespacesFromPodAffinityTerm returns a set of names according to the namespaces indicated in podAffinityTerm. If namespaces is empty it considers the given pod's namespace.

func GetNonzeroRequestForResource added in v1.16.0

func GetNonzeroRequestForResource(resource v1.ResourceName, requests *v1.ResourceList) int64

GetNonzeroRequestForResource returns the default resource request if none is found or what is provided on the request.

func GetNonzeroRequests

func GetNonzeroRequests(requests *v1.ResourceList) (int64, int64)

GetNonzeroRequests returns the default cpu and memory resource request if none is found or what is provided on the request.

func NodesHaveSameTopologyKey

func NodesHaveSameTopologyKey(nodeA, nodeB *v1.Node, topologyKey string) bool

NodesHaveSameTopologyKey checks if nodeA and nodeB have same label value with given topologyKey as label key. Returns false if topologyKey is empty.

func PodMatchesTermsNamespaceAndSelector

func PodMatchesTermsNamespaceAndSelector(pod *v1.Pod, namespaces sets.String, selector labels.Selector) bool

PodMatchesTermsNamespaceAndSelector returns true if the given <pod> matches the namespace and selector defined by <affinityPod>`s <term>.

Types

type Topologies

type Topologies struct {
	DefaultKeys []string
}

Topologies contains topologies information of nodes.

func (*Topologies) NodesHaveSameTopologyKey

func (tps *Topologies) NodesHaveSameTopologyKey(nodeA, nodeB *v1.Node, topologyKey string) bool

NodesHaveSameTopologyKey checks if nodeA and nodeB have same label value with given topologyKey as label key.

Jump to

Keyboard shortcuts

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