본문 바로가기

Develop/DevOps

[Kubeflow] Trainer helm chart 설치

반응형

 

아래 설치방식만 정리하기 위해서 적은 글이라 크게 도움은 안될 글입니다...ㅠ

Kubeflow Trainer에 대한 간단한 설명 (Feat. ChatGPT)

https://www.kubeflow.org/docs/components/trainer/overview/ 해당 페이지를 통해서 정보를 구했습니다.

🧠 Kubeflow Trainer의 주요 특징

  1. Kubernetes 네이티브 설계
    Kubeflow Trainer는 Kubernetes의 Custom Resource Definition(CRD)을 활용하여 TrainJob, TrainingRuntime, ClusterTrainingRuntime 등의 리소스를 정의합니다. 이를 통해 복잡한 Kubernetes 설정 없이도 분산 학습 환경을 구성할 수 있습니다.
  2. 다양한 ML 프레임워크 지원
    PyTorch, TensorFlow, JAX, XGBoost 등 주요 ML 프레임워크를 지원하며, HuggingFace, DeepSpeed, Megatron-LM 등의 라이브러리와도 통합이 가능합니다.
  3. Kubeflow Python SDK 통합
    Kubeflow Python SDK를 통해 TrainJob을 정의하고 실행할 수 있어, 데이터 과학자나 ML 엔지니어가 친숙한 Python 환경에서 작업할 수 있습니다.
  4. GPU 자원 최적화
    데이터셋 및 모델 초기화를 CPU에서 처리하여 GPU 자원의 낭비를 줄이고, 분산 학습 노드 간 자산 초기화를 간소화합니다.
  5. Kubernetes 스케줄러와의 통합
    Kueue, Volcano, YuniKorn 등의 Kubernetes 스케줄러와 통합되어, ML 워크로드의 GPU 활용도 및 gang-scheduling을 최적화할 수 있습니다.

Helm Chart를 이용한 Operator 설치

kubeflow trainer는 공식적으로 helm chart repository를 제공하지않는것으로 보여진다. 따라서 repository clone이후 아래와같은 명령어로 별도로 helm chart packaging을 진행해야한다.

git clone https://github.com/kubeflow/trainer.git
cd trainer/charts/kubeflow-trainer
helm dependency update
helm package .

# kubeflow-trainer-2.0.0.tgz 생성

 

 

반응형