Union.ai와 NetApp FlexCache 사용하여 하이브리드 AI 교육 배포
Union.ai 오케스트레이션과 NetApp FlexCache 및 Trident 사용하여 Kubernetes 스토리지 프로비저닝을 통해 하이브리드 AI 교육 환경을 구축하는 방법을 알아보세요.
David Espejo, Union.ai Sathish Thyagarajan, NetApp
개요
Union.ai의 하이브리드 오케스트레이션 플랫폼은 NetApp ONTAP 및 FlexCache 와 완벽하게 통합되어 AI/ML 교육 워크플로를 가속화합니다. 이 솔루션을 사용하면 클라우드 기반 GPU 컴퓨팅을 AI 학습 워크로드에 활용하는 동시에 데이터를 온프레미스에 안전하게 보관할 수 있습니다. NetApp FlexCache 필요한 데이터만 클라우드에 캐시되도록 하여 효율적이고 안전하며 확장 가능한 하이브리드 AI/ML 파이프라인을 구현합니다.
고객 사용 사례: 하이브리드 클라우드 AI 교육
-
온프레미스 데이터: 규정 준수 및 보안을 위해 NetApp ONTAP 에 저장됩니다.
-
클라우드 컴퓨팅: EKS/GKE/AKS에서 확장 가능한 GPU 학습.
-
AI/ML 오케스트레이션: Union.ai는 여러 환경에서 데이터 처리와 교육을 조정합니다.
-
스토리지 프로비저닝: NetApp Trident PVC/PV 프로비저닝을 자동화합니다.
고객 가치
-
NetApp ONTAP의 확장 기능을 사용하여 방대한 데이터 세트에서 AI 워크로드를 실행하세요.
-
NetApp의 하이브리드 클라우드 기능을 사용하여 온프레미스와 클라우드 간에 데이터를 이동하고 동기화하세요.
-
FlexCache 사용하여 온프레미스 데이터를 클라우드에 빠르게 캐시하세요.
-
Union.ai는 버전 관리, 계보 추적, 아티팩트 관리를 통해 여러 환경 간의 오케스트레이션을 간소화합니다.
-
민감한 데이터는 온프레미스에 보관한 채 클라우드에서 교육을 실행합니다.
플러그인 활성화 – 필수 구성 요소
요구 사항 |
세부 |
ONTAP 버전 |
ONTAP 9.7+ (FlexCache 라이선스 필요 없음) |
FlexCache 라이선스 |
ONTAP 9.6 이하 버전에 필요함 |
쿠버네티스 |
온프레미스 및 클라우드 클러스터(EKS/GKE/AKS) |
Trident |
온프레미스와 클라우드 클러스터 모두에 설치됨 |
유니온.ai |
제어 평면 배포(Union Cloud 또는 자체 호스팅) |
네트워킹 |
클러스터 간 연결( ONTAP 클러스터가 분리된 경우) |
권한 |
ONTAP 및 Kubernetes 클러스터에 대한 관리자 액세스. ✅올바른 ONTAP 자격 증명(예: vsadmin)을 사용하세요. |
Union.ai를 처음 사용하시나요? |
이 문서의 끝에 있는 동반 가이드를 참조하세요. |
참조 아키텍처
다음 그림은 하이브리드 AI 교육을 위해 NetApp 스토리지와 통합된 Union.ai 제어 평면을 보여줍니다.
-
Union.ai 제어 평면: 워크플로를 조율하고, 데이터 이동을 관리하며, NetApp API와 통합합니다.
-
NetApp ONTAP + FlexCache: 온프레미스에서 클라우드로 효율적인 데이터 캐싱을 제공합니다.
-
하이브리드 교육 클러스터: 교육 작업은 온프레미스에서 캐시된 데이터를 사용하여 클라우드 K8s 클러스터(예: EKS)에서 실행됩니다.
1단계: FlexCache 볼륨 생성
ONTAP 시스템 관리자 사용
-
저장소 > 볼륨으로 이동합니다.
-
추가를 클릭하세요.
-
추가 옵션을 선택하세요.
-
원격 볼륨에 대한 캐시로 추가를 활성화합니다.
-
소스(온프레미스)와 대상(클라우드) 볼륨을 선택하세요.
-
QoS 또는 성능 수준을 정의합니다(선택 사항).
-
만들기를 클릭합니다.
💡권한 또는 집계 문제로 인해 NetApp DataOps Toolkit이 작동하지 않는 경우 ONTAP System Manager나 CLI를 사용하여 FlexCache 볼륨을 직접 생성하세요.
2단계: Trident 구성
두 클러스터에 Trident 설치합니다.
Trident 백엔드 만들기
apiVersion: trident.netapp.io/v1
kind: TridentBackendConfig
metadata:
name: ontap-flexcache
spec:
version: 1
storageDriverName: ontap-nas
managementLIF: <ONTAP-MGMT-IP>
dataLIF: <ONTAP-DATA-IP>
svm: <SVM-NAME>
username: vsadmin
password: <password>
Apply: kubectl apply -f backend-flexcache.yaml
401 권한 없음 오류가 발생하면 ONTAP 사용자에게 충분한 API 권한이 있는지, 올바른 사용자 이름(vsadmin)과 비밀번호가 사용되었는지 확인하세요.
StorageClass 정의
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: flexcache-sc
provisioner: csi.trident.netapp.io
parameters:
backendType: "ontap-nas"
Apply:
kubectl apply -f storageclass-flexcache.yaml
3단계: Union.ai 워크플로 배포
Union은 PVC를 사용하여 FlexCache 볼륨을 교육 작업에 마운트합니다.
PodTemplate 예시
apiVersion: v1
kind: PodTemplate
metadata:
name: netapp-podtemplate
namespace: flytesnacks-development
template:
metadata:
labels:
default-storage: netapp
spec:
containers:
- name: primary
volumeMounts:
- name: flexcache-storage
mountPath: /data/flexcache
volumes:
- name: flexcache-storage
persistentVolumeClaim:
claimName: flexcache-pvc
워크플로우 예시
Union 가져오기 작업, 워크플로
@task(pod_template="netapp-podtemplate")
def train_model(pvc_path: str):
PVC에서 데이터를 로드하고 학습합니다.
@workflow
def training_pipeline():
train_model(pvc_path="/data/flexcache")
노동조합 운영자는 다음을 수행합니다.
-
PVC를 만듭니다
-
FlexCache 볼륨을 마운트합니다.
-
클라우드 K8s 클러스터에서 작업 일정을 예약합니다.
4단계: 통합 검증
| 일 | 확인 |
|---|---|
PVC 마운트 |
트레이닝 포드는 /data/flexcache를 성공적으로 마운트해야 합니다. |
데이터 액세스 |
교육 작업은 FlexCache 에서 읽고 쓸 수 있습니다. |
캐시 동작 |
ONTAP 에서 캐시 적중/미적중을 모니터링합니다. 집계가 FlexCache 지원하는지 확인하세요. |
성능 |
훈련 워크로드에 대한 대기 시간 및 처리량 검증 |
NetApp BlueXP 또는 ONTAP CLI를 사용하여 성능을 모니터링합니다.
보안 고려 사항
-
FSx for NetApp ONTAP 에 VPC 엔드포인트 사용
-
전송 중 및 저장 중 암호화 활성화
-
ONTAP 액세스를 위해 RBAC/IAM 적용
-
Union.ai는 고객 데이터에 접근하거나 저장하지 않습니다.
모니터링 및 최적화
도구 |
목적 |
NetApp BlueXP |
FlexCache 사용량 및 성능 모니터링 |
Union.ai UI |
파이프라인 상태 및 메트릭 추적 |
Trident 로그 |
PVC 또는 백엔드 문제 디버그 |
선택적 향상
-
BlueXP API를 사용하여 FlexCache 생성 자동화
-
Union SDK를 사용하여 훈련 전에 캐시를 예열합니다.
-
훈련 후 배치 추론 또는 모델 제공 파이프라인 추가
-
DataOps Toolkit이 실패하면 System Manager를 통해 수동 FlexCache 생성으로 돌아갑니다.
문제 해결
| 문제 | 해결 |
|---|---|
PVC가 보류 중입니다 |
Trident 로그 및 백엔드 구성 확인 |
ONTAP API에서 401 권한이 없음 |
vsadmin을 사용하여 권한을 확인하세요 |
작업 실패: 적합한 저장소가 없습니다. |
ONTAP 집계가 FlexCache/ FabricPool 지원하는지 확인하세요. |
느린 훈련 성능 |
캐시 적중률과 네트워크 지연 시간을 확인하세요 |
데이터가 동기화되지 않음 |
ONTAP 에서 FlexCache 관계 상태 검증 |
다음 단계
-
테스트 데이터로 FlexCache 검증
-
Union.ai 교육 파이프라인 배포
-
성능 모니터링 및 최적화
-
고객별 설정 문서화
결론
이제 Union.ai와 NetApp FlexCache 사용하여 검증된 하이브리드 AI 교육 환경이 구축되었습니다. 전체 데이터 세트를 복제하거나 거버넌스를 손상시키지 않고도 온프레미스 데이터에 안전하고 효율적으로 액세스하면서 클라우드에서 교육 작업을 실행할 수 있습니다.
Union.ai - 동반 가이드
1단계: 배포 모델 선택
옵션 A: Union Cloud
-
방문하다: "콘솔.유니온.ai"
-
조직 생성 → 프로젝트 생성
옵션 B: 셀프 호스팅
-
따르다:https://docs.union.ai/platform/latest/deployment/self-hosted/["셀프 호스팅 가이드"]
-
Helm을 통해 배포:
헬름 저장소에 unionai 추가 https://unionai.github.io/helm-charts/
helm install union unionai/union -n union-system -f values.yaml
2단계: Union Operator 설치
kubectl 적용 -fhttps://raw.githubusercontent.com/unionai/operator/main/deploy/operator.yaml[]
kubectl get pods -n union-system
3단계: Union CLI 설치
pip 설치 unionai
노조 로그인
4단계: 등록 워크플로
유니온 프로젝트, 하이브리드 AI 구축
유니온 레지스터 training_pipeline.py --프로젝트 하이브리드 AI
6단계: 컴퓨팅 클러스터 등록(선택 사항)
union 클러스터 레지스터 --name cloud-k8s --kubeconfig ~/.kube/config
7단계: 유물 및 혈통 추적
Union은 다음을 자동으로 추적합니다.
-
입력/출력 매개변수
-
데이터 버전
-
로그 및 메트릭
-
실행 계보