Apache Spark용 관리형 서비스 선택적 Jupyter 구성요소

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

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

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

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

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

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

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

PySpark 예시는 일반 로드 및 저장 기능을 참조합니다.

Jupyter 설치

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

Google Cloud 콘솔

  1. Google Cloud 콘솔에서 클러스터 만들기 페이지를 엽니다.
  2. 추가 구성을 클릭하여 해당 섹션을 펼칩니다.
  3. 선택적 구성요소를 수정합니다.
  4. 열린 패널에서 Jupyter Notebook 체크박스를 선택한 다음 Save를 클릭합니다.

gcloud CLI

Jupyter 구성요소가 포함된 Managed Service for Apache Spark 클러스터를 만들려면 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 콘솔 구성요소 게이트웨이 링크를 클릭합니다.

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

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

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

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