Documentation
¶
Index ¶
- func GetAllocationByQueue(pods []*v1.Pod) map[string]common.ComputeResources
- type ClusterAvailableCapacityReport
- type ClusterUtilisationService
- func (clusterUtilisationService *ClusterUtilisationService) GetAllNodeGroupAllocationInfo() ([]*NodeGroupAllocationInfo, error)
- func (clusterUtilisationService *ClusterUtilisationService) GetAvailableClusterCapacity() (*ClusterAvailableCapacityReport, error)
- func (clusterUtilisationService *ClusterUtilisationService) ReportClusterUtilisation()
- type KubeletPodUtilisationService
- type NodeGroupAllocationInfo
- type PodUtilisationService
- type UtilisationEventReporter
- type UtilisationService
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetAllocationByQueue ¶
func GetAllocationByQueue(pods []*v1.Pod) map[string]common.ComputeResources
Types ¶
type ClusterAvailableCapacityReport ¶
type ClusterAvailableCapacityReport struct { AvailableCapacity *common.ComputeResources Nodes []api.NodeInfo }
type ClusterUtilisationService ¶
type ClusterUtilisationService struct {
// contains filtered or unexported fields
}
func NewClusterUtilisationService ¶
func NewClusterUtilisationService( clusterContext context.ClusterContext, queueUtilisationService PodUtilisationService, nodeInfoService node.NodeInfoService, usageClient api.UsageClient, trackedNodeLabels []string) *ClusterUtilisationService
func (*ClusterUtilisationService) GetAllNodeGroupAllocationInfo ¶ added in v0.2.4
func (clusterUtilisationService *ClusterUtilisationService) GetAllNodeGroupAllocationInfo() ([]*NodeGroupAllocationInfo, error)
GetAllNodeGroupAllocationInfo returns allocation information for all nodes on the cluster. NodeGroupCapacity is the total capacity of a nodegroup (including cordoned nodes) NodeGroupAllocatableCapacity is the capacity available to armada on schedulable nodes NodeGroupCordonedCapacity is the resource in use by armada on unschedulable nodes
func (*ClusterUtilisationService) GetAvailableClusterCapacity ¶
func (clusterUtilisationService *ClusterUtilisationService) GetAvailableClusterCapacity() (*ClusterAvailableCapacityReport, error)
func (*ClusterUtilisationService) ReportClusterUtilisation ¶
func (clusterUtilisationService *ClusterUtilisationService) ReportClusterUtilisation()
type KubeletPodUtilisationService ¶ added in v0.2.6
type KubeletPodUtilisationService struct {
// contains filtered or unexported fields
}
func NewMetricsServerQueueUtilisationService ¶
func NewMetricsServerQueueUtilisationService(clusterContext context.ClusterContext, nodeInfoService node.NodeInfoService) *KubeletPodUtilisationService
func (*KubeletPodUtilisationService) GetPodUtilisation ¶ added in v0.2.6
func (q *KubeletPodUtilisationService) GetPodUtilisation(pod *v1.Pod) *domain.UtilisationData
func (*KubeletPodUtilisationService) RefreshUtilisationData ¶ added in v0.2.6
func (q *KubeletPodUtilisationService) RefreshUtilisationData()
type NodeGroupAllocationInfo ¶ added in v0.2.4
type NodeGroupAllocationInfo struct { NodeType *api.NodeTypeIdentifier Nodes []*v1.Node NodeGroupCapacity common.ComputeResources NodeGroupAllocatableCapacity common.ComputeResources NodeGroupCordonedCapacity common.ComputeResources }
type PodUtilisationService ¶
type PodUtilisationService interface {
GetPodUtilisation(pod *v1.Pod) *domain.UtilisationData
}
type UtilisationEventReporter ¶
type UtilisationEventReporter struct {
// contains filtered or unexported fields
}
func NewUtilisationEventReporter ¶
func NewUtilisationEventReporter( clusterContext clusterContext.ClusterContext, podUtilisation PodUtilisationService, eventReporter reporter.EventReporter, reportingPeriod time.Duration, ) *UtilisationEventReporter
func (*UtilisationEventReporter) ReportUtilisationEvents ¶
func (r *UtilisationEventReporter) ReportUtilisationEvents()
type UtilisationService ¶
type UtilisationService interface { GetAvailableClusterCapacity() (*ClusterAvailableCapacityReport, error) GetAllNodeGroupAllocationInfo() ([]*NodeGroupAllocationInfo, error) }
Click to show internal directories.
Click to hide internal directories.