본문으로 건너뛰기

노트북 사용

노트북 지원 이미지

Kakaocloud Kubeflow의 노트북 인스턴스는 웹기반 머신러닝 개발 환경을 제공합니다.
노트북 인스턴스는 도커 이미지를 기반으로 실행되며, 현재 Kakaocloud Kubeflow에서는 다음과 같은 이미지를 제공하고 있습니다.

안내

이미지 레지스트리 엔드포인트는 bigdata-150.kr-central-2.kcr.dev/kc-kubeflow/(이미지명)입니다.
예를 들어, jupyter-scipy:v1.8.0.py38.1a 이미지의 Pull을 원하실 경우 bigdata-150.kr-central-2.kcr.dev/kc-kubeflow/jupyter-scipy:v1.8.0.py38.1a로 PULL을 받으시면 됩니다.

지원 노트북 정보

이미지파이썬 버전플랫폼프레임워크 (버전)GPU 지원HDE지원
kc-kubeflow/jupyter-scipy:v1.8.0.py38.1apython 3.8.10JupyterLabscipy(1.10.1)XX
kc-kubeflow/jupyter-scipy:v1.8.0.py311.1apython 3.11.9JupyterLabscipy(1.11.3)XX
kc-kubeflow/jupyter-pytorch-full:v1.8.0.py38.1apython 3.8.10JupyterLabpytorch(2.3.0)XX
kc-kubeflow/jupyter-pytorch-full:v1.8.0.py311.1apython 3.11.9JupyterLabpytorch(2.3.0)XX
kc-kubeflow/jupyter-pytorch-cuda-full:v1.8.0.py38.1apython 3.8.10JupyterLabpytorch(2.3.0)OX
kc-kubeflow/jupyter-pytorch-cuda-full:v1.8.0.py311.1apython 3.11.9JupyterLabpytorch(2.3.0)OX
kc-kubeflow/jupyter-tensorflow-full:v1.8.0.py38.1apython 3.8.10JupyterLabtensorflow(2.13.1)XX
kc-kubeflow/jupyter-tensorflow-full:v1.8.0.py311.1apython 3.11.9JupyterLabtensorflow(2.15.1)XX
kc-kubeflow/jupyter-tensorflow-cuda-full:v1.8.0.py38.1apython 3.8.10JupyterLabtensorflow(2.13.1)OX
kc-kubeflow/jupyter-tensorflow-cuda-full:v1.8.0.py311.1apython 3.11.9JupyterLabtensorflow(2.15.1)OX
kc-kubeflow/jupyter-pyspark-pytorch:v1.8.0.py38.1apython 3.8.10JupyterLabpytorch(2.3.0)XO
kc-kubeflow/jupyter-pyspark-pytorch:v1.8.0.py311.1apython 3.11.9JupyterLabpytorch(2.3.0)XO
kc-kubeflow/jupyter-pyspark-pytorch-cuda:v1.8.0.py38.1apython 3.8.10JupyterLabpytorch(2.3.0)OO
kc-kubeflow/jupyter-pyspark-pytorch-cuda:v1.8.0.py311.1apython 3.11.9JupyterLabpytorch(2.3.0)OO
kc-kubeflow/jupyter-pyspark-tensorflow:v1.8.0.py38.1apython 3.8.10JupyterLabtensorflow(2.13.1)XO
kc-kubeflow/jupyter-pyspark-tensorflow:v1.8.0.py311.1apython 3.11.9JupyterLabtensorflow(2.15.1)XO
kc-kubeflow/jupyter-pyspark-tensorflow-cuda:v1.8.0.py38.1apython 3.8.10JupyterLabtensorflow(2.13.1)OO
kc-kubeflow/jupyter-pyspark-tensorflow-cuda:v1.8.0.py311.1apython 3.11.9JupyterLabtensorflow(2.15.1)OO
kc-kubeflow/codeserver-python:v1.8.0.py38.1apython 3.8.10CodeServerXX
kc-kubeflow/codeserver-python:v1.8.0.py311.1apython 3.11.9CodeServerXX

노트북 인스턴스 생성

