[CKA] kube-scheduler의 역할

스케줄러가 파드에 맞지 않는 노드를 거르고 적합한 노드를 선택하는 과정을 정리합니다.

kube-scheduler는 아직 노드가 지정되지 않은 파드에 실행할 노드를 선택합니다. 실제로 파드를 노드에 실행하는 구성 요소는 kubelet입니다.

스케줄링은 크게 두 단계로 볼 수 있습니다.

  1. 리소스 요구 사항, taint와 toleration, 노드 조건을 만족하지 않는 노드를 거릅니다.
  2. 남은 노드에 점수를 매겨 가장 적합한 노드를 고릅니다.

기본 스케줄러 구성을 확인할 때는 kubeadm 클러스터의 정적 파드 매니페스트를 살펴볼 수 있습니다.

cat /etc/kubernetes/manifests/kube-scheduler.yaml