Documentation ¶
Index ¶
Constants ¶
View Source
const (
// Namespace prefix for group resources.
DeviceGroupPrefix = "resource/group"
)
Variables ¶
This section is empty.
Functions ¶
func AddGroupResource ¶
func AddGroupResource(list ResourceList, key string, val int64)
Types ¶
type ContainerInfo ¶
type ContainerInfo struct { KubeRequests ResourceList `json:"-"` // requests being handled by kubernetes core - only needed here for resource translation Requests ResourceList `json:"requests,omitempty"` // requests specified in annotations in the pod spec DevRequests ResourceList `json:"devrequests,omitempty"` // requests after translation - these are used by scheduler to schedule AllocateFrom ResourceLocation `json:"allocatefrom,omitempty"` // only valid for extended resources being advertised here Scorer ResourceScorer `json:"scorer,omitempty"` // scorer function specified in pod specificiation annotations }
func FillContainerInfo ¶
func FillContainerInfo(fill *ContainerInfo) *ContainerInfo
func NewContainerInfo ¶
func NewContainerInfo() *ContainerInfo
type NodeInfo ¶
type NodeInfo struct { Name string `json:"name,omitempty"` Capacity ResourceList `json:"capacity,omitempty"` Allocatable ResourceList `json:"allocatable,omitempty"` // capacity minus reserverd Used ResourceList `json:"used,omitempty"` // being used by pods, must be less than allocatable Scorer ResourceScorer `json:"scorer,omitempty"` KubeCap ResourceList `json:"-"` // capacity patched into extended resources directly -- stuff default scheduler takes care of KubeAlloc ResourceList `json:"-"` // stuff default scheduler takes care of }
NodeInfo only holds resources being advertised by the device advertisers through annotations
func NewNodeInfo ¶
func NewNodeInfo() *NodeInfo
func NewNodeInfoWithName ¶
type PodInfo ¶
type PodInfo struct { Name string `json:"podname,omitempty"` NodeName string `json:"nodename,omitempty"` // the node for which DevRequests and AllocateFrom on ContainerInfo are valid, the node for which PodInfo has been customized Requests ResourceList `json:"requests,omitempty"` // pod level requests InitContainers map[string]ContainerInfo `json:"initcontainer,omitempty"` RunningContainers map[string]ContainerInfo `json:"runningcontainer,omitempty"` }
func NewPodInfo ¶
func NewPodInfo() *PodInfo
func (*PodInfo) GetContainerInPod ¶
func (p *PodInfo) GetContainerInPod(name string) *ContainerInfo
type ResourceLocation ¶
type ResourceLocation map[ResourceName]ResourceName
ResourceLocation is a set of (resource name, resource location on node) pairs.
type ResourceName ¶
type ResourceName string
type ResourceScorer ¶
type ResourceScorer map[ResourceName]int32
ResourceScorer is a set of (resource name, scorer) pairs.
Click to show internal directories.
Click to hide internal directories.