문서 목차
ORKESTRIXAI 플랫폼
robust_controller
정보 — 요건 CRD를 가진 복잡한 AI 오퍼레이터(Ray, Kubeflow 등)가 최소 하나 설치·안정 동작한다: (1) 오퍼레이터 파드 정상 기동, (2) 웹훅 동작, (3) 커스텀 리소스 reconcile 검증.
QUANTUM C&S
정보 — 요건
CRD를 가진 복잡한 AI 오퍼레이터(Ray, Kubeflow 등)가 최소 하나 설치 · 안정 동작한다: (1) 오퍼레이터 파드 정상 기동, (2) 웹훅 동작, (3) 커스텀 리소스 reconcile 검증.
카테고리: 오퍼레이터 (Operator) · 수준: MUST · 상태: Implemented
적용 솔루션
QKS는 KServe(serving.kserve.io)와 Kubeflow(kubeflow.org) 오퍼레이터를 운영합니다. 아래 증거는 운영 클러스터에서 InferenceService 커스텀 리소스들이 컨트롤러에 의해 reconcile되어 하위 리소스가 생성되고 READY 상태를 유지 중임을 보여줍니다.
증명 (명령어 + 출력)
1. 오퍼레이터 CRD 설치
$ kubectl get crd | grep -E 'kserve|kubeflow|serving.kserve.io'
clusterservingruntimes.serving.kserve.io 2025-11-26T02:39:42Z
inferenceservices.serving.kserve.io 2025-11-26T02:39:42Z
llminferenceservices.serving.kserve.io 2025-11-26T02:39:43Z
servingruntimes.serving.kserve.io 2025-11-26T02:39:44Z
trainedmodels.serving.kserve.io 2025-11-26T02:39:44Z
notebooks.kubeflow.org 2025-12-16T12:16:19Z
poddefaults.kubeflow.org 2025-12-16T12:16:19Z
profiles.kubeflow.org 2025-12-16T12:16:19Z
…(총 14개 중 일부)
# captured: 2026-07-02T01:53:14Z
2. (1) 컨트롤러 파드 정상 기동
$ kubectl get pods -n kserve -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
kserve-controller-manager-6b8655594-5wxjk 2/2 Running 0 61d 10.244.205.125 qcs05 <none> <none>
# captured: 2026-07-02T01:53:14Z
3. (2) 웹훅 동작 확인
$ kubectl get validatingwebhookconfigurations,mutatingwebhookconfigurations | grep -i -E 'kserve|inferenceservice'
validatingwebhookconfiguration.admissionregistration.k8s.io/clusterservingruntime.serving.kserve.io 1 217d
validatingwebhookconfiguration.admissionregistration.k8s.io/inferencegraph.serving.kserve.io 1 217d
validatingwebhookconfiguration.admissionregistration.k8s.io/llminferenceservice.serving.kserve.io 1 217d
validatingwebhookconfiguration.admissionregistration.k8s.io/servingruntime.serving.kserve.io 1 217d
validatingwebhookconfiguration.admissionregistration.k8s.io/trainedmodel.serving.kserve.io 1 217d
mutatingwebhookconfiguration.admissionregistration.k8s.io/inferenceservice.serving.kserve.io 2 217d
…(일부 생략)
# captured: 2026-07-02T01:53:14Z
4. (3) 커스텀 리소스 reconcile → READY (운영 중 InferenceService)
$ kubectl -n ai-KosmosAI get inferenceservice
NAME URL READY AGE
aq-equipment-te-regre-lightgbm-5-serving http://aq-equipment-te-regre-lightgbm-5-serving.quantumcns.ai True 35d
google-gemma-4-31b-it-serving http://google-gemma-4-31b-it-serving.quantumcns.ai True 85d
opendatalab-mineru2-5-pro-2604-1-2b-serving http://opendatalab-mineru2-5-pro-2604-1-2b-serving.quantumcns.ai True 65d
…(총 20여 개, 이하 생략)
# captured: 2026-07-02T01:55:28Z
5. reconcile 근거 — 컨트롤러가 생성한 하위 리소스
$ kubectl -n ai-KosmosAI get deploy,svc,pod -l serving.kserve.io/inferenceservice=qwen-qwen3-6-27b-fp8-serving
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/qwen-qwen3-6-27b-fp8-serving-predictor 1/1 1 1 51d
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/qwen-qwen3-6-27b-fp8-serving-predictor ClusterIP 10.144.228.224 <none> 80/TCP 51d
NAME READY STATUS RESTARTS AGE
pod/qwen-qwen3-6-27b-fp8-serving-predictor-849686d494-fnmdh 1/1 Running 0 34d
# captured: 2026-07-02T01:55:28Z
→ InferenceService(CR) → Deployment/Service/Pod가 컨트롤러에 의해 생성 · 유지되고 READY=True.
관련 링크
- 재현 스크립트:
conformance/12-robust-controller/robust-controller-verify.sh