DataWorks は、Cloudera’s Distribution Including Apache Hadoop (CDH) および Cloudera Data Platform (CDP) クラスターに接続できます。DataWorks に CDH および CDP クラスターを登録することで、タスク開発、スケジューリング、データマップ (メタデータ管理)、Data Quality などのデータ開発およびガバナンス操作を実行できます。
背景情報
-
CDH は Cloudera のオープンソースプラットフォームディストリビューションです。クラスター管理、モニタリング、診断などの即時使用可能な機能が含まれており、エンドツーエンドのビッグデータワークフローを実行するためのさまざまなコンポーネントをサポートしています。
-
CDP は、複数のプラットフォームから顧客データを収集・統合するパブリックデータプラットフォームです。リアルタイムデータを収集して、個々のユーザーデータプロファイルを作成します。
DataWorks に CDH および CDP クラスターを登録することで、タスク開発、スケジューリング、データマップでのメタデータ管理、Data Quality チェックを実行できます。
前提条件
-
CDH または CDP クラスターを登録するには、現在のワークスペースで次のいずれかのロールまたは権限が必要です:
-
Alibaba Cloud アカウント (root ユーザー) を使用している。
-
ご利用のワークスペースメンバーに スペース管理者 ロールが付与されている。詳細については、ワークスペースメンバーの追加とロールおよび権限の管理をご参照ください。
-
ご利用のワークスペースメンバーに AliyunDataWorksFullAccess ポリシーが付与されている。このポリシーを付与するには、RAM ユーザーへの権限付与およびRAM ロールへの権限付与をご参照ください。ワークスペースにメンバーを追加するには、ワークスペースメンバーの追加とロールおよび権限の管理をご参照ください。
-
-
CDH または CDP クラスターをデプロイし、クラスターの登録に必要な設定情報を取得済みであること。詳細については、事前準備:CDH または CDP クラスター情報の取得とネットワーク接続の設定をご参照ください。
制限事項
-
CDH または CDP クラスタータスクは、新しいサーバーレスリソースグループ (推奨) またはレガシの専用スケジューリングリソースグループのみを使用して実行できます。
説明-
サーバーレスリソースグループは、データ同期やタスクスケジューリングなど、さまざまなシナリオで使用できる汎用リソースグループです。サーバーレスリソースグループの購入方法の詳細については、サーバーレスリソースグループの使用をご参照ください。すでにレガシの専用スケジューリングリソースグループを購入している場合は、それを使用して CDH または CDP タスクを実行することもできます。詳細については、専用スケジューリングリソースグループの使用をご参照ください。
-
新規ユーザーは、新しいサーバーレスリソースグループのみを購入できます。
-
カスタムバージョン のクラスターを使用して DataWorks に登録する場合、スケジューリングにはレガシの専用スケジューリングリソースグループしか使用できません。クラスターバージョンの詳細については、ステップ 2:CDH または CDP クラスターの登録をご参照ください。
-
-
CDH または CDP クラスターは、中国 (北京)、中国 (上海)、中国 (杭州)、中国 (深セン)、中国 (張家口)、中国 (成都)、ドイツ (フランクフルト) のリージョンでのみ登録できます。
ステップ 1:登録ページへの移動
DataWorks コンソールにログインします。 対象のリージョンで、左側のナビゲーションウィンドウにあるをクリックします。 ドロップダウンリストからワークスペースを選択し、[入力 管理センター] をクリックします。
-
左側のナビゲーションウィンドウで クラスター管理 をクリックして クラスター管理 ページに移動します。クラスターの登録 をクリックし、[オープンソースクラスタータイプ] に [CDH] を選択して、クラスター登録ページに移動します。
ステップ 2:CDH または CDP クラスターの登録
-
ワークスペースが標準モードの場合、開発環境と本番環境にそれぞれ別のクラスターを登録する必要があります。ワークスペースモードの詳細については、ワークスペースモードの違いをご参照ください。
-
DataWorks における CDP と CDH の開発操作はほぼ同じです。このトピックでは、CDH クラスターを例として使用します。
-
基本的なクラスター情報を設定します。
パラメーター
説明
クラスター表示名
DataWorks でのクラスターの表示名です。名前は一意である必要があります。
Cluster Version
登録するクラスターのバージョンを選択します。
DataWorks は、CDH 5.16.2、CDH 6.1.1、CDH 6.2.1、CDH 6.3.2、CDP 7.1.7 のバージョンを提供しています。これらのクラスターバージョンに関連付けられているコンポーネントバージョンは固定です。詳細については、クラスター接続情報をご参照ください。これらのクラスターバージョンがビジネス要件を満たさない場合は、カスタムバージョン を選択し、ニーズに基づいてコンポーネントバージョンを設定できます。
説明-
最新情報については UI をご参照ください。
-
カスタムバージョン のクラスターを使用して DataWorks に登録する場合、スケジューリングにはレガシの専用スケジューリングリソースグループしか使用できません。登録完了後、チケットを送信して、テクニカルサポートに環境の初期化をリクエストする必要があります。
Cluster Name
登録するクラスターの設定情報のソースを指定します。別のワークスペースにすでに登録されているクラスターを選択するか、新しいクラスターを作成できます。
-
登録済みクラスター:別のワークスペースにすでに登録されているクラスターの設定を再利用します。
-
新規クラスター:登録するクラスターの情報を設定する必要があります。
-
-
クラスター接続情報を設定します。
ユースケースに基づいて、クラスターのコンポーネントバージョンを選択し、取得したコンポーネントのエンドポイント情報を入力します。詳細については、事前準備:CDH または CDP クラスター情報の取得とネットワーク接続の設定をご参照ください。CDH クラスターのヘッドノードで
java -jar dw-tools.jar admin adminコマンドを実行して、各クラスターコンポーネントのホストと URL 情報を取得します。次に、出力されたエンドポイントを使用して、HiveServer2 (フォーマット:jdbc:hive2://<host>:<port>/<database>)、Metastore (フォーマット:thrift://<host>:<port>)、Impala JDBC URL (フォーマット:jdbc:impala://<host>:<port>/<schema>)、Yarn.ResourceManager.Address (フォーマット:http://<host>:<port>)、Jobhistory.Webapp.Address (Yarn ResourceManager アドレスのポートを 8088 に変更)、Presto JDBC URL (フォーマット:jdbc:presto://<host>:<port>/<catalog>/<schema>) の各フィールドに入力します。Presto はデフォルトの CDH コンポーネントではありません。デプロイメントに基づいてアクセスアドレスを指定してください。説明サーバーレスリソースグループからドメイン名で CDH コンポーネントにアクセスする場合、Alibaba Cloud DNS PrivateZone で CDH コンポーネントのドメイン名に対する権威 DNS 解決を設定する必要があります。詳細については、ビルトイン権威ドメインの追加およびドメイン名のスコープ設定をご参照ください。
-
クラスター設定ファイルを追加します。
必要なコンポーネントの設定ファイルをアップロードできます。設定ファイルの取得方法については、事前準備:CDH または CDP クラスター情報の取得とネットワーク接続の設定をご参照ください。
次の表に、設定ファイルについて説明します。
設定ファイル
説明
シナリオ
core-site.xml
HDFS および MapReduce の共通 I/O 設定など、Hadoop Core ライブラリのグローバル設定が含まれます。
このファイルは、Spark または MapReduce タスクを実行するためにアップロードする必要があります。
hdfs-site.xml
データブロックサイズ、レプリカ数、パス名など、HDFS 関連の設定が含まれます。
mapred-site.xml
MapReduce ジョブの実行メソッドやスケジューリング動作など、MapReduce 関連のパラメーターを設定するために使用されます。
このファイルは、MapReduce タスクを実行するためにアップロードする必要があります。
yarn-site.xml
リソースマネージャー、ノードマネージャー、アプリケーション実行環境など、YARN デーモンに関連するすべての設定が含まれます。
このファイルは、Spark または MapReduce タスクを実行する場合、または ID マッピングタイプとして Kerberos が選択されている場合にアップロードする必要があります。
hive-site.xml
データベース接続情報、Hive Metastore 設定、実行エンジンなど、Hive を設定するためのさまざまなパラメーターが含まれます。
このファイルは、ID マッピングタイプとして Kerberos が選択されている場合にアップロードする必要があります。
spark-defaults.conf
Spark ジョブの実行時に適用されるデフォルト設定を指定します。
spark-defaults.confファイルを使用して、メモリサイズや CPU コア数などのプロパティを事前に設定できます。Spark アプリケーションは、ランタイム時にこれらの設定を使用します。このファイルは、Spark タスクを実行するためにアップロードする必要があります。
config.properties
Presto クラスター内のコーディネーターノードとワーカーノードのグローバルプロパティなど、Presto サーバーの設定が含まれます。
このファイルは、Presto コンポーネントを使用し、ID マッピングタイプとして OPEN LDAP または Kerberos を選択した場合にアップロードする必要があります。
presto.jks
秘密鍵やアプリケーションに発行された公開鍵証明書など、セキュリティ証明書を格納する Java KeyStore (JKS) ファイルです。Presto では、
presto.jksファイルを使用して、Presto プロセスの SSL/TLS 暗号化通信を有効にし、安全なデータ転送を実現します。 -
デフォルトのアクセス ID を設定します。
この設定は、DataWorks からタスクが実行されるときに CDH クラスターへのアクセスに使用されるアカウントを指定します。サポートされるアカウントタイプは環境によって異なります。
説明クラスターを登録する際に、Default Access Identity を非クラスターアカウントに設定し、ID マッピングが設定されていない (またはマッピングタイプが認証なしに設定されている) 場合、すべてのタスクは失敗します。
環境
デフォルトのアクセス ID
関連情報
開発環境
-
クラスターアカウント:Alibaba Cloud アカウントや開発権限のみを持つ RAM ユーザーなど、DataWorks で CDH タスクを実行するユーザーに関係なく、指定されたクラスターアカウントが CDH クラスターへのアクセスに使用されます。
-
マッピングされたアカウント:ユーザーが CDH タスクを実行する場合、ユーザーのアカウントとクラスターアカウントの間に ID マッピングを設定する必要があります。タスクの実行時には、マッピングされたアカウントが CDH クラスターへのアクセスに使用されます。
ID マッピングを設定するには、クラスター ID マッピングの設定をご参照ください。
本番環境
-
クラスターアカウント:タスク所有者、Alibaba Cloud アカウント、RAM ユーザーなど、DataWorks で CDH タスクを実行するユーザーに関係なく、指定されたクラスターアカウントが CDH クラスターへのアクセスに使用されます。
-
マッピングされたアカウント:タスク所有者、Alibaba Cloud アカウント、または RAM ユーザーが CDH タスクを実行する場合、対応するアカウントとクラスターアカウントの間に ID マッピングを設定する必要があります。タスクの実行時には、マッピングされたアカウントが CDH クラスターへのアクセスに使用されます。
-
-
完全登録 をクリックして、クラスターを DataWorks に登録します。
ステップ 3:リソースグループの初期化
初めてクラスターを登録する場合、クラスターのサービス設定を変更した後、または core-site.xml ファイルの変更などによりコンポーネントバージョンをアップグレードした後は、リソースグループを初期化する必要があります。初期化により、リソースグループが CDH クラスターにアクセスでき、CDH クラスタータスクを実行するために正しく設定されていることが保証されます。クラスター管理 ページで、登録済みの CDH クラスターを見つけ、右上隅の リソースグループの初期化 をクリックします。必要なリソースグループを選択して初期化します。
-
DataWorks は、新しいサーバーレスリソースグループ (推奨) またはレガシの専用スケジューリングリソースグループのみを使用して CDH クラスタータスクを実行することをサポートしています。したがって、これらの 2 種類のリソースグループのみを初期化できます。利用可能なリソースグループがない場合は、必要に応じて作成してください。詳細については、サーバーレスリソースグループの使用および専用スケジューリングリソースグループの使用をご参照ください。
-
カスタムバージョン のクラスターを使用して DataWorks に登録する場合、スケジューリングにはレガシの専用スケジューリングリソースグループしか使用できません。登録完了後、チケットを送信して、テクニカルサポートに環境の初期化をリクエストする必要があります。
(オプション) YARN リソースキューの設定
YARN リソースキューの主な目的は、クラスターリソースをパーティション分割して分離することです。これにより、さまざまな種類のタスクがコンピューティングリソースを合理的かつ公平に使用できるようになり、干渉を防ぎます。特定のモジュールのタスク専用の YARN リソースキューを設定するには、クラスター管理 ページで登録済みの CDH クラスターを見つけます。YARNリソースキュー タブで、[YARN リソースキューの編集] をクリックして設定を行います。
(オプション) Spark プロパティの設定
異なるモジュールのタスクに専用の Spark プロパティを設定します。
-
クラスター管理 ページで、登録済みの CDH クラスターを見つけます。
-
SPARKパラメータ タブで、[Spark プロパティの編集] ボタンをクリックして、CDH クラスターの Spark プロパティ編集ページに移動します。
-
モジュールの下にある Add ボタンをクリックし、Sparkプロパティ名 と対応する Spark属性値 を入力して、Spark プロパティを設定します。
次のステップ
-
クラスター ID マッピングの設定:CDH クラスターのデフォルトのアクセス ID が特定のクラスターアカウントでない場合 (つまり、Alibaba Cloud アカウントを介してアクセスする場合)、Alibaba Cloud アカウントとクラスターアカウントの間に ID マッピングを設定する必要があります。これにより、Alibaba Cloud アカウントはマッピングされたクラスター ID を使用して CDH クラスターにアクセスできるようになり、データ権限の分離と制御が可能になります。
-
CDH コンピューティングリソースを登録した後、DataStudio の CDH 関連ノードを使用してデータ開発操作を実行できます。