클러스터를 만들면 HDFS가 기본 파일 시스템으로 사용됩니다. defaultFS를 Cloud Storage 버킷으로 설정하면 이 동작을 재정의할 수 있습니다. 기본적으로 Managed Service for Apache Spark는 프로젝트에 Cloud Storage 스테이징 및 Cloud Storage 임시 버킷을 만들거나 이전 클러스터 만들기 요청의 기존 Managed Service for Apache Spark로 생성된 스테이징 및 임시 버킷을 다시 사용합니다.
스테이징 버킷: 클러스터 작업 종속 항목, 작업 드라이버 출력, 클러스터 구성 파일을 스테이징하기 위해 사용됩니다. 또한 스냅샷 진단 데이터 수집의 출력을 수신합니다.
임시 버킷: Spark 및 맵리듀스 기록 파일과 같은 임시 클러스터 및 작업 데이터를 저장하기 위해 사용됩니다. 클러스터 수명 주기 중에 수집된 체크포인트 진단 데이터 도 저장합니다.
클러스터를 만들 때 스테이징 또는 임시 버킷을 지정하지 않으면 Managed Service for Apache Spark는 클러스터가 배포된 Compute Engine 영역에 따라 클러스터의 스테이징 및 임시 버킷에 대해 Cloud Storage 위치(미국, 아시아, 또는 EU)를 설정한 다음 이러한 프로젝트 수준, 위치별 버킷을 만들고 관리합니다. Managed Service for Apache Spark에서 만든 스테이징 및 임시 버킷은 동일 리전에 있는 클러스터 간에 공유되며 Cloud Storage 소프트 삭제 보관 기간이 0초로 설정된 상태로 생성됩니다. 자체 스테이징 및 임시 버킷을 지정하는 경우 소프트 삭제된 객체로 인해 발생하는 스토리지 요금을 줄이기 위해 소프트 삭제 보관을 조정하는 것이 좋습니다.
임시 버킷에는 임시 데이터가 포함되며 TTL은 90일입니다. 여러 클러스터에 필요한 구성 데이터 및 종속 항목 파일을 포함할 수 있는 스테이징 버킷에는 TTL이 없습니다. 그러나 스테이징 버킷 폴더에 있는 '.jar' 파일 이름 확장자를 가진 파일인 종속 항목 파일에 수명 주기 규칙을 적용하여 클러스터에 더 이상 필요 없을 때 종속 항목 파일을 삭제하도록 예약할 수 있습니다.
자체 스테이징 및 임시 버킷 만들기
기본 스테이징 및 임시 버킷 생성을 사용하는 대신 Managed Service for Apache Spark가 클러스터의 스테이징 및 임시 버킷으로 사용할 기존 Cloud Storage 버킷을 지정할 수 있습니다.
Google Cloud 콘솔
클러스터 스테이징 버킷을 지정하거나 선택하려면 다음 단계를 따르세요.
- 클러스터 만들기 페이지를 엽니다.
- 추가 구성 을 클릭하여 이 섹션을 펼칩니다.
- 맞춤설정 및 기타 를 수정합니다.
- 열리는 패널의 Cloud Storage 스테이징 버킷 섹션에서 버킷을 지정합니다.
참고: Google Cloud 콘솔 을 사용한 임시 버킷 지정은 지원되지 않습니다.
gcloud CLI
터미널 창 또는 Cloud Shell에서
--bucket
또는
--temp-bucket
플래그를 사용하여 gcloud dataproc clusters create 명령어를 실행하여 클러스터의 스테이징 또는 임시 버킷을 지정합니다.
gcloud dataproc clusters create cluster-name \ --region=region \ --bucket=bucket-name \ --temp-bucket=bucket-name \ other args ...
REST API
clusters.create 요청에서 ClusterConfig.configBucket 및
ClusterConfig.tempBucket
필드를 사용하여 클러스터의 스테이징 및 임시 버킷을 지정합니다.
Managed Service for Apache Spark는 클러스터에 연결된 Cloud Storage 버킷에 대해 정의된 폴더 구조를 사용하며, 버킷에 둘 이상의 클러스터를 연결하는 것도 지원합니다. Cloud Storage에 작업 드라이버 출력을 저장하는 데 사용되는 폴더 구조는 다음과 같습니다.
cloud-storage-bucket-name
- google-cloud-dataproc-metainfo
- list of cluster IDs
- list of job IDs
- list of output logs for a job
gcloud 명령줄 도구, Dataproc API 또는
Google Cloud 콘솔을 사용하여 클러스터의 스테이징 및 임시 버킷 이름을 나열할 수 있습니다.
Google Cloud 콘솔
- 콘솔의 Google Cloud 클러스터 페이지에서 클러스터 스테이징 버킷의 이름을 포함하여 클러스터 세부정보를 볼 수 있습니다.
- 콘솔 Cloud Storage 브라우저 페이지에서 'dataproc-temp-'가 포함된 결과를 필터링합니다. Google Cloud
gcloud CLI
터미널 창 또는
Cloud Shell에서 로컬로
gcloud dataproc clusters describe
명령어를 실행합니다.
클러스터와 연결된 스테이징 및 임시 버킷이 출력에 나열됩니다.
gcloud dataproc clusters describe cluster-name \
--region=region \
...
clusterName: cluster-name
clusterUuid: daa40b3f-5ff5-4e89-9bf1-bcbfec ...
config:
configBucket: dataproc-...
...
tempBucket: dataproc-temp...
REST API
clusters.get을 호출하여 클러스터의 스테이징 및 임시 버킷의 이름을 포함하여 클러스터 세부정보를 나열합니다.
{
"projectId": "vigilant-sunup-163401",
"clusterName": "cluster-name",
"config": {
"configBucket": "dataproc-...",
...
"tempBucket": "dataproc-temp-...",
}
defaultFS
core:fs.defaultFS를 Cloud Storage(gs://defaultFS-bucket-name)의 버킷 위치로 설정하여 Cloud Storage를 기본 파일 시스템으로 설정할 수 있습니다. 이렇게 하면 모든 파일에 대해 Cloud Storage 커넥터에 의해 반환되는 보고된 권한인 core:fs.gs.reported.permissions가 777로 설정됩니다.
Cloud Storage가 기본 파일 시스템으로 설정되지 않은 경우 HDFS가 사용되며, core:fs.gs.reported.permissions 속성이 기본값 700을 반환합니다.
gcloud dataproc clusters create cluster-name \ --properties=core:fs.defaultFS=gs://defaultFS-bucket-name \ --region=region \ --bucket=staging-bucket-name \ --temp-bucket=temp-bucket-name \ other args ...