The Kubernetes scheduler is a control plane process that assigns Pods to the nodes. The scheduler determines which nodes are valid placements for each Pod in the scheduling queue according to the constraints and available resources. The scheduler then ranks each valid node and binds the Pod to a suitable node. Multiple different schedulers may be used within a cluster. By default, the kube-scheduler runs on port 10251 and exposes the metrics of /metrics in openMetric format. The Agent hits the endpoint with the kubernetes client and fetches the metrics automatically. Therefore, no extra configuration or detection logic is required.

Validate

Go to Resources under the Infrastructure tab to check if your resources are onboarded and the metrics are collected.

Metrics

OpsRamp MetricMetric Display NameUnitDescription
kube_scheduler_binding_duration_secondsAverage Binding LatencysecondsAverage binding latency
kube_scheduler_binding_latency_microsecondsAverage Binding Latency In Micro secondsmicrosecondsAverage binding latency
kube_scheduler_cache_lookupsEquiv Cache Lookups TotalTotal number of equivalence cache lookups, by whether or not a cache entry was found
kube_scheduler_client_http_requestsClient HTTP RequestsNumber of HTTP requests, partitioned by status code, method, and host
kube_scheduler_http_requests_durationRest Client Request Latency SecondssecondsRequest latency broken down by verb and URL
kube_scheduler_go_gc_duration_secondsAverage GC Invocation DurationAverage of the GC invocation duration
kube_scheduler_go_gc_duration_seconds_quantileGC Invocation Duration QuantilesGC invocation duration Quantiles
kube_scheduler_goroutinesGo GoroutinesNumber of goroutines that currently exist
kube_scheduler_process_max_fdsMax Open File DescriptorsMaximum number of open file descriptors
kube_scheduler_process_open_fdsOpen File DescriptorsNumber of open file descriptors
kube_scheduler_pod_preemption_victimsAverage Selected Preemption VictimsAverage number of selected preemption victims
kube_scheduler_pod_preemption_attemptsPreemption Attempts RateRate of preemption attempts in the cluster since last pool
kube_scheduler_schedule_attemptsSchedule Attempts RateRate of number of attempts to schedule pods, by the result; 'unschedulable' means a pod could not be scheduled, while 'error' means an internal scheduler problem
kube_scheduler_scheduling_algorithm_duration_secondsAverage Scheduling LatencySecondsAverage scheduling algorithm latency
kube_scheduler_scheduling_algorithm_latency_microsecondsAverage Scheduling Latency Micro secondsmicrosecondsAverage scheduling algorithm latency
kube_scheduler_scheduling_algorithm_predicate_evaluation_durationAverage Scheduling Algorithm Predicate Evaluation DurationsecondsAverage scheduling algorithm predicate evaluation duration
kube_scheduler_scheduling_algorithm_preemption_evaluation_durationAverage Scheduling Algorithm Preemption Evaluation DurationsecondsAverage Scheduling algorithm preemption evaluation duration
kube_scheduler_scheduling_algorithm_priority_evaluation_durationAverage Scheduling Algorithm Priority Evaluation DurationsecondsAverage Scheduling algorithm priority evaluation duration
kube_scheduler_e2e_scheduling_durationAverage E2e Scheduling LatencysecondsAverage E2e scheduling latency (scheduling algorithm + binding)
kube_scheduler_scheduling_duration_secondsAverage Scheduling latency Split By Sub-PartssecondsAverage Scheduling latency split by sub-parts of the scheduling operation
kube_scheduler_scheduling_duration_quantileQuantile Scheduling latency Split By Sub-PartssecondsQuantile of Scheduling latency split by sub-parts of the scheduling operation
kube_scheduler_go_threadsOS Threads CountNumber of OS threads created
kube_scheduler_volume_scheduling_durationAverage Volume Scheduling Stage LatencyAverage volume scheduling stage latency