티스토리 뷰

Why Kubernetes?

본격적으로 Docker와 Kubernetes를 배우기에 앞서, Container와 Orchestration에 대해서 알아보자.

 

어떠한 서비스를 배포하는데, 모든 서비스가 특징이 다르다. A서비스는 많은 저장 용량이 필요하고, B서비스는 GPU가 필요하다. 이 도커를 담는(?) 컨테이너들의 capa를 관리하는 것이 오케스트레이션인데, 이 오케스트레이션 툴중 가장 많이 사용되는 것이 바로 Kubernetes이다.

Kubernetes는 16년 중순부터 꾸준히 50%이상을 점유해왔다. (출처 : https://www.cncf.io/blog/2018/08/29/cncf-survey-use-of-cloud-native-technologies-in-production-has-grown-over-200-percent/)

오케스트레이션이 없다면, 엔지니어가 각자의 모델 학습을 하려면 엔지니어끼리 스케줄을 공유하여 선점해야하고, GPU 자원을 실시간으로 모니터링하고 공유해야 한다. 이를 정해진 룰에 따라서 관리해주는 것이 컨테이너 오케스트레이션이다.

 

Docker 실습 환경

내 코드가 dockerize되어 있다면(도커 이미지 안에 있다면) 어느 환경에서도 실행시킬 수 있다. 도커는 컨테이너화 하는 기술이다. 머신러닝 엔지니어가 인프라까지 직접 핸들링하게 되면서 자연스럽게 MLOps 엔지니어링의 범위에 들어오게 되었다.

 

가상 환경 (with Oracle VirtualBox)

가상 리눅스 환경을 구축하기 위해서 VirtualBox를 설치하고, Ubuntu를 다운로드한다.

VirtualBox 설치

VirtualBox를 실행하고 새로 만들기를 선택한 후, 아래의 절차를 거친다.

Linux Ubuntu(64비트) 선택
만들기를 완료한 화면
설치가 예상보다 오래 걸린다

Root Password 설정

마지막으로, 시스템 Root의 패스워드까지 확인하면 리눅스 가상환경 설치가 완료된다.

terminal을 열어 비밀번호를 설정한다

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함