Comment out JAX runtime, update README with install results

- JAX runtime commented out (CRD does not support spec.mlPolicy.jax)
- Mark verification checklist items as completed
- Add known issues section (torchrun injection, JAX support)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
selee 2026-02-10 16:23:06 +09:00
parent 146baa41e8
commit 00529c5ca9
2 changed files with 52 additions and 34 deletions

View File

@ -130,6 +130,9 @@ helm install kubeflow-trainer charts/kubeflow-trainer-0.0.0-sha-48e7a93.tgz \
kubectl apply -f manifests/kubeflow-trainer/runtimes/runtimes.yaml kubectl apply -f manifests/kubeflow-trainer/runtimes/runtimes.yaml
``` ```
> **참고**: JAX runtime은 현재 CRD에서 `spec.mlPolicy.jax` 필드를 지원하지 않아 주석 처리되어 있음.
> 설치되는 Runtime: deepspeed-distributed, mlx-distributed, torch-distributed, torchtune-llama3.2-1b/3b, torchtune-qwen2.5-1.5b
### 3.4 설치 확인 ### 3.4 설치 확인
```bash ```bash
@ -261,15 +264,29 @@ kubectl get pods -l trainer.kubeflow.org/trainjob-name=<trainjob-name> \
## 검증 체크리스트 ## 검증 체크리스트
- [ ] Volcano Pod 3개 Running (`nodegroup=nd` 노드에 배치 확인) - [x] Volcano Pod 3개 Running (`nodegroup=nd` 노드에 배치 확인)
- [ ] Volcano CRD 생성됨 (jobs, podgroups, queues 등) - [x] Volcano CRD 생성됨 (jobs, podgroups, queues 등)
- [ ] Kubeflow Trainer controller Running (`nodegroup=nd` 노드에 배치 확인) - [x] Kubeflow Trainer controller Running (`nodegroup=nd` 노드에 배치 확인)
- [ ] JobSet controller Running (`nodegroup=nd` 노드에 배치 확인) - [x] JobSet controller Running (`nodegroup=nd` 노드에 배치 확인)
- [ ] Kubeflow Trainer CRD 생성됨 (trainjobs, trainingruntimes 등) - [x] Kubeflow Trainer CRD 생성됨 (trainjobs, trainingruntimes 등)
- [ ] ClusterTrainingRuntime 목록 확인 (deepspeed-distributed, torch-distributed 등) - [x] ClusterTrainingRuntime 목록 확인 (deepspeed-distributed, torch-distributed 등 6개)
- [ ] Training Queue 생성됨 - [x] Training Queue 생성됨
- [ ] 테스트 TrainJob 제출 시 PodGroup 자동 생성 확인 - [x] 테스트 TrainJob 제출 시 PodGroup 자동 생성 확인
- [ ] 테스트 TrainJob Pod가 Volcano 스케줄러로 스케줄링됨 - [x] 테스트 TrainJob Pod가 Volcano 스케줄러로 스케줄링됨
---
## 알려진 이슈
### Runtime에서 `command` 설정 시 torchrun 미주입
Kubeflow Trainer torch runtime은 컨테이너에 `command`가 없을 때 자동으로 torchrun을 주입하여 `RANK`, `LOCAL_RANK`, `WORLD_SIZE` 등 환경변수를 설정합니다. Runtime에서 `command`를 직접 지정하면 torchrun 주입이 우회되어 분산 학습 환경변수가 설정되지 않습니다.
현재 `volcano-trainjob-integration.yaml`의 Runtime에는 `command`가 설정되어 있으므로, 학습 스크립트 실행 방식을 조정해야 합니다.
### JAX ClusterTrainingRuntime 미지원
현재 CRD 버전에서 `spec.mlPolicy.jax` 필드를 지원하지 않아 JAX runtime은 주석 처리되어 있음.
--- ---

View File

@ -54,31 +54,32 @@ spec:
operator: All operator: All
targetReplicatedJobs: targetReplicatedJobs:
- launcher - launcher
--- # ---
apiVersion: trainer.kubeflow.org/v1alpha1 # # JAX runtime - 현재 CRD에서 spec.mlPolicy.jax 미지원으로 주석처리
kind: ClusterTrainingRuntime # apiVersion: trainer.kubeflow.org/v1alpha1
metadata: # kind: ClusterTrainingRuntime
labels: # metadata:
trainer.kubeflow.org/framework: jax # labels:
name: jax-distributed # trainer.kubeflow.org/framework: jax
spec: # name: jax-distributed
mlPolicy: # spec:
jax: {} # mlPolicy:
numNodes: 1 # jax: {}
template: # numNodes: 1
spec: # template:
replicatedJobs: # spec:
- name: node # replicatedJobs:
template: # - name: node
metadata: # template:
labels: # metadata:
trainer.kubeflow.org/trainjob-ancestor-step: trainer # labels:
spec: # trainer.kubeflow.org/trainjob-ancestor-step: trainer
template: # spec:
spec: # template:
containers: # spec:
- image: nvcr.io/nvidia/jax:25.10-py3 # containers:
name: node # - image: nvcr.io/nvidia/jax:25.10-py3
# name: node
--- ---
apiVersion: trainer.kubeflow.org/v1alpha1 apiVersion: trainer.kubeflow.org/v1alpha1
kind: ClusterTrainingRuntime kind: ClusterTrainingRuntime