全部產品
Search
文件中心

DataWorks:設定叢集身份映射

更新時間:Jun 19, 2024

在DataWorks註冊CDH/CDP叢集後,可配置DataWorks租戶成員雲帳號與CDH/CDP叢集指定身份帳號的映射關係,使租戶成員可通過映射的指定叢集身份訪問CDH/CDP叢集。CDP與CDH的叢集身份映射配置操作基本一致,本文以CDH為例,為您介紹相關操作詳情。

映射類型說明

在DataWorks註冊CDH叢集時,可通過預設訪問身份參數,配置後續在DataWorks運行CDH叢集任務時,實際在CDH叢集內執行任務代碼使用的帳號,配置詳情請參見配置叢集預設訪問身份預設訪問身份支援配置的帳號及映射類型說明如下。

支援配置的帳號類型及說明

支援的映射類型及說明

叢集帳號

後續無論誰在DataWorks運行CDH任務,實際均使用該叢集帳號在CDH叢集內執行任務代碼。

例如,阿里雲主帳號、擁有空間管理員角色許可權的子帳號、只擁有開發角色許可權的子帳號提交的CDH任務,均使用配置的叢集帳號執行。

無認證方式

預設訪問身份配置為叢集帳號,則阿里雲帳號與叢集帳號間的映射類型預設為無認證方式

重要

預設訪問身份配置為映射帳號,則阿里雲帳號與叢集帳號間的映射類型不能選擇無認證方式,否則阿里雲帳號會因為沒有訪問身份導致CDH任務執行失敗。請根據需要選擇系統帳號映射OPEN LDAP帳號映射Kerberos帳號映射

映射帳號

不同空間成員在DataWorks執行CDH任務時,實際將使用自己的阿里雲帳號(主帳號或子帳號)所映射的CDH叢集系統帳號、Kerberos帳號或OPEN LDAP帳號在叢集內執行任務代碼。

選擇映射帳號,需在註冊CDH叢集後進入叢集帳號映射配置頁面,配置阿里雲帳號所映射的CDH帳號。

重要

如下情況阿里雲帳號執行CDH任務時,會因為沒有訪問身份導致任務執行失敗:

  • 阿里雲帳號未配置映射的叢集帳號。

  • 阿里雲帳號配置了映射的叢集帳號,但阿里雲帳號與叢集帳號配置映射關係時選擇的映射類型為無認證方式

系統帳號映射

  • 自訂阿里雲帳號與CDH叢集系統帳號(例如,Cloudera Manager管理員帳號、Hadoop帳號)的映射關係。映射後,阿里雲帳號提交啟動並執行任務,實際由映射的系統帳號執行。

  • 如您希望在運行任務時,對不同雲帳號在CDH叢集內可訪問的資料進行許可權隔離,可使用該方式。

OPEN LDAP帳號映射

  • 自訂阿里雲帳號與CDH叢集OPEN LDAP帳號的映射關係。映射後,阿里雲帳號提交啟動並執行任務,實際由映射的OPEN LDAP帳號執行。

  • 若使用Presto組件且選擇OPEN LDAP帳號映射時,請在叢集的基礎資訊中配置Config.PropertiesPresto.Jks檔案。

    說明

    CDH叢集開啟LDAP認證後,訪問叢集需提供LDAP身份認證(LDAP使用者名稱和密碼),可提升服務的安全性。

Kerberos帳號映射

  • 自訂阿里雲帳號與CDH叢集Kerberos帳號的映射關係。映射後,阿里雲帳號提交啟動並執行任務,實際由映射的Kerberos帳號執行。

  • 當CDH叢集Hive MetaStore開啟Kerberos認證時,需使用該映射類型,否則會影響中繼資料採集。

  • 若使用Presto組件且選擇Kerberos帳號映射時,請在叢集的基礎資訊中配置Config.PropertiesPresto.Jks檔案。

  • 如您希望在運行任務時,對不同雲帳號在CDH叢集內可訪問的資料進行資料許可權隔離,則可使用該方式。

    說明

    Kerberos帳號為CDH叢集的訪問帳號,用於進行身分識別驗證和授權,保證CDH叢集中使用者和服務的安全通訊。CDH叢集通過Sentry或Ranger組件為Kerberos帳號進行不同許可權的配置,實現資料許可權隔離。配置該類型映射後,與Kerberos帳號存在映射關係的雲帳號即擁有相同的CDH叢集資料存取權限。

