스케줄러 확장 아키텍처

스케줄러 확장 아키텍처 An architecture diagram generated by Archify. API 서버 · kube-apiserver · 컨트롤 플레인 API 서버 kube-apiserver 기본 스케줄러 · kube-scheduler · 컨트롤 플레인 기본 스케줄러 kube-scheduler 확장 서비스 · HTTP 서버 (예: :8888) · 스케줄러 확장 (확장 엔드포인트) 확장 서비스 HTTP 서버 (예: :8888) /filter · 필터 · 스케줄러 확장 (확장 엔드포인트) /filter 필터 /prioritize · 우선순위 · 스케줄러 확장 (확장 엔드포인트) /prioritize 우선순위 /prescore · 사전 점수 (선택) · 스케줄러 확장 (확장 엔드포인트) /prescore 사전 점수 (선택) /bind · 바인드 (선택) · 스케줄러 확장 (확장 엔드포인트) /bind 바인드 (선택) /prefilter · 사전 필터 (선택) · 스케줄러 확장 (확장 엔드포인트) /prefilter 사전 필터 (선택) 노드 1 · 워커 · 워커 노드 노드 1 워커 노드 2 · 워커 · 워커 노드 노드 2 워커 노드 3 · 워커 · 워커 노드 노드 3 워커 Pod 생성 요청 HTTP 요청 바인딩 컨트롤 플레인 워커 노드 스케줄러 확장 (확장 엔드포인트) Legend 백엔드 서비스 클라우드 서비스 외부 시스템

컨트롤 플레인

  • • API 서버가 Pod 생성 요청을 기본 스케줄러에 전달한다
  • • 기본 스케줄러는 내부 필터링·점수 매기기 사이에 확장 서비스를 HTTP로 호출한다

확장 엔드포인트

  • • /filter: Pod를 실행할 수 없는 노드를 걸러낸다
  • • /prioritize: 노드에 우선순위 점수를 부여한다
  • • /bind, /prefilter, /prescore는 선택 사항이다

워커 노드

  • • 최종 선택된 노드에 Pod가 바인딩된다