Documentation ¶
Index ¶
- Constants
- func GetV1Client(socket string, connectionTimeout time.Duration, maxMsgSize int) (v1.PodResourcesListerClient, *grpc.ClientConn, error)
- func GetV1alpha1Client(socket string, connectionTimeout time.Duration, maxMsgSize int) (v1alpha1.PodResourcesListerClient, *grpc.ClientConn, error)
- func NewV1PodResourcesServer(providers PodResourcesProviders) podresourcesv1.PodResourcesListerServer
- func NewV1alpha1PodResourcesServer(providers PodResourcesProviders) v1alpha1.PodResourcesListerServer
- type CPUsProvider
- type DevicesProvider
- type DynamicResourcesProvider
- type MemoryProvider
- type PodResourcesProviders
- type PodsProvider
Constants ¶
View Source
const ( // Socket is the name of the podresources server socket Socket = "kubelet" // DefaultQPS is determined by empirically reviewing known consumers of the API. // It's at least unlikely that there is a legitimate need to query podresources // more than 100 times per second, the other subsystems are not guaranteed to react // so fast in the first place. DefaultQPS = 100 // DefaultBurstTokens is determined by empirically reviewing known consumers of the API. // See the documentation of DefaultQPS, same caveats apply. DefaultBurstTokens = 10 )
Variables ¶
This section is empty.
Functions ¶
func GetV1Client ¶ added in v1.20.0
func GetV1Client(socket string, connectionTimeout time.Duration, maxMsgSize int) (v1.PodResourcesListerClient, *grpc.ClientConn, error)
GetV1Client returns a client for the PodResourcesLister grpc service
func GetV1alpha1Client ¶ added in v1.20.0
func GetV1alpha1Client(socket string, connectionTimeout time.Duration, maxMsgSize int) (v1alpha1.PodResourcesListerClient, *grpc.ClientConn, error)
GetV1alpha1Client returns a client for the PodResourcesLister grpc service Note: This is deprecated
func NewV1PodResourcesServer ¶ added in v1.20.0
func NewV1PodResourcesServer(providers PodResourcesProviders) podresourcesv1.PodResourcesListerServer
NewV1PodResourcesServer returns a PodResourcesListerServer which lists pods provided by the PodsProvider with device information provided by the DevicesProvider
func NewV1alpha1PodResourcesServer ¶ added in v1.20.0
func NewV1alpha1PodResourcesServer(providers PodResourcesProviders) v1alpha1.PodResourcesListerServer
NewV1alpha1PodResourcesServer returns a PodResourcesListerServer which lists pods provided by the PodsProvider with device information provided by the DevicesProvider
Types ¶
type CPUsProvider ¶ added in v1.20.0
type CPUsProvider interface { // GetCPUs returns information about the cpus assigned to pods and containers GetCPUs(podUID, containerName string) []int64 // GetAllocatableCPUs returns the allocatable (not allocated) CPUs GetAllocatableCPUs() []int64 }
CPUsProvider knows how to provide the cpus used by the given container
type DevicesProvider ¶
type DevicesProvider interface { // UpdateAllocatedDevices frees any Devices that are bound to terminated pods. UpdateAllocatedDevices() // GetDevices returns information about the devices assigned to pods and containers GetDevices(podUID, containerName string) []*podresourcesapi.ContainerDevices // GetAllocatableDevices returns information about all the devices known to the manager GetAllocatableDevices() []*podresourcesapi.ContainerDevices }
DevicesProvider knows how to provide the devices used by the given container
type DynamicResourcesProvider ¶ added in v1.27.0
type DynamicResourcesProvider interface { // GetDynamicResources returns information about dynamic resources assigned to pods and containers GetDynamicResources(pod *v1.Pod, container *v1.Container) []*podresourcesapi.DynamicResource }
type MemoryProvider ¶ added in v1.22.0
type MemoryProvider interface { // GetMemory returns information about the memory assigned to containers GetMemory(podUID, containerName string) []*podresourcesapi.ContainerMemory // GetAllocatableMemory returns the allocatable memory from the node GetAllocatableMemory() []*podresourcesapi.ContainerMemory }
type PodResourcesProviders ¶ added in v1.27.0
type PodResourcesProviders struct { Pods PodsProvider Devices DevicesProvider Cpus CPUsProvider Memory MemoryProvider DynamicResources DynamicResourcesProvider }
Source Files ¶
Click to show internal directories.
Click to hide internal directories.