머신러닝 코드를 실행하고 데이터를 처리할 때 필요한 컴퓨팅 환경을 구축하기 위해서 원하는 사양으로 노트북 인스턴스를 생성합니다.

  1. Kubeflow 대시보드에 접속합니다.

  2. 좌측에 위치한 Notebooks 탭을 선택합니다.

  3. 우측 상단에 위치한 [New Notebook] 버튼을 클릭합니다.

    이미지. Kubeflow 대시보드에서 Notebooks 탭 접근하기 Kubeflow 대시보드에서 Notebooks 탭 접근하기

  4. New Notebook 화면에서 필요한 정보를 입력하고 [LAUNCH] 버튼을 클릭하여 노트북 인스턴스를 생성합니다.

    • 특정 이미지 기반 노트북 생성이 필요한 경우 아래 가이드에서 확인해 주세요.
    항목구분설명
    NameNameKubeflow 대시보드에서 노트북 인스턴스 식별에 사용
    Platform Type노트북 인스턴스의 웹 개발 플랫폼 유형
    유형 종류: JupyterLab, VisualStudio Code, RStudio
    *도메인 연결이 안 된 Kubeflow의 경우 VisualStudio Code, RStudio가 정상 동작하지 않을 수 있습니다.
    Custom NootebookImageKakaocloud Kubeflow 지원 노트북 이미지 지정
    Custom Image체크박스 선택 시, 사용자 정의 이미지를 입력할 수 있음
    - 사용자 정의 이미지 예시: bigdata-150.kr-central-2.kcr.dev/kc-kubeflow/jupyter-pytorch-full:v1.0.1.py38
    Image Pull Policy노트북 인스턴스 시작 시 이미지를 가져오는 정책 지정
    CPU / RAMMinimum CPU노트북 인스턴스에 할당될 최소 CPU
    - 1.6 버전의 경우 Requested CPUs로 노출됩니다.
    Minimum Memory Gi노트북 인스턴스에 할당될 최소 메모리
    - 1.6 버전의 경우 Requested memory in Gi로 노출됩니다.
    Maximum CPU노트북 인스턴스에 할당될 최대 CPU
    - 1.6 버전의 경우 CPU limit으로 노출됩니다.
    Maximum Memory Gi노트북 인스턴스에 할당될 최대 CPU
    - 1.6 버전의 경우 Memory limit in Gi로 노출됩니다.
    GPUsNumber of GPUs노트북 인스턴스에서 사용할 GPU 리소스의 수
    GPU Vendor가용 GPU 인스턴스 종류
    Workspace Volume노트북 인스턴스의 Home 디렉터리에 마운트 시킬 볼륨 지정
    - 신규 볼륨을 생성하거나 기존 볼륨으로 지정할 수 있음
    Data Volume노트북 인스턴스에 마운트될 추가적인 볼륨을 등록
    - 신규 볼륨을 생성하거나 기존 볼륨으로 지정할 수 있으며, 등록 시 노트북 인스턴스에 마운트 될 경로 역시 지정 가능
    Configurations현재 네임스페이스에 등록되어 있는 PodDefault 리소스를 등록
    Affinity / TolerationsAffinity Config노트북 인스턴스 실행할 노드 지정
    Tolerations Group노트북 인스턴스에 적용될 Tolerations를 지정
    - 선택 가능한 Tolerations의 목록은 Kubeflow가 설치된 KE 내부의 ConfigMap에서 정의되고 있음
    Miscellaneous SettingsEnable Shared MemoryTorch 등의 프레임워크에서 요구되는 공유 메모리를 지원하기 위한 우회 기능 활성화
    - /dev/shm에 빈 디렉터리 볼륨을 마운트함
주의

Minimum CPU, Memory Gi 값이 Affinity Config에서 선택한 노드 풀의 가용량보다 큰 경우 노트북 인스턴스가 생성되지 않습니다.

CPU 이미지 기반 노트북 생성

