このドキュメントでは、課金対象である次の Google Cloudコンポーネントを使用します。
- Managed Service for Apache Spark
- Compute Engine
- Cloud Composer
料金計算ツールを使うと、予想使用量に基づいて費用の見積もりを生成できます。
始める前に
プロジェクトを設定する
- Google Cloud アカウントにログインします。 Google Cloudを初めて使用する場合は、 アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Dataproc, Compute Engine, and Cloud Composer APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Google Cloud CLI をインストールします。
-
外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。
-
gcloud CLI を初期化するには、次のコマンドを実行します。
gcloud init -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Dataproc, Compute Engine, and Cloud Composer APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Google Cloud CLI をインストールします。
-
外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。
-
gcloud CLI を初期化するには、次のコマンドを実行します。
gcloud init
Managed Service for Apache Spark ワークフロー テンプレートを作成する
ローカル ターミナル ウィンドウまたは Cloud Shell に次のコマンドをコピーして実行し、ワークフロー テンプレートを作成して定義します。
sparkpiワークフロー テンプレートを作成します。gcloud dataproc workflow-templates create sparkpi \ --region=us-central1- Spark ジョブを
sparkpiワークフロー テンプレートに追加します。「compute」step-idフラグは、SparkPi ジョブを示します。gcloud dataproc workflow-templates add-job spark \ --workflow-template=sparkpi \ --step-id=compute \ --class=org.apache.spark.examples.SparkPi \ --jars=file:///usr/lib/spark/examples/jars/spark-examples.jar \ --region=us-central1 \ -- 1000 - ワークフローを実行するには、マネージドの単一ノードクラスタを使用します。Managed Service for Apache Spark によってクラスタが作成され、ワークフローがクラスタ上で実行され、ワークフローの完了時にクラスタが削除されます。
gcloud dataproc workflow-templates set-managed-cluster sparkpi \ --cluster-name=sparkpi \ --single-node \ --region=us-central1 - ワークフロー テンプレートの作成を確認します。
コンソール
Google Cloud コンソールの Managed Service for Apache Spark の [ワークフロー] ページで
sparkpi名をクリックし、[ワークフロー テンプレートの詳細] ページを開きます。ワークフロー テンプレートの名前をクリックして、sparkpiテンプレート属性を確認します。
gcloud コマンド
次のコマンドを実行します。
gcloud dataproc workflow-templates describe sparkpi --region=us-central1
DAG を作成して Cloud Storage にアップロードする
- Cloud Composer 環境を作成するか、既存の環境を使用します。
- 環境変数を設定します。
Airflow UI
- ツールバーで、[Admin] > [Variables] をクリックします。
- [Create] をクリックします。
- 次の情報を入力します。
- Key:
project_id - Val: PROJECT_ID - Google Cloud プロジェクト ID
- Key:
- [Save] をクリックします。
gcloud コマンド
次のコマンドを入力します。
ENVIRONMENTは、Cloud Composer 環境の名前です。LOCATIONは、Cloud Composer 環境が配置されているリージョンです。PROJECT_IDは、Cloud Composer 環境を含むプロジェクトのプロジェクト ID です。
gcloud composer environments run ENVIRONMENT --location LOCATION variables set -- project_id PROJECT_ID - ツールバーで、[Admin] > [Variables] をクリックします。
- 次の DAG コードを、ローカルで「composer-dataproc-dag.py」という名前のファイルにコピーします。このコードは、DataprocWorkflowTemplateInstantiateOperator を使用します。
Airflow 2
Airflow 1
- Cloud Storage の環境フォルダに DAG をアップロードします。アップロードが正常に完了したら、Cloud Composer 環境のページにある DAG フォルダのリンクをクリックします。
タスクのステータスを表示する
Airflow UI
- Airflow ウェブ インターフェースを開きます。
- DAG ページで、DAG 名(例:
dataproc_workflow_dag)をクリックします。 - DAG の詳細ページで、[Graph View] をクリックします。
- ステータスを確認します。
- Failed: タスクの周囲に赤色のボックスが表示されます。ポインタをタスクの上に置くと、[State: Failed] と表示されます。

- Success: タスクの周囲に緑色のボックスが表示されます。タスクにカーソルを合わせて [State: Success] を確認することもできます。

- Failed: タスクの周囲に赤色のボックスが表示されます。ポインタをタスクの上に置くと、[State: Failed] と表示されます。
コンソール
[ワークフロー] タブをクリックして、ワークフローのステータスを確認します。
gcloud コマンド
gcloud dataproc operations list \
--region=us-central1 \
--filter="labels.goog-dataproc-workflow-template-id=sparkpi"
クリーンアップ
Google Cloud アカウントに課金されないようにするには、このチュートリアルで使用したリソースを削除します。