kubernetes component control-plane

스케줄러(kube-scheduler)는 새로 생성되었지만 아직 어느 노드에도 할당되지 않은 [[K8s - Pod]]를 감시하고, 이 파드를 실행할 최적의 [[워커 노드 (Worker Node)]]를 찾아주는 역할을 합니다.

주요 역할

  1. 감시(Watch): nodeName 필드가 비어있는 파드를 찾습니다.
  2. 필터링(Filtering): 파드가 요구하는 자원(CPU, 메모리)이나 특정 조건(라벨 등)을 만족하는 노드들만 후보로 추립니다.
  3. 스코어링(Scoring): 필터링된 노드들 중에서 가장 적합한 노드를 찾기 위해 여러 규칙에 따라 점수를 매깁니다. (예: 자원이 더 여유로운 노드에 높은 점수 부여)
  4. 할당(Binding): 가장 높은 점수를 받은 노드의 이름을 파드의 nodeName 필드에 업데이트하여 [[K8s - API 서버]]에 알립니다.

중요: 스케줄러는 파드를 노드에 **‘할당’**만 할 뿐, 실제로 파드를 **‘실행’**하는 것은 해당 노드의 [[K8s - Kubelet]]입니다.

  • 관련 링크: [[컨트롤 플레인 (Control Plane)]], [[K8s - Pod 생성 과정]]

작성일: 2025-11-03