liveBook · Manning

Kube-scheduler.yaml

As explained in Acing the Certified Kubernetes Administrator Exam, Second Edition

A Kubernetes static-pod manifest that configures the scheduler process and its referenced settings and credentials.

kube-scheduler.yaml is a static-pod manifest for the control-plane scheduler. It supplies scheduler command-line settings, including authentication and authorization kubeconfig paths, bind address, and leader election. section 8.2.5

Use the manifest as an operational troubleshooting target:

  • Check scheduler containers with crictl ps -a | grep scheduler, then inspect failures with crictl logs. section 8.2.5
  • Match every referenced file to an existing path; a nonexistent authorization-kubeconfig prevents the scheduler from starting. section 8.2.5
  • Restore /etc/kubernetes/scheduler.conf in the authorization setting, then verify that pending pods can schedule. section 8.2.5
root@kind-control-plane:/etc/kubernetes/manifests# cat kube-scheduler.yaml
apiVersion: v1
kind: Pod
metadata:
  creationTimestamp: null
  labels:
    component: kube-scheduler
    tier: control-plane
  name: kube-scheduler
  namespace: kube-system
spec:
  containers:
  - command:
    - kube-scheduler
    - --authentication-kubeconfig=/etc/kubernetes/scheduler.conf
    - --authorization-kubeconfig=/etc/kubernetes/scheduler.conf
    - --bind-address=127.0.0.1
    - --kubeconfig=/etc/kubernetes/scheduler.conf
    - --leader-elect=true
(Redacted for brevity)

Inspect the manifest structure and compare authentication, authorization, and general kubeconfig arguments. section 8.2.5

How Acing the Certified Kubernetes Administrator Exam, Second Edition covers it

How deep it goes
Shows manifest fields and a filename diagnosis, but stops short of explaining scheduler internals.
Examples
Uses a missing scheduler2.conf path, a corrected scheduler.conf path, crictl logs, and pending pods as verification evidence.
What it assumes
Assumes familiarity with crictl, kubelet-managed manifests, Kubernetes pods, and kubeconfig file paths.
What you can do after
Diagnose and repair scheduler startup failures by inspecting logs, correcting manifest paths, and verifying pod scheduling.
How it connects
Connects static pods, kube-scheduler, kubelet, crictl, kubeconfig files, and pending pods.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Acing the Certified Kubernetes Administrator Exam, Second Edition. The section links point to the parts of the book it draws on.