CPU 이미지 기반의 노트북을 생성하는 방법은 다음과 같습니다.

  1. Kubeflow 대시보드에 접속하여 Notebooks 탭을 클릭한 후, [New Notebook] 버튼을 클릭합니다.

  2. New notebook 화면에서 필요한 정보를 입력하고 [LAUNCH] 버튼을 클릭하여 CPU 이미지 기반의 노트북 인스턴스를 생성합니다.

    항목구분설명
    NameNameKubeflow 대시보드에서 노트북 인스턴스 식별에 사용
    Platform Type노트북 인스턴스의 웹 개발 플랫폼 유형
    유형 종류: JupyterLab, VisualStudio Code, RStudio
    Custom NootebookImageKubeflow 버전에 맞는 노트북 이미지 선택
    Custom Image체크박스 선택 시, 사용자 커스텀 이미지를 입력할 수 있음
    사용자 정의 이미지 예시: bigdata-150.kr-central-2.kcr.dev/kc-kubeflow/jupyter-pytorch-full:v1.0.1.py38
    Image Pull Policy노트북 인스턴스 시작 시 이미지를 가져오는 정책 지정
    CPU / RAMMinimum CPU2
    - 노트북 인스턴스에 할당될 최소 CPU
    Minimum Memory Gi8
    - 노트북 인스턴스에 할당될 최소 메모리
    Maximum CPU노트북 인스턴스에 할당될 최대 CPU
    Maximum Memory Gi노트북 인스턴스에 할당될 최대 CPU
    GPUsNumber of GPUsNone
    - 노트북 인스턴스에서 사용할 GPU 리소스의 수
    GPU Vendor가용 GPU 인스턴스 종류
    Workspace Volume노트북 인스턴스의 Home 디렉터리에 마운트 시킬 볼륨 지정
    - 신규 볼륨을 생성하거나 기존 볼륨으로 지정할 수 있음
    Data Volume노트북 인스턴스에 마운트될 추가적인 볼륨을 등록
    - 신규 볼륨을 생성하거나 기존 볼륨으로 지정할 수 있으며, 등록 시 노트북 인스턴스에 마운트 될 경로 역시 지정 가능
    Configurations현재 네임스페이스에 등록되어 있는 PodDefault 리소스를 등록
    Affinity / TolerationsAffinity ConfigCPU 인스턴스 유형으로 생성된 노트북 노드 선택
    - 노트북 인스턴스 실행할 노드 지정
    Tolerations GroupNone
    - 특정 노드의 테인트(taint) 허용 설정
    Miscellaneous SettingsEnable Shared MemoryTorch 등의 프레임워크에서 요구되는 공유 메모리를 지원하기 위한 우회 기능 활성화
    /dev/shm에 빈 디렉터리 볼륨을 마운트함

GPU 이미지 기반 노트북 생성

GPU 이미지 기반의 노트북을 생성하는 방법은 다음과 같습니다.

  1. Kubeflow 대시보드에 접속하여 Notebooks 탭을 클릭한 후, [New Notebook] 버튼을 클릭합니다.

  2. New Notebook 필요한 정보를 입력하고 [LAUNCH] 버튼을 클릭하여 GPU 이미지 기반의 노트북 인스턴스를 생성합니다.

    항목구분설명
    NameNameKubeflow 대시보드에서 노트북 인스턴스 식별에 사용
    Platform Type노트북 인스턴스의 웹 개발 플랫폼 유형
    유형 종류: JupyterLab, VisualStudio Code, RStudio
    Custom NootebookImageKubeflow 버전에 맞는 노트북 이미지 선택
    Custom Image체크박스 선택 시, 사용자 커스텀 이미지를 입력할 수 있음
    사용자 정의 이미지 예시: bigdata-150.kr-central-2.kcr.dev/kc-kubeflow/jupyter-pytorch-full:v1.0.1.py38
    Image Pull Policy노트북 인스턴스 시작 시 이미지를 가져오는 정책 지정
    CPU / RAMMinimum CPU2
    - 노트북 인스턴스에 할당될 최소 CPU
    Minimum Memory Gi8
    - 노트북 인스턴스에 할당될 최소 메모리
    Maximum CPU노트북 인스턴스에 할당될 최대 CPU
    Maximum Memory Gi노트북 인스턴스에 할당될 최대 CPU
    GPUsNumber of GPUs1
    - 노트북 인스턴스에서 사용할 GPU 리소스의 수
    GPU VendorNVIDIA MIG - 1g.10gb
    - 가용 GPU 인스턴스 종류
    Workspace Volume노트북 인스턴스의 Home 디렉터리에 마운트 시킬 볼륨 지정
    - 신규 볼륨을 생성하거나 기존 볼륨으로 지정할 수 있음
    Data Volume노트북 인스턴스에 마운트될 추가적인 볼륨을 등록
    - 신규 볼륨을 생성하거나 기존 볼륨으로 지정할 수 있으며, 등록 시 노트북 인스턴스에 마운트 될 경로 역시 지정 가능
    Configurations현재 네임스페이스에 등록되어 있는 PodDefault 리소스를 등록
    Affinity / TolerationsAffinity ConfigGPU 인스턴스 유형으로 생성된 노트북 노드 선택
    - 노트북 인스턴스 실행할 노드 지정
    Tolerations GroupNone
    - 특정 노드의 테인트(taint) 허용 설정
    Miscellaneous SettingsEnable Shared MemoryTorch 등의 프레임워크에서 요구되는 공유 메모리를 지원하기 위한 우회 기능 활성화
    - /dev/shm에 빈 디렉터리 볼륨을 마운트함

