Skip to main content

Kubeflow 개요

Beta kr-central-1 kr-central-2

카카오클라우드의 Kubeflow는 Kubernetes Engine의 클러스터를 기반으로 클라우드 네이티브 환경에서 머신러닝 워크플로우를 쉽게 구축하고 실행할 수 있도록 도와주는 오픈소스 플랫폼입니다. Kubeflow는 훈련 프로세스를 가속화할 수 있는 다양한 머신러닝 라이브러리와 프레임워크를 지원하며, Kubernetes에서 간단하면서 이식과 확장이 가능한 기계 학습 워크로드를 실행할 수 있는 다양한 ML 기능들을 제공합니다. 또한, Kubernetes 클러스터 관리, 스케일링 등의 기능을 활용하여 머신러닝 워크플로우를 안정적이고 확장할 수 있는 방식으로 운영할 수 있도록 지원합니다.

용어 정리
  • Kubeflow: Kubernetes + ML flow의 합성어로, 파이프라인이라는 ML 워크플로를 구축하고 배포하기 위해 제공되는 오픈소스 플랫폼입니다. 자세한 설명은 Kubeflow 공식 문서를 참고하시기 바랍니다.
  • 파이프라인(Pipeline): 머신러닝에서 파이프라인은 머신러닝 프로세스를 단계적으로 구성하여 데이터를 전처리하고 모델을 학습시키기 위해, 데이터 처리 및 모델 학습 단계를 연결하여 효율적으로 데이터를 전달하고 처리하는 방법을 의미합니다.


사용 목적 및 사례

기계 학습 모델을 훈련하기 위해서는 여러 단계가 필요합니다. 훈련을 위한 데이터 세트의 크기가 수백 GB 범위를 넘으면 훈련은 더 복잡해지고, 많은 시간이 소요됩니다. 사용자가 직접 머신러닝 워크플로우를 구현해야 할 경우, Kubernetes 클러스터를 구성하고 머신러닝 프레임워크를 직접 설치하고 관리해야 하는 번거로움이 있습니다.
카카오클라우드의 Kubeflow 서비스는 이러한 번거로운 과정을 대신해 주며, 사용자가 머신러닝 워크로드를 보다 쉽고 효율적으로 관리할 수 있도록 지원합니다. 또한 머신러닝 워크로드를 보다 쉽고 효율적으로 실행할 수 있으며, 머신러닝 개발 생산성을 향상하고 빠른 모델 개발 및 배포가 가능해집니다.
Kubeflow는 기계 학습이 필수적인 자연어 처리, 이미지 처리, 추천 시스템 등 다양한 분야에서 활용할 수 있습니다.

대상 사용자

Kubeflow 서비스는 머신러닝 엔지니어, 데이터 과학자, 개발자, 인프라 엔지니어 및 IT 관리자 등 다양한 역할을 가진 사용자들이 활용할 수 있습니다.

대상 사용자설명
데이터 과학자머신러닝 모델링을 쉽고 빠르게 수행할 수 있도록 지원합니다. 데이터 분석과 모델링 경험이 있는 사용자들은 Kubeflow를 활용해 머신러닝 모델링을 더욱 간편하게 수행할 수 있습니다.
머신러닝 엔지니어머신러닝 프레임워크와 인프라를 쉽게 구축하고 관리할 수 있도록 지원합니다.
데이터 엔지니어빅데이터 처리 및 저장을 쉽게 구축하고 관리할 수 있도록 지원합니다. 데이터 처리 및 저장 기술 경험이 있는 사용자들은 Kubeflow를 활용해 데이터 처리 작업을 더욱 간편하게 수행할 수 있습니다.
클라우드 인프라 엔지니어쿠버네티스 클러스터를 기반으로 머신러닝 작업을 쉽게 구축하고 관리할 수 있습니다.

특징

Kubeflow 서비스는 Kubernetes 기반의 무료 오픈소스 머신러닝 플랫폼으로, 분산 머신러닝 작업을 위한 도구를 제공하며, 다양한 환경에서 머신러닝 워크플로우를 설정할 수 있습니다. 이를 통해 머신러닝 작업을 간단하게 확장하고 관리할 수 있습니다. 더불어, 다양한 머신러닝 라이브러리와 프레임워크를 지원하며, 워크플로우를 구성하기 위한 다양한 구성 요소를 제공합니다.

Kubernetes 기반

  • Kubernetes Engine을 기반으로 동작
  • Kubernetes가 제공하는 다양한 기능과 효율적인 리소스 관리 기능을 지원

다양한 머신러닝 라이브러리 및 프레임워크 지원

  • TensorFlow, PyTorch, XGBoost 등 다양한 머신러닝 라이브러리 및 프레임워크를 지원하며, 이를 간편하게 배포하고 관리할 수 있는 플랫폼을 제공
  • Kubeflow Pipelines를 통해 다양한 머신러닝 워크플로우를 손쉽게 설정하고 실행 가능

자동화된 머신러닝 워크플로우

  • 머신러닝 워크플로우를 자동화하여 빠른 모델 개발과 배포를 지원
  • 데이터 전처리, 모델 학습, 모델 배포 등 각 단계에서 자동화된 워크플로우를 제공

효율성과 확장성

  • 클라우드 환경에서 신속하고 안정적인 배포와 확장이 가능하며, 쿠버네티스는 자동화된 스케줄링, 로깅, 모니터링 등의 기능을 제공
  • 각 단계를 표준화된 방법으로 정의하고, 필요한 모든 기능을 제공하여 머신러닝 모델의 전체 워크플로우를 자동화하고 개발 및 운영 효율을 높일 수 있음
  • 모든 구성 요소가 오픈소스로 제공되어 사용자가 필요에 맞게 코드를 수정하거나 커스터마이징할 수 있으므로, 자신의 머신러닝 워크플로우에 최적화된 솔루션을 구축할 수 있음

리소스 보안을 권한 관리

  • 업무와 역할에 따라서 사용자에게 네임스페이스를 부여할 수 있고, 쿼터 할당을 통해 리소스 관리를 최적화할 수 있음
  • 그룹 네임스페이스(kbm-g)를 통해 필요한 역할과 담당자를 그룹 구성원으로 추가할 경우, 그룹 단위로 간편하게 권한을 관리할 수 있음

시작하기

Kubeflow에 대한 자세한 사용 가이드는 How-to Guides에서 설명합니다. 카카오클라우드를 처음 시작하신다면 카카오클라우드 시작하기를 참고하시기 바랍니다.