서비스 계정 사용자 권한 부여

이 페이지에서는 Dataproc 클러스터에서 파이프라인을 프로비저닝하고 실행할 수 있도록 Cloud Data Fusion에 Dataproc 서비스 계정 사용자 역할을 부여하는 방법을 설명합니다.

Dataproc에 사용되는 서비스 계정에는 Cloud Data Fusion 런타임 리소스에 액세스할 수 있는 datafusion.instances.runtime 권한도 부여해야 합니다.

클러스터의 가상 머신에서 사용자 관리 서비스 계정 또는 기본 Compute Engine 서비스 계정을 사용하는지에 관계없이 Cloud Data Fusion에 서비스 계정 사용자 역할을 부여해야 합니다. 그렇지 않으면 Cloud Data Fusion은 Dataproc 클러스터를 프로비저닝할 수 없으며 데이터 파이프라인을 실행할 때 다음 오류가 표시됩니다.

PROVISION task failed in REQUESTING_CREATE state for program run [pipeline-name] due to Dataproc operation failure: INVALID_ARGUMENT: User not authorized to act as service account '[service-account-name]'

서비스 계정 이름 가져오기

  1. Google Cloud Console에서 Identity and Access Management 페이지로 이동합니다.
    IAM 페이지로 이동
  2. 페이지 상단의 프로젝트 선택기에서 Cloud Data Fusion 인스턴스가 속한 프로젝트, 폴더, 조직을 선택합니다.
  3. Cloud Data Fusion 서비스 계정 이름을 찾아 복사합니다. service-[project-number]@gcp-sa-datafusion.iam.gserviceaccount.com 형식을 사용합니다.

서비스 계정 사용자 권한 부여

  1. Google Cloud 콘솔에서 서비스 계정 페이지로 이동합니다.
    서비스 계정 페이지로 이동
  2. 프로젝트 선택을 클릭하고 Dataproc 클러스터에 사용할 서비스 계정이 있는 프로젝트를 선택한 다음 열기를 클릭합니다.
  3. Dataproc 서비스 계정의 이메일 주소를 클릭합니다.

  4. 권한 탭을 클릭합니다. 이 페이지에는 서비스 계정에서 역할이 부여된 주 구성원 목록이 표시됩니다.

  5. 액세스 권한 부여를 클릭합니다.

  6. 새 주 구성원 필드에서 이전에 복사한 Cloud Data Fusion 서비스 계정 이름을 붙여넣습니다.

  7. 서비스 계정 사용자 역할을 선택합니다.

    서비스 계정 사용자

  8. 저장을 클릭합니다.

Dataproc 서비스 계정에 역할 부여

실행자 역할 권한 부여

Dataproc에 사용되는 서비스 계정에 Cloud Data Fusion 실행자 역할(roles/datafusion.runner)을 부여합니다. 이렇게 하면 Dataproc 서비스 계정이 프로젝트에서 Cloud Data Fusion 파이프라인을 실행할 수 있도록 승인됩니다. 자세한 내용은 리소스에 서비스 계정을 연결할 수 있는 권한 필요를 참조하세요.

Cloud Storage 관리자 권한 부여

Cloud Data Fusion 버전 6.2.0 이상에서는 Cloud Storage 관리자 역할(roles/storage.admin)을 프로젝트의 Dataproc에 사용되는 서비스 계정에 할당합니다.

다음 단계