前提條件

  • 請提前建立所需映射的CDH叢集帳號。

  • 使用Kerberos帳號映射前,請確保叢集已開啟Kerberos服務。

  • 使用OPEN LDAP帳號映射前,請確保叢集已開啟OPEN LDAP服務。

  • 已在DataWorks註冊CDH叢集。詳情請參見註冊CDH/CDP叢集至DataWorks

步驟一:進入叢集帳號映射配置頁面

  1. 進入管理中心頁面。

    登入DataWorks控制台,切換至目標地區後,單擊左側導覽列的管理中心,在下拉框中選擇對應工作空間後單擊進入管理中心

  2. 單擊左側導覽列的開源叢集,進入開源叢集管理

  3. 開源叢集管理頁面,找到目標CDH叢集,單擊叢集名稱下的帳號映射 > 編輯帳號映射

    在該頁面,您可配置DataWorks雲帳號與CDH叢集帳號的映射關係,即DataWorks雲帳號在運行CDH任務時,實際是通過哪個叢集帳號運行。

步驟二:設定叢集帳號映射

用於配置在DataWorks運行CDH任務時,實際使用哪個叢集帳號執行任務代碼。步驟如下:

  1. 選擇映射類型。

    您可根據需要選擇無認證方式系統帳號映射OPEN LDAP帳號映射Kerberos帳號映射,相關介紹,請參見映射類型說明

  2. 配置叢集帳號映射。

    根據所選類型配置相應帳號映射關係。image.png

    說明

    無認證方式無需您再單獨配置映射關係,平台將使用註冊CDH/CDP叢集時,基礎資訊中配置的叢集帳號運行任務。詳情請參見步驟二:註冊CDH或CDP叢集

    系統帳號映射

    配置阿里雲帳號(主帳號或子帳號)與CDH叢集系統帳號映射,請根據介面提示添加相應帳號資訊。

    • 通過主帳號運行任務:選擇主帳號並配置映射的叢集系統帳號。

    • 通過子帳號運行任務:選擇子帳號並配置映射的叢集系統帳號。支援如下兩種映射關係:

      • 同名映射(預設):通過子帳號映射的同名叢集系統帳號運行CDH任務。例如:

        • 阿里雲子帳號:ram_user_1@xxx.onaliyun.com

        • 同名叢集帳號:ram_user_1

        後續通過ram_user_1@xxx.onaliyun.com提交啟動並執行CDH任務,實際均由ram_user_1運行。

        說明
        • 通常,在DataWorks通過子帳號運行CDH任務時,則在CDH叢集內預設使用同名叢集系統帳號運行CDH任務。您也可根據需要選擇使用非同名叢集帳號執行任務。

        • 為避免任務運行失敗,請確保CDH叢集記憶體在同名帳號。您可進入CDH叢集管理 > 使用者管理進行配置。

      • 非同名映射:通過子帳號映射的非同名叢集系統帳號運行CDH任務,請根據介面指引配置映射關係。

    Kerberos帳號映射

    配置阿里雲帳號(主帳號或子帳號)與CDH叢集Kerberos帳號映射。Kerberos帳號格式為執行個體名@領網域名稱,例如,cdn_test@HADOOP.COM。

    Kerberos認證過程中需使用keytab認證檔案krb5.conf設定檔完成認證行為,其中:

    • krb5.conf設定檔:主要用於儲存KDC伺服器的相關配置。

    • keytab認證檔案:用於儲存資源主體的身分識別驗證憑據,檔案命名必須為Kerberos帳號.keytab格式。

    請根據介面提示添加相應帳號並上傳所需檔案。

    說明
    • 當CDH叢集Hive MetaStore開啟Kerberos認證時,需使用該映射類型,否則會影響中繼資料採集。

    • 若使用Presto組件且選擇Kerberos帳號映射時,請在叢集的基礎資訊中配置Config.PropertiesPresto.Jks檔案。

    • 請確保叢集已開啟Kerberos服務。

    OPEN LDAP帳號映射

    配置阿里雲帳號(主帳號或子帳號)與CDH叢集OPEN LDAP帳號映射,請根據介面提示添加相應帳號資訊。

    說明
    • 若使用Presto組件且選擇OPEN LDAP帳號映射時,請在叢集的基礎資訊中配置Config.PropertiesPresto.Jks檔案。

    • 請確保叢集已開啟OPEN LDAP服務。

  3. 單擊完成編輯,即帳號映射關係配置完成。後續,通過雲帳號執行的任務則實際由其映射的叢集帳號執行。