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 NameUnit
kube_scheduler_binding_duration_seconds

Average binding latency
Average Binding Latencyseconds
kube_scheduler_binding_latency_microseconds

Average binding latency
Average Binding Latency In Micro secondsmicroseconds
kube_scheduler_cache_lookups

Total number of equivalence cache lookups, by whether or not a cache entry was found
Equiv Cache Lookups Total
kube_scheduler_client_http_requests

Number of HTTP requests, partitioned by status code, method, and host
Client HTTP Requests
kube_scheduler_http_requests_duration

Request latency broken down by verb and URL
Rest Client Request Latency Secondsseconds
kube_scheduler_go_gc_duration_seconds

Average of the GC invocation duration
Average GC Invocation Duration
kube_scheduler_go_gc_duration_seconds_quantile

GC invocation duration Quantiles
GC Invocation Duration Quantiles
kube_scheduler_goroutines

Number of goroutines that currently exist
Go Goroutines
kube_scheduler_process_max_fds

Maximum number of open file descriptors
Max Open File Descriptors
kube_scheduler_process_open_fds

Number of open file descriptors
Open File Descriptors
kube_scheduler_pod_preemption_victims

Average number of selected preemption victims
Average Selected Preemption Victims
kube_scheduler_pod_preemption_attempts

Rate of preemption attempts in the cluster since last pool
Preemption Attempts Rate
kube_scheduler_schedule_attempts

Rate 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
Schedule Attempts Rate
kube_scheduler_scheduling_algorithm_duration_seconds

Average scheduling algorithm latency
Average Scheduling LatencySeconds
kube_scheduler_scheduling_algorithm_latency_microseconds

Average scheduling algorithm latency
Average Scheduling Latency Micro secondsmicroseconds
kube_scheduler_scheduling_algorithm_predicate_evaluation_duration

Average scheduling algorithm predicate evaluation duration
Average Scheduling Algorithm Predicate Evaluation Durationseconds
kube_scheduler_scheduling_algorithm_preemption_evaluation_duration

Average Scheduling algorithm preemption evaluation duration
Average Scheduling Algorithm Preemption Evaluation Durationseconds
kube_scheduler_scheduling_algorithm_priority_evaluation_duration

Average Scheduling algorithm priority evaluation duration
Average Scheduling Algorithm Priority Evaluation Durationseconds
kube_scheduler_e2e_scheduling_duration

Average E2e scheduling latency (scheduling algorithm + binding)
Average E2e Scheduling Latencyseconds
kube_scheduler_scheduling_duration_seconds

Average Scheduling latency split by sub-parts of the scheduling operation
Average Scheduling latency Split By Sub-Partsseconds
kube_scheduler_scheduling_duration_quantile

Quantile of Scheduling latency split by sub-parts of the scheduling operation
Quantile Scheduling latency Split By Sub-Partsseconds
kube_scheduler_go_threads

Number of OS threads created
OS Threads Count
kube_scheduler_volume_scheduling_duration

Average volume scheduling stage latency
Average Volume Scheduling Stage Latency