목록 보기
Kurly만의 MLOps 구축하기 - 쿠브플로우 도입기
AI

Kurly만의 MLOps 구축하기 - 쿠브플로우 도입기

마켓컬리
마켓컬리
2022년 11월 2일

두줄요약

도구 분산으로 커진 ML 실험 환경의 복잡성을 해결하기 위해 Kubeflow를 도입했습니다. Elyra, S3·IRSA, SealedSecrets 기반의 운영 설정과 보안 관리 팁을 공유합니다.

문제 상황

  • JupyterHub·MLflow·Airflow 등 개별 도구 증가에 따른 데이터 사이언티스트의 운영 부담과 낮은 도구 간 연결성
  • 인프라보다 데이터 분석·실험·모델링에 집중할 수 있는 추상화된 MLOps 환경 필요

선택 이유

  • SageMaker의 AWS 통합 편의성과 폭넓은 라이프사이클 지원 대비 비용 및 벤더 종속성 우려
  • 기존 EKS·Kubernetes 활용 기반, 환경 이식성 및 기술 내재화 가능성을 고려한 Kubeflow 채택
  • 부족한 라이프사이클 영역의 자체 개발 또는 오픈소스 도구 보완 가능성

구조와 흐름

  • Elyra 확장 기능이 포함된 JupyterLab 이미지를 ECR에서 관리하고 Kubeflow Notebook 이미지 선택 목록으로 제공
  • KFP의 Argo Workflow 설정에서 기본 아티팩트 저장소를 MinIO 대신 S3로 변경
  • 멀티테넌시 환경에서 default-editor 서비스 계정의 IRSA로 S3 임시 보안 자격 증명 적용

주의할 점

  • 운영 환경의 Dex 자격 증명을 Secret으로 전환하고 SealedSecrets로 암호화해 저장소 관리
  • pre-commit Git hook으로 일반 Secret 매니페스트의 실수 커밋 차단
  • Kubeflow 운영 커스터마이징 레퍼런스 부족과 다수 오픈소스 구성에 따른 디버깅 복잡성

컬리 계열사 채용12건

채용 사이트에서 전체 보기

다음 읽기

#Kubeflow 주제를 이어서 읽기

Kurly만의 MLOps 구축하기 - 쿠브플로우 도입기

쿠브플로우 도입 배경과 세이지메이커 비교, 그리고 운영을 위한 초기 설정 팁을 정리했습니다. 데이터 사이언티스트 친화적인 MLOps 환경을 만들기 위한 실무 사례를 소개했습니다.

마켓컬리
마켓컬리
데브옵스

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...