您可以為 Dataproc Metastore 設定跨專案部署作業,藉此區隔下列資源:
- Dataproc Metastore 服務。
- 附加至 Dataproc Metastore 服務的 Dataproc 叢集。
- Dataproc 叢集使用的網路。
事前準備
必要的角色
如要取得建立 Dataproc Metastore 和 Dataproc 叢集所需的權限,請要求管理員授予下列 IAM 角色:
-
如要授予 Dataproc Metastore 資源的完整控制權,請在 Metastore 專案中指派 Dataproc Metastore 編輯者 (
roles/metastore.editor
)。
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
如要進一步瞭解 Dataproc Metastore 的特定角色和權限,請參閱「使用身分與存取權管理功能控管存取權」一文。關於跨專案部署作業
Dataproc Metastore 的跨專案部署作業可包含下列設定:
兩個專案:
- 專案一包含 Dataproc 叢集 (叢集專案)。
- 專案 2 包含 Dataproc Metastore 服務和網路 (Metastore 專案和網路專案)。
兩個專案:
- 專案一包含 Dataproc 叢集。
- 專案 2 包含 Dataproc Metastore 服務和網路 (Metastore 專案和網路專案)。
兩個專案:
- 專案一包含 Dataproc 叢集和 Dataproc Metastore 服務 (叢集專案和 Metastore 專案)。
- 專案二包含網路 (網路專案)。
三個專案:
- 專案一包含 Dataproc 叢集 (叢集專案)。
- 專案 2 包含 Dataproc Metastore 服務 (Metastore 專案)。
- 專案 3 包含網路 (網路專案)。
下圖概述可用的專案設定。
跨專案權限
設定跨專案權限前,請先判斷設定是否必要:
您必須設定其他跨專案權限
如果 Dataproc 叢集和 Dataproc Metastore 服務位於不同專案。
如果 Dataproc Metastore 服務和網路位於不同專案。
設定跨專案權限
如果叢集專案和中繼存放區專案位於不同專案中,請授予下列角色:
roles/metastore.user
至叢集專案的 Dataproc 服務代理程式帳戶 (包含在 Metastore 專案的 IAM 政策中)。這項設定適用於 Thrift 和 gRPC 端點通訊協定。
如果網路專案和中繼存放區專案位於不同專案,請授予下列角色:
roles/metastore.serviceAgent
角色授予中繼資料儲存庫專案服務代理人 (包含在網路專案的 IAM 政策中)。這項設定僅適用於 Thrift 端點通訊協定。
控制台
如要找出專案編號,請按照下列步驟操作:
設定權限:
前往「IAM」IAM分頁。
從頁面頂端的專案清單中,選取中繼存放區專案。
按一下「新增」。
在「新增主體」欄位中輸入服務帳戶。
從「角色」選單中,依序選取「Dataproc Metastore」>「Dataproc Metastore 檢視者」。
按一下「新增」。
完成上述步驟後,您就可以建立連結至 Dataproc Metastore 服務的 Dataproc 叢集。請注意,如要執行這項操作,Dataproc 叢集的網路或子網路設定必須與 Dataproc Metastore 的網路或子網路相符。
例如:
gcloud metastore services create SERVICE \ --network=projects/HOST_PROJECT/global/networks/NETWORK_ID