Documentation

Index

Constants

View Source
const DefaultMemoryRequest int64 = 200 * 1024 * 1024 // 200 MB

    DefaultMemoryRequest defines default memory request size.

    View Source
    const DefaultMilliCPURequest int64 = 100 // 0.1 core
    

      DefaultMilliCPURequest defines default milli cpu request number.

      Variables

      This section is empty.

      Functions

      func GetControllerRef

      func GetControllerRef(pod *v1.Pod) *metav1.OwnerReference

        GetControllerRef gets pod's owner controller reference from a pod object.

        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 GetNonzeroRequests

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

            GetNonzeroRequests returns the default resource request if none is found or what is provided on the request TODO: Consider setting default as a fixed fraction of machine capacity (take "capacity v1.ResourceList" as an additional argument here) rather than using constants

            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.