기술 개요
이 섹션에서는 OpenSource MLOps 및 NetApp의 기술 개요를 중점적으로 다룹니다.
인공 지능
AI는 컴퓨터가 인간의 마음의 인지 기능을 모방하도록 훈련되는 컴퓨터 과학 분야입니다. AI 개발자는 컴퓨터를 교육하여 사람과 유사하거나 훨씬 뛰어난 방식으로 문제를 배우고 해결합니다. 딥 러닝 및 머신 러닝은 AI의 하위 필드입니다. 조직은 중요한 비즈니스 요구사항을 지원하기 위해 AI, ML 및 DL을 점점 더 채택하고 있습니다. 몇 가지 예는 다음과 같습니다.
-
방대한 양의 데이터를 분석하여 이전에 알려지지 않은 비즈니스 인사이트를 도출합니다
-
자연어 처리를 사용하여 고객과 직접 상호 작용
-
다양한 비즈니스 프로세스 및 기능 자동화
최신 AI 훈련 및 추론 워크로드에는 대규모 병렬 컴퓨팅 기능이 필요합니다. 따라서 GPU의 병렬 처리 기능이 범용 CPU보다 훨씬 뛰어나기 때문에 AI 작업을 실행하는 데 GPU가 점점 더 많이 사용되고 있습니다.
컨테이너
컨테이너는 공유 호스트 운영 체제 커널 위에서 실행되는 격리된 사용자 공간 인스턴스입니다. 컨테이너 채택이 빠르게 증가하고 있습니다. 컨테이너는 가상 머신(VM)이 제공하는 것과 동일한 애플리케이션 샌드박스(sandbox)의 많은 이점을 제공합니다. 하지만 VM이 사용하는 하이퍼바이저 및 게스트 운영 체제 계층이 없어졌기 때문에 컨테이너는 훨씬 더 가볍습니다. 다음 그림에서는 가상 시스템과 컨테이너를 보여 줍니다.
또한 컨테이너를 사용하면 애플리케이션 종속성, 실행 시간 등을 애플리케이션과 직접 효율적으로 패키징할 수 있습니다. 가장 일반적으로 사용되는 컨테이너 패키징 형식은 Docker 컨테이너입니다. Docker 컨테이너 형식으로 컨테이너화된 애플리케이션은 Docker 컨테이너를 실행할 수 있는 모든 시스템에서 실행할 수 있습니다. 모든 종속성이 컨테이너 자체에 패키지되어 있기 때문에 응용 프로그램의 종속성이 컴퓨터에 없는 경우에도 마찬가지입니다. 자세한 내용은 를 참조하십시오 "Docker 웹 사이트".
쿠버네티스
Kubernetes는 Google에서 원래 설계한 개방형 소스, 분산형 컨테이너 오케스트레이션 플랫폼으로, 현재 CNCF(Cloud Native Computing Foundation)에서 관리하고 있습니다. Kubernetes는 컨테이너화된 애플리케이션의 구축, 관리, 확장 기능을 자동화할 수 있습니다. 최근 몇 년 동안 Kubernetes는 주요 컨테이너 오케스트레이션 플랫폼으로 부상했습니다. 자세한 내용은 를 참조하십시오 "Kubernetes 웹 사이트".
NetApp 트라이던트
"트라이던트" ONTAP(AFF, FAS, Select, Cloud, Amazon FSx ONTAP), Azure NetApp Files 서비스 및 Google Cloud NetApp Volumes를 포함하여 퍼블릭 클라우드 또는 온프레미스의 모든 인기 NetApp 스토리지 플랫폼에서 스토리지 리소스를 사용하고 관리할 수 있습니다. Trident는 기본적으로 Kubernetes와 통합되는 CSI(컨테이너 스토리지 인터페이스) 호환 동적 스토리지 오케스트레이터입니다.
NetApp DataOps 툴킷
은 "NetApp DataOps 툴킷" 고성능 스케일아웃 NetApp 스토리지에서 지원하는 개발/훈련 작업 공간 및 추론 서버의 관리를 간소화하는 Python 기반 툴입니다. 주요 기능은 다음과 같습니다.
-
고성능 스케일아웃 NetApp 스토리지의 지원을 받는 새로운 고용량 작업 공간을 빠르게 프로비저닝합니다.
-
실험이나 신속한 반복을 위해 고용량 작업 공간을 거의 동시에 복제합니다.
-
백업 및/또는 추적/기준선 설정을 위해 대용량 작업 공간의 스냅샷을 거의 동시에 저장합니다.
-
대용량 고성능 데이터 볼륨을 거의 동시에 프로비저닝, 복제 및 스냅샷으로 제공합니다.
아파치 기류
Apache Airflow는 복잡한 엔터프라이즈 워크플로우를 프로그래밍 방식으로 작성, 스케줄링 및 모니터링할 수 있는 오픈 소스 워크플로우 관리 플랫폼입니다. ETL 및 데이터 파이프라인 워크플로우를 자동화하는 데 주로 사용되지만, 이러한 유형의 워크플로우에만 국한되지 않습니다. Airbnb가 공기 흐름 프로젝트를 시작했지만 그 이후 업계에서 매우 인기를 끌며 현재는 Apache Software Foundation의 후원으로 자리 잡았습니다. Python으로 공기 흐름을 작성하고 Python 스크립트를 통해 공기 흐름을 생성하고 "코드로 구성"이라는 원칙에 따라 공기 흐름을 설계할 수 있습니다. 많은 엔터프라이즈 공기 흐름 사용자가 이제 Kubernetes에서 공기 흐름을 실행합니다.
유도된 DAG(Acclic Graphs)
공기 흐름에서 워크플로우는 DAG(Directed Acyclic Graphs)라고 합니다. DAG는 DAG 정의에 따라 순차적으로, 병렬로 또는 둘의 조합으로 실행되는 작업으로 구성됩니다. 공기 흐름 스케줄러는 DAG 정의에 지정된 작업 수준 종속성을 준수하여 일련의 작업자에 대해 개별 작업을 실행합니다. DAG는 Python 스크립트를 통해 정의 및 생성됩니다.
Jupyter 노트북
Jupyter Notebooks는 라이브 코드뿐만 아니라 설명 텍스트를 포함하는 위키 형태의 문서입니다. Jupyter Notebooks는 AI 및 ML 프로젝트를 문서화, 저장, 공유하는 수단으로 AI 및 ML 커뮤니티에서 널리 사용되고 있습니다. Jupyter Notebooks에 대한 자세한 내용은 를 "Jupyter 웹 사이트"참조하십시오.
Jupyter 노트북 서버
Jupyter Notebook Server는 사용자가 Jupyter Notebooks를 만들 수 있는 오픈 소스 웹 애플리케이션입니다.
주피터허브
JupyterHub는 개별 사용자가 자신의 Jupyter Notebook 서버를 프로비저닝하고 액세스할 수 있도록 하는 다중 사용자 애플리케이션입니다. JupyterHub에 대한 자세한 내용은 를 "JupyterHub 웹사이트"참조하십시오.
MLflow(최소
MLflow는 널리 알려진 오픈 소스 AI 라이프사이클 관리 플랫폼입니다. MLflow의 주요 기능에는 AI/ML 실험 추적 및 AI/ML 모델 저장소가 포함됩니다. MLflow에 대한 자세한 내용은 를 "MLflow 웹 사이트"참조하십시오.
Kubeflow
Kubeflow는 Google에서 원래 개발한 Kubernetes용 오픈 소스 AI 및 ML 툴킷입니다. Kubeflow 프로젝트를 통해 Kubernetes에서 AI 및 ML 워크플로우를 간단하게 배포, 이식 및 확장할 수 있습니다. Kubeflow는 복잡한 Kubernetes를 추상화하여 데이터 과학자가 가장 잘 아는 ― 데이터 과학에 집중할 수 있도록 지원합니다. 시각화는 다음 그림을 참조하십시오. Kubeflow는 올인원 MLOps 플랫폼을 선호하는 조직에 적합한 오픈 소스 옵션입니다. 자세한 내용은 를 참조하십시오 "Kubeflow 웹 사이트".
Kubeflow 파이프라인
Kubeflow 파이프라인은 Kubeflow의 핵심 구성 요소입니다. Kubeflow 파이프라인은 이식 가능하고 확장 가능한 AI 및 ML 워크플로우를 정의하고 배포하기 위한 플랫폼 및 표준입니다. 자세한 내용은 를 참조하십시오 "Kubeflow 공식 문서".
Kubeflow 노트북
Kubeflow는 Kubernetes에서 Jupyter Notebook Server의 프로비저닝 및 구축을 단순화합니다. Kubeflow 컨텍스트 내의 Jupyter Notebooks에 대한 자세한 내용은 를 참조하십시오 "Kubeflow 공식 문서".
케이티비주식회사
Katib은 자동 머신 러닝(AutoML)을 위한 Kubernetes 네이티브 프로젝트입니다. Katib는 하이퍼매개변수 조정, 조기 중지 및 신경 아키텍처 검색(NAS)을 지원합니다. Katib은 머신 러닝(ML) 프레임워크에 제약을 받지 않는 프로젝트입니다. 사용자가 선택한 모든 언어로 작성된 애플리케이션의 하이퍼 매개 변수를 조정할 수 있으며 TensorFlow, MXNet, PyTorch, XGBoost, 있습니다. Katib는 Bayesian 최적화, Parzen Estimators의 Tree of Parzen Estimators, Random Search, CoVariance Matrix 어댑테이션 진화 전략, Hyperband, 효율적 신경 아키텍처 검색, 차별화 아키텍처 검색 등과 같은 다양한 AutoML 알고리즘을 많이 지원합니다. Kubeflow와 관련하여 Jupyter Notebooks에 대한 자세한 내용은 를 참조하십시오 "Kubeflow 공식 문서".
NetApp ONTAP를 참조하십시오
NetApp의 최신 세대 스토리지 관리 소프트웨어인 ONTAP 9는 기업이 인프라를 현대화하고 클라우드 지원 데이터 센터로 전환할 수 있도록 지원합니다. ONTAP는 업계 최고 수준의 데이터 관리 기능을 활용하여 데이터가 상주하는 위치와 상관없이 단일 툴셋으로 데이터를 관리하고 보호할 수 있습니다. 필요에 따라 에지, 코어, 클라우드 등 어느 위치로도 데이터를 자유롭게 이동할 수 있습니다. ONTAP 9에는 데이터 관리를 단순화하고, 중요 데이터를 더 빨리 처리하고, 보호하며, 하이브리드 클라우드 아키텍처 전체에서 차세대 인프라 기능을 지원하는 다양한 기능이 포함되어 있습니다.
데이터 관리를 단순화하십시오
데이터 관리는 AI 애플리케이션에 적합한 리소스를 사용하고 AI/ML 데이터 세트를 교육할 수 있도록 엔터프라이즈 IT 운영 및 데이터 과학자에게 매우 중요합니다. NetApp 기술에 대한 다음 추가 정보는 이 검증의 범위에 포함되지 않지만, 배포에 따라 달라질 수 있습니다.
ONTAP 데이터 관리 소프트웨어에는 운영을 간소화 및 단순화하고 총 운영 비용을 절감하는 다음과 같은 기능이 있습니다.
-
인라인 데이터 컴팩션 및 확대된 중복제거: 데이터 컴팩션은 스토리지 블록 내부의 낭비되는 공간을 줄이고, 중복제거는 실제 용량을 상당히 늘려줍니다. 이는 로컬에 저장된 데이터와 클라우드로 계층화된 데이터에 적용됩니다.
-
최소, 최대 및 적응형 서비스 품질(AQoS): 세부적인 서비스 품질(QoS) 제어로 고도의 공유 환경에서 중요 애플리케이션의 성능 수준을 유지할 수 있습니다.
-
NetApp FabricPool를 참조하십시오. AWS(Amazon Web Services), Azure, NetApp StorageGRID 스토리지 솔루션을 포함한 퍼블릭 클라우드 및 프라이빗 클라우드 스토리지에 콜드 데이터를 자동으로 계층화합니다. FabricPool에 대한 자세한 내용은 를 참조하십시오 "TR-4598: FabricPool 모범 사례".
데이터 가속화 및 보호
ONTAP는 탁월한 수준의 성능과 데이터 보호를 제공하며 다음과 같은 방법으로 이러한 기능을 확장합니다.
-
성능 및 짧은 지연 시간: ONTAP는 가장 짧은 지연 시간으로 가장 높은 처리량을 제공합니다.
-
데이터 보호: ONTAP는 모든 플랫폼에서 공통 관리를 지원하는 내장 데이터 보호 기능을 제공합니다.
-
NVE(NetApp 볼륨 암호화). ONTAP는 온보드 및 외부 키 관리를 모두 지원하는 기본 볼륨 레벨 암호화를 제공합니다.
-
멀티테넌시 및 다단계 인증. ONTAP를 사용하면 인프라 리소스를 최고 수준의 보안으로 공유할 수 있습니다.
미래 지향형 인프라
ONTAP은 다음과 같은 기능을 통해 끊임없이 변화하는 까다로운 비즈니스 요구사항을 충족할 수 있도록 지원합니다.
-
원활한 확장 및 무중단 운영: ONTAP은 운영 중단 없이 기존 컨트롤러 및 스케일아웃 클러스터에 용량을 추가할 수 있도록 지원합니다. 고객이 많은 비용이 드는 데이터 마이그레이션이나 운영 중단 없이 최신 기술로 업그레이드할 수 있습니다.
-
클라우드 연결: ONTAP은 주요 클라우드와 연결되는 스토리지 관리 소프트웨어로, 모든 퍼블릭 클라우드에서 소프트웨어 정의 스토리지 및 클라우드 네이티브 인스턴스 옵션이 제공됩니다.
-
새로운 애플리케이션과 통합: ONTAP은 기존 엔터프라이즈 앱을 지원하는 인프라와 동일한 인프라를 사용하여 자율주행 차량, 스마트 시티, Industry 4.0과 같은 차세대 플랫폼 및 애플리케이션을 위한 엔터프라이즈급 데이터 서비스를 제공합니다.
NetApp Snapshot 복사본
NetApp 스냅샷 복사본은 볼륨의 읽기 전용 시점 이미지입니다. 다음 그림과 같이 이미지는 스토리지 공간을 최소한으로 사용하고, 마지막 스냅샷 복사본 생성 이후 생성된 파일의 변경사항만 기록하므로 경미한 성능 오버헤드를 발생시킵니다.
스냅샷 복사본은 핵심 ONTAP 스토리지 가상화 기술인 WAFL(Write Anywhere File Layout)의 효율성을 높여줍니다. 데이터베이스와 마찬가지로 WAFL는 메타데이터를 사용하여 디스크의 실제 데이터 블록을 가리킵니다. 하지만 WAFL은 데이터베이스와 달리 기존 블록을 덮어쓰지 않습니다. 업데이트된 데이터를 새 블록에 쓰고 메타데이터를 변경합니다. ONTAP은 데이터 블록을 복사하는 대신 스냅샷 복사본을 생성할 때 메타데이터를 참조하므로 스냅샷 복사본이 매우 효율적입니다. 이렇게 하면 복사할 블록을 찾는 데 다른 시스템이 발생하는 탐색 시간과 복사본 자체를 만드는 비용이 제거됩니다.
스냅샷 복사본을 사용하여 개별 파일 또는 LUN을 복구하거나 볼륨의 전체 콘텐츠를 복원할 수 있습니다. ONTAP은 스냅샷 복사본의 포인터 정보를 디스크의 데이터와 비교하여 다운타임 또는 상당한 성능 비용 없이 누락 또는 손상된 개체를 재구성합니다.
NetApp FlexClone 기술
NetApp FlexClone 기술은 Snapshot 메타데이터를 참조하여 볼륨의 쓰기 가능한 특정 시점 복사본을 생성합니다. 복사본은 다음 그림과 같이 복사본에 변경 사항이 기록될 때까지 메타데이터에 필요한 사항을 제외하고 데이터 블록을 부모와 공유하고 스토리지를 사용하지 않습니다. FlexClone 소프트웨어를 사용하면 기존 복사본을 생성하는 데 몇 분 또는 몇 시간이 걸릴 수 있으며 최대 규모의 데이터 세트도 거의 즉시 복사할 수 있습니다. 따라서 동일한 데이터 세트의 여러 복사본(예: 개발 작업 공간)이 필요하거나 데이터 세트의 임시 복사본(운영 데이터 세트에 대해 애플리케이션 테스트)이 필요한 경우에 적합합니다.
NetApp SnapMirror 데이터 복제 기술
NetApp SnapMirror 소프트웨어는 Data Fabric에서 사용하기 쉬운 비용 효율적인 통합 복제 솔루션입니다. LAN 또는 WAN을 통해 데이터를 고속으로 복제합니다. 가상 환경과 기존 환경 모두에서 비즈니스 크리티컬 애플리케이션을 포함한 모든 유형의 애플리케이션에 대해 높은 데이터 가용성과 빠른 데이터 복제를 제공합니다. 하나 이상의 NetApp 스토리지 시스템에 데이터를 복제하고 2차 데이터를 지속적으로 업데이트함으로써 데이터가 최신 상태로 유지되고 필요할 때마다 사용할 수 있으며 외부 복제 서버가 필요하지 않습니다. 다음 그림은 SnapMirror 기술을 활용하는 아키텍처의 예입니다.
SnapMirror 소프트웨어는 변경된 블록만 네트워크를 통해 전송함으로서 NetApp ONTAP 스토리지 효율성을 활용합니다. SnapMirror 소프트웨어는 또한 내장된 네트워크 압축 기능을 사용하여 데이터 전송을 더 신속하게 수행하고 네트워크 대역폭 활용률을 70%까지 줄입니다. SnapMirror 기술을 사용하면 하나의 씬 복제 데이터 스트림을 활용하여 활성 미러와 이전 시점의 복사본을 둘 다 유지 관리하는 단일 저장소를 만들 수 있으므로 네트워크 트래픽이 최대 50% 감소합니다.
NetApp BlueXP 복사 및 동기화
"BlueXP 복사 및 동기화" 빠르고 안전한 데이터 동기화를 제공하는 NetApp 서비스입니다. 온프레미스 NFS 또는 SMB 파일 공유, NetApp StorageGRID, NetApp ONTAP S3, Google Cloud NetApp Volumes, Azure NetApp Files, AWS S3, AWS EFS, Azure Blob, Google Cloud Storage 또는 IBM Cloud Object Storage 간에 파일을 전송해야 하는 경우 BlueXP 복사본 및 동기화를 통해 필요한 파일을 빠르고 안전하게 이동합니다.
데이터가 전송되면 소스와 타겟 모두에서 사용할 수 있습니다. BlueXP 복사 및 동기화는 업데이트가 트리거되거나 미리 정의된 일정에 따라 데이터가 지속적으로 동기화되는 경우 필요 시 데이터를 동기화할 수 있습니다. BlueXP Copy 및 Sync는 변경된 부분만 이동하므로 데이터 복제에 소비되는 시간과 비용이 최소화됩니다.
BlueXP Copy and Sync는 매우 간단하게 설정하고 사용할 수 있는 서비스형 소프트웨어(SaaS) 툴입니다. BlueXP Copy 및 Sync에 의해 트리거되는 데이터 전송은 데이터 브로커에 의해 수행됩니다. BlueXP Copy 및 Sync 데이터 브로커는 AWS, Azure, Google Cloud Platform 또는 사내에 구축할 수 있습니다.
NetApp XCP
"NetApp XCP" 는 NetApp 간 또는 NetApp 간 데이터 마이그레이션과 파일 시스템 인사이트를 위한 클라이언트 기반 소프트웨어입니다. xCP는 사용 가능한 모든 시스템 리소스를 활용하여 대용량 데이터 세트 및 고성능 마이그레이션을 처리함으로써 최대한의 성능을 발휘하도록 설계되었습니다. xCP를 사용하면 보고서를 생성하는 옵션을 통해 파일 시스템에 대한 완벽한 가시성을 확보할 수 있습니다.
NetApp ONTAP FlexGroup 볼륨
교육 데이터 세트는 잠재적으로 수십억 개의 파일로 구성됩니다. 파일에는 텍스트, 오디오, 비디오 및 기타 형식의 비정형 데이터가 포함될 수 있으며, 이 데이터를 병렬로 읽고 저장해야 합니다. 스토리지 시스템은 수많은 작은 파일을 저장해야 하며 순차적 I/O 및 랜덤 I/O를 위해 병렬로 이들 파일을 읽어야 합니다
FlexGroup 볼륨은 다음 그림과 같이 여러 개의 구성 멤버 볼륨으로 구성된 단일 네임스페이스입니다. 스토리지 관리자 관점에서 FlexGroup 볼륨은 NetApp FlexVol 볼륨과 마찬가지로 관리되고 작동합니다. FlexGroup 볼륨의 파일은 개별 구성원 볼륨에 할당되며 볼륨 또는 노드에 스트라이핑되지 않습니다. 다음과 같은 기능을 지원합니다.
-
FlexGroup 볼륨은 메타데이터가 많은 워크로드에 수 페타바이트에 달하는 용량과 예측 가능한 짧은 지연 시간을 제공합니다.
-
동일한 네임스페이스에서 최대 4천억 개의 파일을 지원합니다.
-
CPU, 노드, 애그리게이트, 구성 FlexVol 볼륨에서 NAS 워크로드에 병렬 작업을 지원합니다.