すべてのプロダクト
Search
ドキュメントセンター

DataWorks:シナリオ: クロスアカウント EMR クラスターの登録

最終更新日:Oct 28, 2025

他の Alibaba Cloud アカウントが所有する EMR クラスターを関連付けることができます。この操作は RAM ロールを使用して実行する必要があります。このトピックでは、RAM ロールを使用して Alibaba Cloud アカウント A が DataWorks で Alibaba Cloud アカウント B に属する EMR クラスターを関連付け、EMR データへのクロスアカウントアクセスを有効にする方法について説明します。

前提条件

  • Alibaba Cloud アカウント A と Alibaba Cloud アカウント B が作成されていること。Alibaba Cloud アカウントの作成方法の詳細については、「Alibaba Cloud アカウントの作成」をご参照ください。

    • Alibaba Cloud アカウント A: DataWorks でアカウント B の EMR クラスターを関連付けます。

    • Alibaba Cloud アカウント B: EMR クラスターを提供します。

  • Alibaba Cloud アカウント B を使用して EMR クラスターが作成されていること。EMR クラスターの作成方法の詳細については、「クラスターの作成」をご参照ください。

注意事項

  • メタデータパラメーターが DLF 統合メタデータ に設定されていない EMR Hadoop クラスターのみ使用できます。

  • Kerberos 認証はサポートされていません。

  • Spark は SQL ノードのテーブルリネージをサポートしますが、SQL ノードのフィールドリネージはサポートしません。

Alibaba Cloud アカウント B: RAM ロールを作成し、Alibaba Cloud アカウント A にその RAM ロールを引き受ける権限を付与する

Alibaba Cloud アカウント B には、EMR リソースにアクセスする権限を持つ RAM ロールが割り当てられます。Alibaba Cloud アカウント B は、Alibaba Cloud アカウント A にこのロールを引き受けて EMR リソースにアクセスする権限を付与します。

  1. RAM ロールを作成します。

    Alibaba Cloud アカウント B を使用して RAM コンソールにログインします。RAM ロールを作成し、そのロールの信頼できる Alibaba Cloud アカウントとして Alibaba Cloud アカウント A を追加します。これにより、Alibaba Cloud アカウント A はそのロールを引き受けて、承認されたリソースにアクセスできるようになります。RAM ロールの作成方法の詳細については、「信頼できる Alibaba Cloud アカウントの RAM ロールを作成する」をご参照ください。

    image.png

    RAM ロールの主要な設定例:

    • RAM ロール名パラメーターを EMRRole に設定します。

    • [信頼できる Alibaba Cloud アカウントの選択] パラメーターを [他の Alibaba Cloud アカウント] に設定し、表示されるフィールドに Alibaba Cloud アカウント A の ID を入力します。Alibaba Cloud アカウント A を使用して RAM コンソールにログインし、上部のナビゲーションバーにあるプロファイル写真の上にポインターを移動させると、Alibaba Cloud アカウント A の ID を取得できます。

    設定が完了すると、Alibaba Cloud アカウント A は [EMRRole] ロールを引き受けて、承認されたリソースにアクセスできるようになります。

  2. EMRRole ロールの信頼ポリシーを変更します。

    [EMRRole] ロールの詳細ページに移動し、その信頼ポリシーを変更して、Alibaba Cloud アカウント A が Alibaba Cloud アカウント B に属する EMR クラスターにアクセスできるように承認する必要があります。RAM ロールの信頼ポリシーの変更方法の詳細については、「RAM ロールの信頼ポリシーを編集する」をご参照ください。以下に信頼ポリシーのドキュメントのコードを示します:

    {
      "Statement": [
        {
          "Action": "sts:AssumeRole",
          "Effect": "Allow",
          "Principal": {
            "Service": [
              "san******@emr.dataworks.aliyuncs.com"
            ]
          }
        }
      ],
      "Version": "1"
    }
    説明

    san******@emr.dataworks.aliyuncs.com: Alibaba Cloud アカウント A の ID を示します。

  3. AliyunDataWorksAccessingEMRReadOnlyPolicy ポリシーを EMRRole ロールにアタッチします。

    image.png

Alibaba Cloud アカウント A: Alibaba Cloud アカウント B に属する EMR クラスターを登録する

説明

このステップでは、アカウント B の EMR クラスターをアカウント A の DataWorks ワークスペースに関連付け、クロスアカウントのクラスター関連付けを有効にします。したがって、このステップを実行する前に、アカウント B から事前に UID を取得してください。

  1. DataWorks コンソールにログインします。上部のナビゲーションバーで、目的のリージョンを選択します。左側のナビゲーションウィンドウで、[その他] > [管理センター] を選択します。表示されたページで、ドロップダウンリストから目的のワークスペースを選択し、[管理センターへ移動] をクリックします。

  2. SettingCenter ページの左側のナビゲーションウィンドウで、[計算資源] をクリックします。

  3. EMR クラスターに関する情報を設定します。

    1. EMR クラスターの基本情報を設定します。

      ページのプロンプトに従って、以下の情報を設定します。標準モードのワークスペースの場合、開発環境と本番環境で計算資源を個別に設定します。ワークスペースモードの詳細については、「ワークスペースモードの違い」をご参照ください。

      image

      主要なパラメーターの設定に関する説明:

      • [Alibaba Cloud プライマリアカウント UID] パラメーターを、EMR クラスターが属する Alibaba Cloud アカウントの ID に設定します。この例では、パラメーターを Alibaba Cloud アカウント B の ID に設定します。

      • [相手方 RAM ロール] パラメーターを、Alibaba Cloud アカウント A が Alibaba Cloud アカウント B の EMR リソースにアクセスするために引き受けることができる RAM ロールに設定します。この例では、パラメーターを EMRRole に設定します。

      • [ピア EMR クラスター] パラメーターを、DataWorks に関連付ける EMR クラスターに設定します。この例では、メタデータパラメーターが DLF 統合メタデータに設定されていない V3.38.3 または V3.38.2 の EMR Hadoop クラスターのみを選択できます。

      クラスターの関連付けに関する設定の詳細については、「DataStudio: EMR 計算資源のバインド」をご参照ください。

    2. 使用するリソースグループを初期化します。

      EMR 計算資源を初めて関連付ける場合、クラスターサービスの構成が変更された場合、またはコンポーネントのバージョンがアップグレードされた場合 (たとえば、core-site.xml の変更)、リソースグループを初期化します。これにより、ネットワーク接続が適切に構成され、リソースグループが期待どおりに EMR クラスターにアクセスできるようになります。

      説明
      • DataWorks では、サーバーレスリソースグループ (推奨) または旧バージョンの専用スケジューリングリソースグループを使用して EMR タスクを実行できます。したがって、リソースグループを初期化する必要がある場合は、サーバーレスリソースグループまたは専用スケジューリングリソースグループを選択できます。

      • リソースグループの初期化により、進行中のタスクが失敗する可能性があります。したがって、特に必要がない限り、オフピーク時にリソースグループを初期化することをお勧めします。たとえば、クラスター構成が変更された場合は、指定されたリソースグループを直ちに再初期化する必要があります。そうしないと、多数のタスクの実行が失敗する可能性があります。

次のステップ

EMR クラスターを登録した後、次の操作を実行できます: