관리되는 클러스터에서 워크플로를 실행하는 대신 클러스터 선택기를 사용하여 워크플로에 기존 클러스터를 선택할 수 있습니다. 워크플로가 끝나면 선택한 클러스터가 삭제되지 않습니다.
선택기는 하나 이상의 Dataproc 사용자 라벨을 지정합니다. 라벨이 모든 선택기 라벨과 일치하는 워크플로와 동일한 리전에 있는 클러스터는 워크플로 작업을 실행할 수 있습니다. 여러 클러스터가 선택기와 일치하면 Dataproc은 여유 YARN 메모리가 가장 많은 클러스터를 선택합니다.
템플릿에 클러스터 선택기 추가
Google Cloud CLI 또는 Dataproc API를 사용하여 워크플로 템플릿에 클러스터 선택기를 추가할 수 있습니다.
gcloud 명령어
gcloud dataproc workflow-templates set-cluster-selector template-id \ --region=region \ --cluster-labels=name=value[[,name=value]...]
REST API
WorkflowTemplatePlacement.ClusterSelector를 참조하세요. 이 필드는 workflowTemplates.create 또는 workflowTemplates.update 요청으로 제출된 완료된 WorkflowTemplate의 일부로 제공됩니다.콘솔
Google Cloud 콘솔의 Dataproc 워크플로 페이지에서 기존 워크플로 템플릿과 인스턴스화된 워크플로를 볼 수 있습니다.
자동으로 적용되는 라벨 사용
다음과 같은 자동으로 적용되는 클러스터 라벨 중 하나를 사용하여 클러스터 선택기가 기존 클러스터를 가리키도록 할 수 있습니다.
goog-dataproc-cluster-name
goog-dataproc-cluster-uuid
예:
gcloud dataproc workflow-templates set-cluster-selector template-id \ --region=region \ --cluster-labels=goog-dataproc-cluster-name=my-cluster
클러스터 풀에서 선택
Dataproc이 클러스터 풀에서 클러스터를 선택하도록 할 수 있습니다. 클러스터 풀은 라벨로 정의할 수 있습니다.
예:
gcloud dataproc clusters create cluster-1 --labels cluster-pool=pool-1 \ --region=region gcloud dataproc clusters create cluster-2 --labels cluster-pool=pool-1 \ --region=region gcloud dataproc clusters create cluster-3 --labels cluster-pool=pool-2 \ --region=region
클러스터 생성 후...
gcloud dataproc workflow-templates create my-template \ --region=region gcloud dataproc workflow-templates set-cluster-selector my-template \ --region=region \ --cluster-labels=cluster-pool=pool-1
워크플로는 클러스터 1 또는 클러스터 2에서 실행되지만 클러스터 3에서는 실행되지 않습니다.