Dataproc 自動ゾーン プレースメント

Dataproc クラスタを作成すると、クラスタ リソースでは Compute Engine ゾーンに基づくリージョン エンドポイントが使用されます。 リージョンを選択した場合は、その地域内のゾーンを選択できます。また、ゾーンを省略して、選択したリージョンで Dataproc の自動ゾーン機能によりゾーンを選択できます。ゾーンを選択すると、そのクラスタのすべてのノードがそのゾーンにデプロイされます。

自動ゾーンとリソースの予約

自動ゾーンでは、リソースの予約によって、ゾーン内でのクラスタの作成に次のように優先順位が付けられます。

  • 自動ゾーンは、リクエストされたクラスタ リソースを予約済みリソースで完全に満たすだけでなく、ゾーン内にオンデマンド リソースがある場合は、必要に応じて予約済みリソースとオンデマンド リソースを消費して、そのゾーンにクラスタを作成します

  • 自動ゾーンでは、ゾーン内の CPU コア(vCPU)予約の合計に従って、ゾーンを選択する優先順位が付けられます。

    例: クラスタ作成リクエストで、20 n2-standard-2 と 1 n2-standard-64 が指定されています(40 + 64 vCPUs をリクエスト)。自動ゾーンでは、ゾーンで使用可能な vCPU の予約の合計に従って、次のゾーンが優先されます。

    1. zone-c で利用可能な予約: 3 n2-standard-2 と 1 n2-standard-64(70 vCPUs
    2. zone-b で利用可能な予約: 1 n2-standard-64(64 vCPUs
    3. zone-a で利用可能な予約: 25 n2-standard-2(50 vCPUs

      上記のゾーンのそれぞれが、クラスタ リクエストを満たすのに十分な追加のオンデマンド vCPU と他のリソースを持つ場合、自動ゾーンはクラスタ作成用に zone-c を選択します。

  • リクエストされたクラスタ リソースをゾーン内の予約済みリソースとオンデマンド リソースで完全に満たすことができない場合、自動ゾーンは、オンデマンド リソースを使用して、リクエストを満たせる可能性が最も高いゾーンにクラスタを作成します。

自動ゾーン プレースメントの使用

コンソール

自動ゾーン プレースメントを使用する Dataproc クラスタを作成するには:

  • Google Cloud コンソールで、Dataproc の [Compute Engine に Dataproc クラスタを作成する] ページを開きます。[クラスターを設定] パネルが選択されています。
  • [ロケーション] セクションで次の操作を行います。
    • クラスタのリージョンを選択します。
    • [ゾーン] で [すべて] を選択します。

gcloud コマンド

自動ゾーン プレースメントを使用する Dataproc クラスタを作成するには、gcloud dataproc clusters create コマンドを使用します。--region フラグをリージョンに設定し、--zone フラグを省略します(またはフラグを空にしておきます: --zone= または zone="")。

gcloud dataproc clusters create cluster-name \
    --region=region \
    --zone="" \
    other args ...

REST API

自動ゾーン プレースメントを使用する Dataproc クラスタを作成するには、gceClusterConfig.zoneUri フィールドを空のままにした JSON clusters.create API リクエストを作成します。REST エンドポイント https://dataproc.googleapis.com/v1/projects/projectId/regions/region/clusters にリージョン名を挿入します。Dataproc の自動ゾーンにより、指定したリージョン内でクラスタ用のゾーンが選択されます。

自動ゾーン プレースメントで短いリソース名を使用: 自動ゾーン プレースメント REST API クラスタ作成リクエストで machineTypeUriacceleratorTypeUri などのリソース URI を指定する場合は、ゾーンを指定しない短いリソース名を使用します。たとえば、「n1-standard-2」や「nvidia-tesla-k80」です。