Dataproc은 Compute Engine 리전을 기반으로 리전 엔드포인트를 지원합니다. Dataproc 클러스터를 만들 때 'us-east1' 또는 'europe-west1'과 같은 리전을 지정해야 합니다. Dataproc은 지정된 리전 내 영역 내에서 VM 인스턴스, Cloud Storage와 같은 클러스터 리소스와 메타데이터 스토리지를 격리합니다.
필요에 따라 클러스터를 만들 때 지정된 클러스터 리전 내에서 'us-east1-a' 또는 'europe-west1-b'와 같은 영역을 지정할 수 있습니다. 영역을 지정하지 않으면 Dataproc 자동 영역 배치가 지정된 클러스터 리전 내에서 클러스터 리소스를 찾을 영역을 선택합니다.
리전 네임스페이스는 Dataproc 리소스 URI의 /regions/REGION
세그먼트에 해당합니다(예시는 클러스터 networkUri
참조).
리전 엔드포인트의 시맨틱스
리전 엔드포인트 이름은 Compute Engine 리전을 기반으로 표준 명명 규칙을 따릅니다.
예를 들어 미국 중부 리전의 이름은 us-central1
이고 서유럽 리전의 이름은 europe-west1
입니다. gcloud compute regions list
명령어를 실행하면 사용 가능한 리전의 목록을 확인할 수 있습니다.
클러스터 만들기
gcloud
클러스터를 만들 때 필수 --region
플래그를 사용하여 리전을 지정합니다.
gcloud dataproc clusters create CLUSTER_NAME \ --region=REGION \ other args ...
REST API
clusters.create 요청에 REGION
URL 매개변수를 사용하여 클러스터 리전을 지정합니다.
gRPC
다음 패턴을 사용하여 클라이언트 전송 주소를 리전 엔드포인트로 설정합니다.
REGION-dataproc.googleapis.com
Python(google cloud-python) 예시:
from google.cloud import dataproc_v1
from google.cloud.dataproc_v1.gapic.transports import cluster_controller_grpc_transport
transport = cluster_controller_grpc_transport.ClusterControllerGrpcTransport(
address='us-central1-dataproc.googleapis.com:443')
client = dataproc_v1.ClusterControllerClient(transport)
project_id = 'my-project'
region = 'us-central1'
cluster = {...}
자바(google-cloud-java) 예시:
ClusterControllerSettings settings =
ClusterControllerSettings.newBuilder()
.setEndpoint("us-central1-dataproc.googleapis.com:443")
.build();
try (ClusterControllerClient clusterControllerClient = ClusterControllerClient.create(settings)) {
String projectId = "my-project";
String region = "us-central1";
Cluster cluster = Cluster.newBuilder().build();
Cluster response =
clusterControllerClient.createClusterAsync(projectId, region, cluster).get();
}
콘솔
Google Cloud 콘솔에서 Dataproc 클러스터 만들기 페이지의 클러스터 설정 패널에서 위치 섹션에 Dataproc 리전을 지정합니다.