クラスタ構成

このページでは、Cloud Data Fusion で静的 Dataproc クラスタを使用するケースについて説明します。また、互換性のあるバージョンと推奨されるクラスタ構成についても説明します。

クラスタを再利用するタイミング

Cloud Data Fusion 6.5.0 以降では、実行間で Dataproc クラスタを再利用して処理時間を短縮できます。複数のジョブを 1 つずつ順番に実行している場合、クラスタを再利用することで、ジョブの所要時間を短縮できます。詳しくは、Dataproc クラスタの再利用をご覧ください。

静的クラスタを使用するケース

推奨: 静的クラスタを使用する前に、クラスタを再利用して起動時間を短縮してください。

デフォルトでは、Cloud Data Fusion はパイプラインごとにエフェメラル クラスタを作成します。パイプライン実行の開始時点でクラスタを作成し、パイプラインの実行が完了した後に削除します。

次のシナリオでは、デフォルトを使用しないでください。代わりに、静的クラスタを使用してください。

  • すべてのパイプライン用の新しいクラスタの作成に要する時間が、ユースケースに適していない場合。

  • 組織でクラスタを集中管理する必要がある場合。たとえば、すべての Dataproc クラスタに特定のポリシーを適用したい場合などです。

詳細については、既存の Dataproc クラスタに対してパイプラインを実行するをご覧ください。

自動スケーリングを使用する場合

推奨: 事前定義された Cloud Data Fusion 自動スケーリングを使用するか、独自の自動スケーリング ポリシーを使用して、バッチ パイプラインでの処理用のクラスタ リソース管理を自動化します。

スケールダウンには推奨されません。アクティビティが少ない期間の費用を削減するには、Dataproc の高度な柔軟性モードと CDAP の自動スケーリングのドキュメントをご覧ください。

デフォルトのコンピューティング プロファイルを使用して大規模なパイプラインを実行する場合、パイプラインが最適なパフォーマンスで動作しないことがあります。また、パイプラインに適切なクラスタサイズの要件が不明な場合にも役立ちます。

Cloud Data Fusion バージョン 6.6 以降では、Cloud Data Fusion の事前定義された自動スケーリングを使用して、クラスタ リソース管理を自動化できます。すぐに使用できる自動スケーリングのコンピューティング プロファイルはパイプライン レベルでは十分ですが、さらに制御が必要な場合は、代わりに独自の自動スケーリング ポリシーを定義できます。

サポートされているバージョンでは、独自の自動スケーリング ポリシーを作成して、ワーカーの最大数を設定できます。自動スケーリング ポリシーの作成の詳細については、クラスタの自動スケーリングをご覧ください。

Cloud Data Fusion で事前定義された自動スケーリングを使用する

バージョン 6.6 以降では、パイプラインのワークロードに応じてワーカーノードを増やすために事前定義された自動スケーリングを使用できます。これはバッチ パイプラインでのみ使用できます。

オプション 1: Cloud Data Fusion の自動スケーリング プロファイルを使用する

バージョン 6.6 以降で実行されている Cloud Data Fusion インスタンスでは、インスタンスに Autoscaling Dataproc というプロファイルが付属しています。これは、すぐに使用できる Dataproc プロファイルで、事前に定義された自動スケーリングがすでに有効になっています。これは、オプション 3 の事前に作成されたプロファイルに似ていますが、ワーカーのマシンタイプは n2 です。

  1. Google Cloud Console で、Cloud Data Fusion の [Instances] ページに移動します。
  2. [View Instance] をクリックして、Cloud Data Fusion UI でインスタンスを開きます。
  3. [List] > [Deployed] をクリックして、デプロイされたパイプライン ページに移動します。
  4. [Configure] > [Compute] をクリックします。
  5. Autoscaling Dataproc という名前のプロファイルを選択します。

オプション 2: プロファイルをカスタマイズして、事前に定義された自動スケーリング ポリシーを有効にする

デフォルトのプロファイルで事前に定義された自動スケーリングを有効にするには、次の手順に従います。

  1. Google Cloud Console で、Cloud Data Fusion の [Instances] ページに移動します。
  2. [View Instance] をクリックして、Cloud Data Fusion UI でインスタンスを開きます。
  3. [List] > [Deployed] をクリックして、デプロイされたパイプライン ページに移動します。
  4. [設定] をクリックします。
  5. 任意のプロファイルで [Customize] をクリックします。
  6. [Number of cluster workers] セクションを展開します。
  7. [Use predefined Autoscaling] をクリックします。
  8. [Done]、[Save] の順にクリックします。

