쿠브플로 운영 가이드 - 온프레미스 배포와 클라우드 운영
조시 패터슨.마이클 카체넬렌보겐.오스틴 해리스 지음, 김소형 옮김 / 한빛미디어 / 2022년 1월
평점 :
장바구니담기


AI기술팀의 일원으로서 MLOps는 지상과제입니다. MLOps를 구현하는 방법에는 정답이 없어도 정도 중 하나는 구글이 제안하는 길을 따르는 것입니다. 구글이 내놓은 Kubernetes는 리눅스재단에서 적극적으로 받아 들이는 등 컨테이너화된 워크로드와 서비스를 관리하기 위한 이식할 수 있고 확장 가능한 오픈소스 플랫폼으로는 대세가 되었습니다. 그러한 기조를 바탕으로 DevOps에서 쿠버네티스는 필수요소가 되다시피 했고, 자연스럽게 쿠버네티스를 기반으로 한 MLOps 플랫폼인 Kubeflow가 등장했습니다.

이 책은 Kubeflow를 다루는 한국어 자료로는 참 귀중하다 할 정도로 기술배경부터 구축을 거쳐 운영과 모델 서빙까지 전부 언급하면서도 얇습니다. 얇다는 얘기는 꽤 많은 사전지식을 요한다는 의미이기도 합니다. 그렇다고 해서 불친절하지는 않습니다. 각 장마다 도움말을 남겨 보겠습니다.

- CHAPTER 1 쿠브플로 소개
배경지식으로서 쿠버네티스를 기반으로 머신러닝을 수행하는 의의와 사례에 대해 설명합니다. 기본적인 구성요소도 설명하는데, 꽤 어려울 만한 인프라 용어가 나옵니다. MLOps에 관심을 갖게 된 데이터과학자가 읽기는 힘들려나 싶었으나 뒤에 부록 A, B, C에 용어 설명이 가능한 친절하게 나옵니다. IT 인프라가 낯선 독자는 부록을 먼저 읽어도 좋겠습니다. 그 설명만 가지고 모든 맥락을 파악하지는 못하겠지만 책 전반을 이해하기에는 충분하지 않을까 합니다.
 
- CHAPTER 2 쿠브플로 아키텍처와 모범 사례
쿠브플로 개요와 사례를 다룹니다. 특히 중요한 게 주피터 노트북 아키텍처입니다. 모델 개발자(데이터과학자)에게 맞춤형 분석환경을 용도에 따라 여러 벌 만들어 줄 수 있는 유용한 인프라를 구축할 수 있습니다. 노트북 환경만 생각하면 Jupyter Notebook on K8S 같은 오픈소스 프로젝트를 써도 좋습니다. 지금 저희 팀이 이렇게도 잘 쓰고 있습니다. 다만 pipeline과 model serving도 감안하면 Kubeflow가 좀 더 손이 덜 가는 방안이 될 수 있습니다.
 
- CHAPTER 3 쿠브플로 설치 계획
상당히 본격적인 내용입니다. 다소 폐쇄적이어도 무방한 학교, 연구소와는 달리 기업에서는 보안을 중요시해야 하는데, 이 3장에서는 보안과 더불어 GPU, Docker 컨테이너 등 이론적인 설명을 많이 합니다.
 
- CHAPTER 4 온프레미스에 쿠브플로 설치
이제 본격적으로 실습을 하는 장입니다. 쿠버네티스를 비롯해서 쿠브플로도 서버가 넉넉하지 못하면 실습하기가 참 어렵습니다. 팀원들도 서버 몇 대만으로는 한계가 있으니 라즈베리파이까지 동원해서 연습해보더군요. 온프레미스(다시 말해, PC)에 쿠브플로를 설치하여 실습하는 데에는 한계가 많긴 합니다. 그렇다 해도 팀장 입장에서는 지원자가 이 정도만 했다고 해도 엄청나게 환영할 만한 수준이라고 봅니다. 가능하다면 AWS S3 호환 object storage 솔루션인 MinIO 서버까지 구축해서 연동하여 써보는 것도 좋겠습니다.
 
- CHAPTER 5 구글 클라우드 쿠브플로 운영
- CHAPTER 6 아마존 웹 서비스 쿠브플로 운영
- CHAPTER 7 애저 쿠브플로 운영
퍼블릭 클라우드의 쿠버네티스 PaaS에 쿠브플로를 설치하고 구동해보는 실습입니다. 학생이라면 호시탐탐 기회를 노려 무료 크레디트같은 걸 많이 확보하여 실습하는 게 좋겠습니다. GCP는 써본 적이 없어도 AWS EKS, MS Azure AKS는 써봤습니다. 비용이 보통 VM 쓰는 것보다 상당히 나가는 편입니다. 조심할 필요가 있습니다.  

- CHAPTER 8 모델 서빙과 통합
MLOps라면 응당 구현해야 할 model serving을 다룹니다. 이 책에서 설명하는 KFServing 외에 Seldon core나 BentoML도 있습니다. 제 느낌에는 셀던 코어 사례가 좀 더 많습니다. 실습하기도 보통 일이 아니니 개념 익히기까지만 해도 성공적이라고 봅니다.
 
- Appendix A 인프라스트럭처 개념 
- Appendix B 쿠버네티스 개요 
- Appendix C 이스티오 운영과 쿠브플로
부록이 없었다면 이 책은 여러 독자들에게 극도로 불친절한 문서 묶음이었을 수도 있습니다. 인증, 보안 같은 주요 인프라 요소, 쿠버네티스 기본지식, Istio를 기반으로 한 네트워크 관리(카나리 배포에 필수)와 같은 배경지식을 다룹니다. 저는 웹 서버를 비롯해서 네트워크 관련해서는 전문가에게 맡기는 편입니다. 부록에서 다루는 개념을 다 잘 아는 사람은 드뭅니다. 어렵게 느껴진다 해도 그런가 보다 하고 완독하기를 권합니다. 실제 일이 될 때에 익숙해질 기술들입니다. 용어의 향연에 짓눌리지는 않길 바랍니다. 잘 해나갈 수 있습니다.

댓글(0) 먼댓글(0) 좋아요(1)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo