본문 바로가기
[GPUaaS]/Kubeflow

[Kubeflow] 초보자용 - 전체 설치 과정 !!

by METAVERSE STORY 2026. 2. 10.
반응형

 

 

 

🧠 전체 그림 먼저 (중요)

Kubeflow는 쿠버네티스 위에서 돌아가는 ML 플랫폼입니다.

 
NCP 인프라
 └─ NKS (Kubernetes)
     ├─ GPU 노드
     ├─ Istio (트래픽 제어)
     ├─ Cert-Manager (TLS)
     ├─ Kubeflow Core
     │   ├─ Notebooks
     │   ├─ Pipelines
     │   ├─ Katib
     │   ├─ KServe
 

👉 결론

Kubeflow = “쿠버네티스 + Istio + 여러 ML 컴포넌트 묶음”

 

 


0️⃣ 사전 준비 (이거 안 되면 절대 진행 ❌)

0-1. NCP 계정 & 프로젝트

  • NCP 계정
  • VPC 생성
  • Public Subnet / Private Subnet

0-2. 로컬 PC 준비물

필수 CLI

kubectl version --client
helm version

없으면 설치:

# kubectl
curl -LO https://dl.k8s.io/release/v1.29.0/bin/linux/amd64/kubectl
chmod +x kubectl
sudo mv kubectl /usr/local/bin/

# helm
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
 
 
 

 


1️⃣ NKS (NCP Kubernetes) 클러스터 생성

권장 사양 (최소)

항목
Kubernetes 1.27 이상
Worker 3대 이상
Node Spec 8 vCPU / 32GB
GPU 처음엔 없어도 됨

📌 Kubeflow는 노드 1대로 거의 불가능

 

 


1-1. kubeconfig 설정

NCP 콘솔 → NKS → 클러스터 → kubeconfig 다운로드

 
export KUBECONFIG=~/kubeconfig.yaml
kubectl get nodes

노드 나오면 성공 ✅

 


2️⃣ 기본 네임스페이스 준비

 
kubectl create namespace kubeflow
kubectl create namespace istio-system
 
 

 


3️⃣ Istio 설치 (Kubeflow의 핵심)

Kubeflow는 Istio 없으면 시작도 못 함


3-1. Istio 다운로드

 
curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.22.0 sh -
cd istio-1.22.0
export PATH=$PWD/bin:$PATH
 
 

3-2. Istio 설치

 
istioctl install --set profile=default -y
 

확인:

 
kubectl get pods -n istio-system

 

 


3-3. Kubeflow 네임스페이스에 istio 주입

 
kubectl label namespace kubeflow istio-injection=enabled

 

 

 


4️⃣ Cert-Manager 설치 (HTTPS 필수)

Kubeflow는 TLS 없으면 대시보드 접근 불가


확인:

 
kubectl get pods -n cert-manager
 
 
 

5️⃣ Kubeflow 매니페스트 다운로드

Kubeflow는 helm 아님, kustomize 기반 YAML 덩어리


 
 
 
 

6️⃣ Kubeflow Core 설치 (핵심 단계 🔥)

⚠️ 절대 한 번에 설치하지 마세요


6-1. 공통 리소스

 
while ! kustomize build common | kubectl apply -f -; do echo retry; sleep 10; done
 
 
 

6-2. Istio 관련 리소스

 
while ! kustomize build istio | kubectl apply -f -; do echo retry; sleep 10; done
 
 

 


6-3. 인증 (Dex)

 
while ! kustomize build common/dex | kubectl apply -f -; do echo retry; sleep 10; done
 
 
 

6-4. Kubeflow Core

 
while ! kustomize build apps | kubectl apply -f -; do echo retry; sleep 10; done
 
 

10~20분 소요

 

 


7️⃣ Kubeflow 대시보드 접속

 
kubectl port-forward svc/istio-ingressgateway -n istio-system 8080:80

브라우저:

 
http://localhost:8080

기본 로그인

 
ID: user@example.com
PW: 12341234

 

 

 


8️⃣ 설치 확인 체크리스트

 
kubectl get pods -n kubeflow

정상 기준:

  • ❌ CrashLoopBackOff 없음
  • ❌ ImagePullBackOff 없음
  • 대부분 Running

 

 


9️⃣ 초보자가 꼭 이해해야 하는 Kubeflow 핵심 개념

개념 한 줄 설명
Notebook Jupyter 서버
TFJob 분산 학습
Katib 하이퍼파라미터 튜닝
Pipeline 학습 워크플로우
KServe 모델 서빙
Istio 트래픽 / 인증

 

 


🔥 초보자 추천 학습 순서 (이거 중요)

1️⃣ Notebook 생성
2️⃣ TFJob 단일 GPU 실행
3️⃣ Katib 실험
4️⃣ Pipeline 연결
5️⃣ KServe 배포

👉 설치만 하고 바로 KServe 가면 100% 멘붕

 


⚠️ NCP에서 자주 터지는 문제


문제 원인
Pending Pod 노드 리소스 부족
ImagePull Private Registry
503 에러 Istio Gateway
인증 안됨 Dex 설정

 

 

 

반응형

댓글