노트북 사용
노트북 지원 이미지
카카오클라우드 Kubeflow에서 지원하는 노트북 이미지는 다음과 같으며, 필요한 ML 프레임워크가 없을 경우 사용자 정의 도커 이미지를 사용할 수 있습니다.
이미지 레지스트리 엔드포인트는 bigdata-150.kr-central-2.kcr.dev/kc-kubeflow/(이미지명)
입니다.
예를 들어, jupyter-pytorch-full:v1.0.1.py38 이미지의 Pull을 원하실 경우 bigdata-150.kr-central-2.kcr.dev/kc-kubeflow/jupyter-pytorch-full:v1.0.1.py38
로 PULL을 받으시면 됩니다.
지원 노트북 정보
이미지명 | 파이썬버전 | 프레임워크 (버전) | GPU 지원 | HDE지원 |
---|---|---|---|---|
jupyter-pytorch-full:v1.0.1.py36 | python 3.6.9 | pytorch(1.8.1) | X | X |
jupyter-pytorch-full:v1.0.1.py38 | python 3.8.13 | pytorch(1.13.1) | X | X |
jupyter-pytorch-cuda-full:v1.0.1.py36 | python 3.6.9 | pytorch(1.8.1) | O | X |
jupyter-pytorch-cuda-full:v1.0.1.py38 | python 3.8.13 | pytorch(1.13.1) | O | X |
jupyter-tensorflow-full:v1.0.1.py36 | python 3.6.9 | tensorflow(2.5.2) | X | X |
jupyter-tensorflow-full:v1.0.1.py38 | python 3.8.13 | tensorflow(2.11.0) | X | X |
jupyter-tensorflow-cuda-full:v1.0.1.py36 | python 3.6.9 | tensorflow(2.5.2) | O | X |
jupyter-tensorflow-cuda-full:v1.0.1.py38 | python 3.8.13 | tensorflow(2.11.0) | O | X |
jupyter-pyspark-pytorch:v1.0.1.py36 | python 3.6.9 | pytorch(1.8.1) | X | O |
jupyter-pyspark-pytorch:v1.0.1.py38 | python 3.8.13 | pytorch(1.13.1) | X | O |
jupyter-pyspark-pytorch-cuda:v1.0.1.py36 | python 3.6.9 | pytorch(1.8.1) | O | O |
jupyter-pyspark-pytorch-cuda:v1.0.1.py38 | python 3.8.13 | pytorch(1.13.1) | O | O |
jupyter-pyspark-tensorflow:v1.0.1.py36 | python 3.6.9 | tensorflow(2.5.2) | X | O |
jupyter-pyspark-tensorflow:v1.0.1.py38 | python 3.8.13 | tensorflow(2.11.0) | X | O |
jupyter-pyspark-tensorflow-cuda:v1.0.1.py36 | python 3.6.9 | tensorflow(2.5.2) | O | O |
jupyter-pyspark-tensorflow-cuda:v1.0.1.py38 | python 3.8.13 | tensorflow(2.11.0) | O | O |
노트북 인스턴스 생성
ML 코드를 실행하고 데이터를 처리할 때 필요한 컴퓨팅 환경을 구축하기 위해서 원하는 사양으로 노트북 인스턴스를 생성합니다.
-
Kubeflow 대시보드에 접속합니다.
- Kubeflow 대시보드 접근에 대한 자세한 설명은 Kubeflow 대시보드 접근 문서를 참고하시기 바랍니다.
-
좌측에 위치한 Notebooks 탭을 선택합니다.
-
우측 상단에 위치한 [New Notebook] 버튼을 클릭합니다.
Kubeflow 대시보드에서 Notebooks 탭 접근하기
-
New Notebook 화면에서 필요한 정보를 입력하고 [LAUNCH] 버튼을 클릭하여 노트북 인스턴스를 생성합니다.
- 특정 이미지 기반 노트북 생성이 필요한 경우 아래 가이드에서 확인해 주세요.
노트북 인스턴스 생성하기
항목 구분 설명 Name Name Kubeflow 대시보드에서 노트북 인스턴스 식별에 사용 Namespace 노트북 인스턴스를 생성할 Kubernetes 네임스페이스 Docker Image Image mlops-pipelines/jupyter-pyspark-tensorflow:v1.0.1
- Docker 이미지 지정CPU / RAM Requested CPUs 2
- CPU 코어의 수이며, 노트북 인스턴스가 사용할 CPU 자원의 양 지정Requested memory in Gi 8
- 메모리 자원의 단위(GiB)이며 노트북 인스턴스가 사용할 메모리 자원의 양 지정Affinity / Tolerations Affinity Config None
- 노트북 인스턴스 실행할 노드 지정Tolerations Group None
- 특정 노드의 테인트(taint) 허용 설정
Requested CPU와 Requested memory in Gi의 값은 Affinity Config에서 선택한 노드 풀의 vCPU(개)와 Memory(GB)보다 작아야 합니다.
CPU 이미지 기반 노트북 생성
CPU 이미지 기반의 노트북을 생성하는 방법은 다음과 같습니다.
-
Kubeflow 대시보드에 접속하여 Notebooks 탭을 클릭한 후, [New Notebook] 버튼을 클릭합니다.
-
New notebook 화면에서 필요한 정보를 입력하고 [LAUNCH] 버튼을 클릭하여 CPU 이미지 기반의 노트북 인스턴스를 생성합니다.
항목 구분 설명 Name Name Kubeflow 대시보드에서 노트북 인스턴스 식별에 사용 Namespace 노트북 인스턴스가 배포될 쿠버네티스 네임스페이스 지정 Docker Image Image mlops-pipelines/jupyter-pyspark-tensorflow:v1.0.1
- Docker 이미지 지정CPU / RAM Requested CPUs 2
- CPU 코어의 수이며, 노트북 인스턴스가 사용할 CPU 자원의 양 지정Requested memory in Gi 8
- 메모리 자원의 단위(GiB)이며 노트북 인스턴스가 사용할 메모리 자원의 양 지정GPUs Number of GPUs None
- 노트북 인스턴스에서 사용할 GPU 자원Affinity / Tolerations Affinity Config CPU 인스턴스 유형으로 생성된 노트북 노드 선택
- 노트북 인스턴스 실행할 노드 지정Tolerations Group None
- 특정 노드의 테인트(taint) 허용 설정
GPU 이미지 기반 노트북 생성
GPU 이미지 기반의 노트북을 생성하는 방법은 다음과 같습니다.
-
Kubeflow 대시보드에 접속하여 Notebooks 탭을 클릭한 후, [New Notebook] 버튼을 클릭합니다.
-
New Notebook 필요한 정보를 입력하고 [LAUNCH] 버튼을 클릭하여 GPU 이미지 기반의 노트북 인스턴스를 생성합니 다.
항목 구분 설명 Name Name Kubeflow 대시보드에서 노트북 인스턴스 식별에 사용 Namespace 노트북 인스턴스를 생성할 Kubernetes 네임스페이스 Docker Image Image mlops-pipelines/jupyter-pyspark-pytorch-cuda:v1.0.1
- Docker 이미지 지정CPU / RAM Requested CPUs 2
- CPU 코어의 수이며, 노트북 인스턴스가 사용할 CPU 자원의 양 지정Requested memory in Gi 8
- 메모리 자원의 단위(GiB)이며 노트북 인스턴스가 사용할 메모리 자원의 양 지정GPUs Number of GPUs 1
- 노트북 인스턴스에서 사용할 GPU 자원GPU Vendor NVIDIA MIG - 1g.10gb
- 고유한 GPU 드라이버 및 소프트웨어 툴킷 선택Affinity / Tolerations Affinity Config GPU 인스턴스 유형으로 생성된 노트북 노드 선택
- 노트북 인스턴스 실행할 노드 지정Tolerations Group None
- 특정 노드의 테인트(taint) 허용 설정
노트북 인스턴스 접속
-
Kubeflow 대시보드에 접속합니다.
- Kubeflow 대시보드 접근에 대한 자세한 설명은 Kubeflow 대시보드 접근 문서를 참고하시기 바랍니다.
-
좌 측에 위치한 Notebooks 탭을 선택합니다.
-
생성한 Notebooks 목록에서 접속하고자 하는 Notebook 항목에서 [CONNECT] 버튼을 클릭합니다.
Notebook 접속하기
-
[CONNECT] 버튼 클릭 시 새로운 탭이 열리고 해당 노트북 인스턴스에 대한 Jupyter Notebook 인터페이스가 표시됩니다.
- 노트북을 열고 코드를 작성하거나 머신러닝 모델을 실행할 수 있습니다.
Jupyter Notebook 인터페이스
노트북 인스턴스 중지
주로 자원 절약, 보안, 비용 절감, 환경 관리 등의 이유로 노트북 인스턴스를 중지합니다. 또한 노트북 인스턴스가 계속 실행 중이면 다른 작업에 자원을 할당할 수 없으며 보안상의 문제와 비용 증가 등이 발생할 수 있습니다.
-
Kubeflow 대시보드에 접속합니다.
- Kubeflow 대시보드 접근에 대한 자세한 설명은 Kubeflow 대시보드 접근 문서를 참고하시기 바랍니다.
-
좌측에 위치한 Notebooks 탭을 선택합니다.
노트북 중지 버튼 안내
-
Notebooks 목록에서 중지하고자 하는 노트북의 행에서 ◼(중지) 버튼을 클릭합니다.
- 중지 안내 모달이 나오면 [STOP] 버튼을 클릭합니다.
노트북 중지 확인
-
Notebooks 목록에서 중지한 노트북의 상태(Status)가 정상적으로 중지되었는지 확인합니다.
노트북 중지 확인
노트북 인스턴스 삭제
주로 자원 회수, 보안, 비용 절감, 환경 관리 등의 이유로 노트북 인스턴스를 삭제합니다. 또한 노트북 인스턴스가 삭제되면 해당 자원이 회수되어 다른 작업에 자원을 할당할 수 있게 됩니다.
-
Kubeflow 대시보드에 접속합니다.
- Kubeflow 대시보드 접근에 대한 자세한 설명은 Kubeflow 대시보드 접근 문서를 참고하시기 바랍니다.
-
좌측에 위치한 Notebooks 탭을 선택합니다.
노트북 삭제 버튼 안내
-
Notebooks 목록에서 중지하고자 하는 노트북의 행에서 삭제(휴지통) 버튼을 클릭합니다.
- 삭제 안내 모달이 나오면 [DELETE] 버튼을 클릭합니다
노트북 삭제 안내
-
Notebooks 목록에서 삭제한 노트북이 존재하지 않은 것을 확인합니다.
노트북 삭제 확인
- 삭제된 노트북 인스턴스명은 재사용이 불가합니다.
- 재사용이 필요하신 경우에는 카카오클라우드 Kubernetes Engine 서비스의 클러스터에서
{노트북 인스턴스명}_volume
의 PVC를 삭제한 후 생성하시기 바랍니다.
- 자세한 설명은 Kubeflow > Notebook 공식 문서를 확인해 주세요.
- Kubeflow 서비스를 활용한 더 많은 사용 예제는 튜토리얼의 Machine Learning & AI 카테고리에서 확인할 수 있습니다.