노트북 인스턴스 접속

  1. Kubeflow 대시보드에 접속합니다.

  2. 좌측에 위치한 Notebooks 탭을 선택합니다.

  3. 생성한 Notebooks 목록에서 접속하고자 하는 Notebook 항목에서 [CONNECT] 버튼을 클릭합니다.

    이미지. Notebook 접속하기 Notebook 접속하기

  4. [CONNECT] 버튼 클릭 시 새로운 탭이 열리고 해당 노트북 인스턴스에 대한 Jupyter Notebook 인터페이스가 표시됩니다.

    • 노트북을 열고 코드를 작성하거나 머신러닝 모델을 실행할 수 있습니다.

    이미지. Jupyter Notebook 인터페이스 Jupyter Notebook 인터페이스

노트북 인스턴스 중지

주로 자원 절약, 보안, 비용 절감, 환경 관리 등의 이유로 노트북 인스턴스를 중지합니다. 또한 노트북 인스턴스가 계속 실행 중이면 다른 작업에 리소스를 할당할 수 없으며 보안상의 문제와 비용 증가 등이 발생할 수 있습니다.

  1. Kubeflow 대시보드에 접속합니다.

  2. 좌측에 위치한 Notebooks 탭을 선택합니다.

    이미지. 노트북 중지 버튼 안내 노트북 중지 버튼 안내

  3. Notebooks 목록에서 중지하고자 하는 노트북의 행에서 ◼(중지) 버튼을 클릭합니다.

    • 중지 안내 모달이 나오면 [STOP] 버튼을 클릭합니다.

    이미지. 노트북 중지 안내 노트북 중지 확인

  4. Notebooks 목록에서 중지한 노트북의 상태(Status)가 정상적으로 중지되었는지 확인합니다.

    이미지. 노트북 중지 확인 노트북 중지 확인

노트북 인스턴스 삭제

주로 자원 회수, 보안, 비용 절감, 환경 관리 등의 이유로 노트북 인스턴스를 삭제합니다. 또한 노트북 인스턴스가 삭제되면 해당 리소스가 회수되어 다른 작업에 리소스를 할당할 수 있게 됩니다.

  1. Kubeflow 대시보드에 접속합니다.

  2. 좌측에 위치한 Notebooks 탭을 선택합니다.

    이미지. 노트북 삭제 버튼 안내 노트북 삭제 버튼 안내

  3. Notebooks 목록에서 중지하고자 하는 노트북의 행에서 삭제(휴지통) 버튼을 클릭합니다.

    • 삭제 안내 모달이 나오면 [DELETE] 버튼을 클릭합니다

    이미지. 노트북 삭제 안내 노트북 삭제 안내

  4. Notebooks 목록에서 삭제한 노트북이 존재하지 않은 것을 확인합니다.

    이미지. 노트북 삭제 확인 노트북 삭제 확인

주의
  • 삭제된 노트북 인스턴스명은 재사용이 불가합니다.
  • 재사용이 필요하신 경우에는 카카오클라우드 Kubernetes Engine 서비스의 클러스터에서 {노트북 인스턴스명}_volume의 PVC를 삭제한 후 생성하시기 바랍니다.
안내