Skip to content

Kube Scheduler

By monitoring Kube Scheduler Metrics, it helps configure and optimize the Kube Scheduler, which can improve the resource utilization of the cluster and the performance of applications

Configuration

Prerequisites

  • DataKit is installed

Collector Configuration

  • Configure ConfigMap resources in datakit.yaml to collect Kube Scheduler Metrics data
apiVersion: v1
kind: ConfigMap
metadata:
  name: datakit-conf
  namespace: datakit
data:
   kubernetesprometheus.conf: |-  
     [inputs.kubernetesprometheus]
        [[inputs.kubernetesprometheus.instances]]
          role       = "pod"
          namespaces = ["kube-system"]
          selector   = "component=kube_scheduler,tier=control-plane"      
          scrape   = "true"
          scheme   = "https"
          port     = "10259"
          path     = "/metrics"
          interval = "30s"

         [inputs.kubernetesprometheus.instances.custom]
           measurement        = "kube_scheduler"
           job_as_measurement = false
           [inputs.kubernetesprometheus.instances.custom.tags]
             cluster_name_k8s = "k8s-test"           
             node_name        = "__kubernetes_pod_node_name"
             instance         = "__kubernetes_mate_instance"

         [inputs.kubernetesprometheus.instances.auth]
           bearer_token_file = "/var/run/secrets/kubernetes.io/serviceaccount/token"
           [inputs.kubernetesprometheus.instances.auth.tls_config]
             insecure_skip_verify = true
             ca_certs = []
             cert     = ""
             cert_key = ""
  • Restart datakit
kubectl rollout restart ds  datakit -n datakit

Metrics

Kube Scheduler Metric Sets

Kube Scheduler Metrics are located under the kube-scheduler metric set. Below is an introduction to the related explanations of Kube Scheduler Metrics.

Metrics Description Unit
scheduler_scheduler_cache_size Number of nodes, Pods, and AssumedPods (pods assumed to be scheduled) in the scheduler cache count
scheduler_pending_pods Number of Pending Pods count
process_cpu_seconds_total Total CPU usage of the kube-scheduler process s
rest_client_request_duration_seconds_bucket Analyze HTTP request latency from the method (Verb) and URL dimensions ms
rest_client_requests_total Analyze HTTP requests from status value (Status Code), method (Method), and host (Host) dimensions count
rest_client_requests_total Total number of HTTP requests initiated by kube-scheduler to kube-apiserver count

Feedback

Is this page helpful? ×