パイプラインが次に実行されると、Dataproc ジョブは Cloud Data Fusion の事前に定義された自動スケーリング ポリシーを使用します。

事前に定義された自動スケーリングを有効にする場合:

  • プロパティ Number of primary workersNumber of secondary workersAutoscaling policy は考慮されていません。
  • ワーカーのマシンタイプ/構成は、選択したプロファイルと同じです。
  • [Use predefined Autoscaling] 切り替えをオフにすると、事前に定義された自動スケーリングが無効になり、プロファイルの元の動作が実行されます。

ランタイム引数:

上記の動作を実現するには、ランタイム引数にキーを入力します(system.profile.properties.enablePredefinedAutoScaling = true)。

オプション 3: 新しいコンピューティング プロファイルで事前に定義された自動スケーリング ポリシーを有効にする

新しい Dataproc プロビジョナー プロファイルを作成するときに、[Use predefined Autoscaling] 切り替えボタンをクリックします。このプロファイルをさまざまなパイプラインで使用し、ワーカーのマシンタイプやその他のプロパティをより細かく制御できます。

  1. Google Cloud Console で、Cloud Data Fusion の [Instances] ページに移動します。
  2. [View Instance] をクリックして、Cloud Data Fusion UI でインスタンスを開きます。
  3. プロファイルは、システム スコープまたはユーザー スコープから作成できます。

    1. (省略可)システム スコープの場合: [System Admin] > [Configuration] > [System Compute Profiles] > [Create New Profile] の順にクリックします。
    2. (省略可)ユーザー スコープの場合: [メニュー] > [Namespace Admin] > [Create profile] をクリックします。

    プロビジョナーのページが開きます。

  4. [Dataproc] をクリックします。

  5. [Number of cluster workers] セクションを展開します。

  6. [Use predefined Autoscaling] をクリックします。

  7. その他の詳細を入力して [Create] をクリックします。

このプロファイルをパイプラインに適用するには、[Studio] ページでパイプラインを開き、[Configure] > [Compute] を順にクリックし、プロファイルを選択します。プロファイルをデフォルトとして設定できます。

詳細

プロフィールのリストが表示されているアプリケーションの [Compute config] ページに、[Total cores] 列があります。この列には、プロファイルのスケールアップが可能な最大 vCPU(例: Up to 84)が表示されています。

バージョンの互換性

問題: Cloud Data Fusion 環境のバージョンが Dataproc クラスタのバージョンと互換性がない場合があります。

推奨: Cloud Data Fusion バージョン 6.4 以降にアップグレードし、サポートされている Dataproc バージョンのいずれかを使用します。

バージョンが 6.4 より前の Cloud Data Fusion は、サポートされていない Dataproc のバージョンとのみ互換性があります。Dataproc は、これらのバージョンで作成されたクラスタの更新とサポートを提供していません。サポートされていないバージョンで作成されたクラスタを引き続き実行することはできますが、サポートされているバージョンで作成された新しいクラスタに置き換えることをおすすめします。

Cloud Data Fusion のバージョン Dataproc のバージョン
6.1~6.3* 1.3.x
6.4 以降 1.3.x と 2.0.x

* Cloud Data Fusion バージョン 6.1 ~ 6.3 は Dataproc バージョン 1.3 と互換性があります。互換性を保つために追加のコンポーネントは必要ありません。Cloud Data Fusion は、Cloud Data Fusion の基本バージョンに付属する HDFS と Spark を使用します。

おすすめの方法

構成

推奨: パイプライン用の静的クラスタを作成する場合は、次の構成を使用します。

パラメータ
yarn.nodemanager.delete.debug-delay-sec YARN のログを保持します。
推奨値: 86400(1 日に相当します)
yarn.nodemanager.pmem-check-enabled YARN が物理メモリの上限を確認して、コンテナが物理メモリを超過した場合にコンテナを強制終了できるようにします。
推奨値: false
yarn.nodemanager.vmem-check-enabled YARN が仮想メモリの上限を確認し、コンテナが物理メモリを超過した場合にコンテナを強制終了できるようにします。
推奨値: false