Documentation ¶
Index ¶
Constants ¶
View Source
const ( // SchedulerSubsystem - subsystem name used by scheduler SchedulerSubsystem = "scheduler" // SchedulingLatencyName - scheduler latency metric name SchedulingLatencyName = "scheduling_duration_seconds" // DeprecatedSchedulingLatencyName - scheduler latency metric name which is deprecated DeprecatedSchedulingLatencyName = "scheduling_latency_seconds" // OperationLabel - operation label name OperationLabel = "operation" // PredicateEvaluation - predicate evaluation operation label value PredicateEvaluation = "predicate_evaluation" // PriorityEvaluation - priority evaluation operation label value PriorityEvaluation = "priority_evaluation" // PreemptionEvaluation - preemption evaluation operation label value (occurs in case of scheduling fitError). PreemptionEvaluation = "preemption_evaluation" // Binding - binding operation label value Binding = "binding" // Pool metrics labels PoolResourceCpu = "cpu" PoolResourceGpu = "gpu" PoolResourceMem = "memory" PoolResourceEStorage = "ephemeral-storage" PoolResourceNode = "node" PoolResourcePods = "pods" PoolDetailTypeCapacity = "capacity" PoolDetailTypeAllocatable = "allocatable" PoolDetailTypeUsed = "used" PoolDetailTypePending = "pending" PoolFeaturePreemption = "preemption" PoolFeatureBorrowing = "borrowing" PoolFeatureSharing = "sharing" // Pool Queue metrics labels PoolQueueTypeActive = "active" PoolQueueTypeUnschedule = "unschedule" PoolQueueTypeBackoff = "backoff" )
Variables ¶
View Source
var ( PoolDetailResources = [...]string{PoolResourceCpu, PoolResourceGpu, PoolResourceMem, PoolResourceEStorage, PoolResourceNode, PoolResourcePods} PoolDetailTypes = [...]string{PoolDetailTypeCapacity, PoolDetailTypeAllocatable, PoolDetailTypeUsed, PoolDetailTypeShared, PoolDetailTypePending} PoolDetailFeatures = [...]string{PoolFeaturePreemption, PoolFeatureBorrowing, PoolFeatureSharing} )
View Source
var ( // PodScheduleSuccesses counts how many pods were scheduled. PodScheduleSuccesses = scheduleAttempts.With(prometheus.Labels{"result": "scheduled"}) // PodScheduleFailures counts how many pods could not be scheduled. PodScheduleFailures = scheduleAttempts.With(prometheus.Labels{"result": "unschedulable"}) // PodScheduleErrors counts how many pods could not be scheduled due to a scheduler error. PodScheduleErrors = scheduleAttempts.With(prometheus.Labels{"result": "error"}) SchedulingLatency = prometheus.NewSummaryVec( prometheus.SummaryOpts{ Subsystem: SchedulerSubsystem, Name: SchedulingLatencyName, Help: "Scheduling latency in seconds split by sub-parts of the scheduling operation", MaxAge: 5 * time.Hour, }, []string{OperationLabel}, ) DeprecatedSchedulingLatency = prometheus.NewSummaryVec( prometheus.SummaryOpts{ Subsystem: SchedulerSubsystem, Name: DeprecatedSchedulingLatencyName, Help: "(Deprecated) Scheduling latency in seconds split by sub-parts of the scheduling operation", MaxAge: 5 * time.Hour, }, []string{OperationLabel}, ) E2eSchedulingLatency = prometheus.NewHistogram( prometheus.HistogramOpts{ Subsystem: SchedulerSubsystem, Name: "e2e_scheduling_duration_seconds", Help: "E2e scheduling latency in seconds (scheduling algorithm + binding)", Buckets: prometheus.ExponentialBuckets(0.001, 2, 15), }, ) DeprecatedE2eSchedulingLatency = prometheus.NewHistogram( prometheus.HistogramOpts{ Subsystem: SchedulerSubsystem, Name: "e2e_scheduling_latency_microseconds", Help: "(Deprecated) E2e scheduling latency in microseconds (scheduling algorithm + binding)", Buckets: prometheus.ExponentialBuckets(1000, 2, 15), }, ) SchedulingAlgorithmLatency = prometheus.NewHistogram( prometheus.HistogramOpts{ Subsystem: SchedulerSubsystem, Name: "scheduling_algorithm_duration_seconds", Help: "Scheduling algorithm latency in seconds", Buckets: prometheus.ExponentialBuckets(0.001, 2, 15), }, ) DeprecatedSchedulingAlgorithmLatency = prometheus.NewHistogram( prometheus.HistogramOpts{ Subsystem: SchedulerSubsystem, Name: "scheduling_algorithm_latency_microseconds", Help: "(Deprecated) Scheduling algorithm latency in microseconds", Buckets: prometheus.ExponentialBuckets(1000, 2, 15), }, ) SchedulingAlgorithmPredicateEvaluationDuration = prometheus.NewHistogram( prometheus.HistogramOpts{ Subsystem: SchedulerSubsystem, Name: "scheduling_algorithm_predicate_evaluation_seconds", Help: "Scheduling algorithm predicate evaluation duration in seconds", Buckets: prometheus.ExponentialBuckets(0.001, 2, 15), }, ) DeprecatedSchedulingAlgorithmPredicateEvaluationDuration = prometheus.NewHistogram( prometheus.HistogramOpts{ Subsystem: SchedulerSubsystem, Name: "scheduling_algorithm_predicate_evaluation", Help: "(Deprecated) Scheduling algorithm predicate evaluation duration in microseconds", Buckets: prometheus.ExponentialBuckets(1000, 2, 15), }, ) SchedulingAlgorithmPriorityEvaluationDuration = prometheus.NewHistogram( prometheus.HistogramOpts{ Subsystem: SchedulerSubsystem, Name: "scheduling_algorithm_priority_evaluation_seconds", Help: "Scheduling algorithm priority evaluation duration in seconds", Buckets: prometheus.ExponentialBuckets(0.001, 2, 15), }, ) DeprecatedSchedulingAlgorithmPriorityEvaluationDuration = prometheus.NewHistogram( prometheus.HistogramOpts{ Subsystem: SchedulerSubsystem, Name: "scheduling_algorithm_priority_evaluation", Help: "(Deprecated) Scheduling algorithm priority evaluation duration in microseconds", Buckets: prometheus.ExponentialBuckets(1000, 2, 15), }, ) SchedulingAlgorithmPremptionEvaluationDuration = prometheus.NewHistogram( prometheus.HistogramOpts{ Subsystem: SchedulerSubsystem, Name: "scheduling_algorithm_preemption_evaluation_seconds", Help: "Scheduling algorithm preemption evaluation duration in seconds", Buckets: prometheus.ExponentialBuckets(0.001, 2, 15), }, ) DeprecatedSchedulingAlgorithmPremptionEvaluationDuration = prometheus.NewHistogram( prometheus.HistogramOpts{ Subsystem: SchedulerSubsystem, Name: "scheduling_algorithm_preemption_evaluation", Help: "(Deprecated) Scheduling algorithm preemption evaluation duration in microseconds", Buckets: prometheus.ExponentialBuckets(1000, 2, 15), }, ) BindingLatency = prometheus.NewHistogram( prometheus.HistogramOpts{ Subsystem: SchedulerSubsystem, Name: "binding_duration_seconds", Help: "Binding latency in seconds", Buckets: prometheus.ExponentialBuckets(0.001, 2, 15), }, ) DeprecatedBindingLatency = prometheus.NewHistogram( prometheus.HistogramOpts{ Subsystem: SchedulerSubsystem, Name: "binding_latency_microseconds", Help: "(Deprecated) Binding latency in microseconds", Buckets: prometheus.ExponentialBuckets(1000, 2, 15), }, ) PreemptionVictims = prometheus.NewGauge( prometheus.GaugeOpts{ Subsystem: SchedulerSubsystem, Name: "pod_preemption_victims", Help: "Number of selected preemption victims", }) PreemptionAttempts = prometheus.NewCounter( prometheus.CounterOpts{ Subsystem: SchedulerSubsystem, Name: "total_preemption_attempts", Help: "Total preemption attempts in the cluster till now", }) PoolResourceDetails = prometheus.NewGaugeVec( prometheus.GaugeOpts{ Subsystem: SchedulerSubsystem, Name: "pool_resource_details", Help: "Pool resource details", }, []string{"pool", "resource", "type"}) PoolFeatures = prometheus.NewGaugeVec( prometheus.GaugeOpts{ Subsystem: SchedulerSubsystem, Name: "pool_features", Help: "Pool scheduling features", }, []string{"pool", "feature"}) PoolNodes = prometheus.NewGaugeVec( prometheus.GaugeOpts{ Subsystem: SchedulerSubsystem, Name: "pool_nodes", Help: "All nodes belong to pool", }, []string{"pool", "node"}) PoolQueueDetails = prometheus.NewGaugeVec( prometheus.GaugeOpts{ Subsystem: SchedulerSubsystem, Name: "pool_queue_details", Help: "Pool Queue details", }, []string{"pool", "type"}) PoolQueuePods = prometheus.NewGaugeVec( prometheus.GaugeOpts{ Subsystem: SchedulerSubsystem, Name: "pool_queue_pods", Help: "Pool queue pods status", }, []string{"pool", "pod_name", "schedule_status"}) )
All the histogram based metrics have 1ms as size for the smallest bucket.
Functions ¶
func DeletePoolLabels ¶ added in v0.2.4
func DeletePoolLabels(poolName string)
DeletePoolLabels deletes the labels of pool
func SinceInMicroseconds ¶
SinceInMicroseconds gets the time since the specified start in microseconds.
func SinceInSeconds ¶
SinceInSeconds gets the time since the specified start in seconds.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.