Dataproc 선택적 Jupyter 구성요소

선택적 구성요소 기능을 사용하여 Dataproc 클러스터를 만들 때 Jupyter같은 추가 구성요소를 설치할 수 있습니다. 이 페이지에서는 Jupyter 구성요소에 대해 설명합니다.

Jupyter 구성요소는 대화형 데이터 분석을 위한 웹 기반 단일 사용자 노트북이며 JupyterLab 웹 UI를 지원합니다. Jupyter 웹 UI는 클러스터의 첫 번째 마스터 노드에 있는 포트 8123에서 사용할 수 있습니다.

여러 사용자를 위한 노트북 실행. Dataproc이 사용 설정된 Vertex AI Workbench 인스턴스를 만들거나 VM에 Dataproc JupyterLab 플러그인을 설치하여 여러 사용자에게 노트북을 제공할 수 있습니다.

Jupyter 구성. dataproc:jupyter 클러스터 속성을 제공하여 Jupyter를 구성할 수 있습니다. 보안되지 않은 노트북 서버 API에 대한 원격 코드 실행 위험을 줄이기 위해 기본 dataproc:jupyter.listen.all.interfaces 클러스터 속성 설정은 false인데, 이는 구성요소 게이트웨이가 사용 설정되었을 때(Jupyter 구성요소를 설치할 때 구성요소 게이트웨이 활성화 필수) localhost (127.0.0.1)로 연결을 제한하는 설정입니다.

Jupyter 메모장은 Spark 코드를 실행하는 Python 커널과 PySpark 커널을 제공합니다. 기본적으로 메모장은 사용자가 지정하거나 클러스터를 만들 때 자동 생성되는 Cloud Dataproc 스테이징 버킷의 Cloud Storage에 저장됩니다. 위치는 클러스터 생성 시 dataproc:jupyter.notebook.gcs.dir 클러스터 속성을 사용하여 변경할 수 있습니다.

데이터 파일을 사용한 작업. Jupyter 노트북을 사용하면 Cloud Storage에 업로드된 데이터 파일을 사용하여 작업할 수 있습니다. Cloud Storage 커넥터가 Dataproc 클러스터에 사전 설치되므로 메모장에서 직접 파일을 참조할 수 있습니다. 다음은 Cloud Storage에서 CSV 파일에 액세스하는 예시입니다.

df = spark.read.csv("gs://bucket/path/file.csv")
df.show()

PySpark 예시는 일반 로드 및 저장 함수를 참조합니다.

Jupyter 설치

Dataproc 클러스터를 만들 때 구성요소를 설치합니다. Jupyter 구성요소를 사용하려면 Dataproc 구성요소 게이트웨이를 활성화해야 합니다.

콘솔

  1. 구성요소를 사용 설정합니다.
    • Google Cloud 콘솔에서 Dataproc 클러스터 만들기 페이지를 엽니다. 클러스터 설정 패널이 선택되었습니다.
    • 구성요소 섹션에서 다음을 수행합니다.

gcloud CLI

Jupyter 구성요소가 포함된 Dataproc 클러스터를 만들려면 gcloud dataproc clusters create cluster-name 명령어를 --optional-components 플래그와 함께 사용합니다.

최신 기본 이미지 버전 예시

다음 예시에서는 최신 기본 이미지 버전을 사용하는 클러스터에 Jupyter 구성요소를 설치합니다.

gcloud dataproc clusters create cluster-name \
    --optional-components=JUPYTER \
    --region=region \
    --enable-component-gateway \
    ... other flags

REST API

Jupyter 구성요소는 clusters.create의 일부로서 SoftwareConfig.Component를 사용하여 Dataproc API를 통해 설치할 수 있습니다.

Jupyter 및 JupyterLab UI 열기

로컬 브라우저에서 클러스터 마스터 노드에서 실행되는 Jupyter 노트북 또는 JupyterLab UI를 열려면 Google Cloud Console 구성요소 게이트웨이 링크를 클릭합니다.

'GCS' 또는 '로컬 디스크'를 선택하여 두 위치 중 한 곳에 새로운 Jupyter 메모장을 만듭니다.

마스터 노드 및 워커 노드에 GPU 연결

Jupyter 노트북을 사용하여 클러스터의 마스터 및 워커 노드에 GPU를 추가할 수 있습니다.

  1. Spark에서 데이터를 사전 처리한 다음 마스터에 DataFrame을 수집하고 TensorFlow를 실행합니다.
  2. Spark를 사용하여 TensorFlow 실행을 동시에 조정하기
  3. Tensorflow-on-YARN 실행하기
  4. GPU를 사용하는 다른 머신 러닝 시나리오에서 사용하기