Dataproc Versioning

Dataproc は、イメージを使用して、有用な Google Cloud Platform コネクタと Apache Spark & Apache Hadoop コンポーネントを 1 つのパッケージにまとめ、Dataproc クラスタにデプロイできます。このイメージには、クラスタの基本オペレーティング システム(Debian または Ubuntu)の他に、ジョブの実行に必要な Spark、Hadoop、Hive などのコア コンポーネントとオプション コンポーネントが含まれます。 これらのイメージは、新しい改善点と機能のために定期的にアップグレードされます。Dataproc のバージョニングを使用すると、クラスタを作成するときにソフトウェア バージョンのセットを選択できます。

バージョニングの仕組み

作成されたイメージには、以下の形式のイメージ バージョン番号が付けられます。

version_major.version_minor.version_sub_minor-os_distribution

現在、次の OS ディストリビューションが維持されています。

OS ディストリビューション コード OS ディストリビューション
debian12 Debian 12
debian10 Debian 10
debian11 Debian 11
rocky8 Rocky Linux 8
rocky9 Rocky Linux 9
ubuntu18 Ubuntu 18.04 LTS
ubuntu20 Ubuntu 20.04 LTS
ubuntu22 Ubuntu 22.04 LTS

以前にサポートされていた OS ディストリビューションについては、古いイメージ バージョンをご覧ください。

本番環境の場合や、特定のコンポーネントとの互換性が重要な場合は、major.minor イメージ バージョンを指定することをおすすめします。サブマイナーと OS ディストリビューションは、最新の週次リリースに自動的に設定されます。

バージョンの選択

新しい Dataproc クラスタを作成すると、デフォルトで最新のDebianイメージ バージョンが使用されます。クラスタの作成時に Debian、Rocky Linux、または Ubuntu イメージ バージョンか Ubuntu イメージ バージョンのどちらかを選択できます(Dataproc のイメージ バージョン リストをご覧ください)。Debian ベースのイメージを指定する場合、OS ディストリビューション コードの接尾辞を省略できます。たとえば、2.0-debian10 イメージを選択するには「2.0」と指定します。Rocky Linux のイメージや Ubuntu ベースのイメージを選択する場合は、OS 接尾辞の使用が必要です。たとえば、「2.0-ubuntu18」と指定します。

gcloud コマンド

gcloud dataproc clusters create コマンドを使用する場合、--image-version 引数を使用して新しいクラスタのイメージ バージョンを指定できます。

Debian イメージの例:

gcloud dataproc clusters create cluster-name \
    --image-version=2.0 \
    --region=region

Ubuntu イメージの例:

gcloud dataproc clusters create cluster-name \
    --image-version=2.0-ubuntu18 \
    --region=region

最新のサブマイナー バージョンが使用されるように、サブマイナー バージョンの指定を省略することをおすすめします。ただし、必要に応じてサブマイナー バージョンを指定することもできます(例: 2.0.20)。

Google Cloud CLI で現在のバージョンを確認できます。

gcloud dataproc clusters describe cluster-name \
    --region=region

REST API

cluster.create API リクエストの一部として、SoftwareConfig imageVersion フィールドを指定できます。

POST /v1/projects/project-id/regions/us-central1/clusters/
{
  "projectId": "project-id",
  "clusterName": "example-cluster",
  "config": {
    "configBucket": "",
    "gceClusterConfig": {
      "subnetworkUri": "default",
      "zoneUri": "us-central1-b"
    },
    "masterConfig": {
      ...
      }
    },
    "workerConfig": {
      ...
      }
    },
    "softwareConfig": {
      "imageVersion": "2.0"
    }
  }
}
  

Console

Dataproc の [クラスタの作成] ページを開きます。[クラスターを設定] パネルが選択されています。 [バージョニング] セクションの [イメージの種類とバージョン] フィールドには、クラスタの作成時に使用されるイメージが示されます。イメージのリリース日も表示されます。最初は、デフォルトのイメージ(使用可能な最新の Debian バージョン)が選択された状態で表示されます。[変更] をクリックすると、使用可能なイメージのリストが表示されます。クラスタに使用する標準イメージまたはカスタム イメージを選択できます。

新しいバージョンを作成する場合

次の 1 つ以上を組み込むために新しいメジャー バージョンが定期的に作成されます。

  • 次のもののメジャー リリース:
    • Spark、Hadoop、その他のビッグデータ コンポーネント
    • Google Cloud コネクタ
  • Dataproc 機能に対するメジャー変更や更新

新しいプレビュー バージョン(-RC 接尾辞付き)は、新しいメジャー バージョンがリリースされる前にリリースされます。

  • プレビュー イメージは、本番環境のワークロードでの使用を想定したものではありません。
  • プレビュー イメージ コンポーネントのバージョンは、プレビュー後の GA イメージ バージョンで、利用可能な最新のコンポーネント バージョンにアップグレードされる場合があります。

次の 1 つ以上を組み込むために新しいマイナー バージョンが定期的に作成されます。

  • 次のもののマイナー リリースと更新:
    • Spark、Hadoop、その他のビッグデータ コンポーネント
    • Google Cloud コネクタ
  • Cloud Dataproc 機能に対するマイナー変更や更新

新しいマイナー バージョンが作成されると、その Debian イメージがメジャー バージョンのデフォルトとなり、メジャー バージョンの最新リリースになります。

新しいサブマイナー バージョンが定期的に作成され、以下の 1 つ以上が組み込まれます。

  • イメージに含まれるコンポーネントのパッチやフィックス
  • コンポーネントのサブマイナー バージョンのアップグレード

イメージ バージョンと Dataproc のサポート

マイナー イメージ バージョンは、最初の GA(一般提供)リリースから 24 か月間サポートされます。この期間中、これらのイメージ バージョンを使用するクラスタはサポートの対象になります(修正を受けるには、サポートされている最新のサブマイナー イメージ バージョンを使用してクラスタを再作成してください)。サポート期間が終了すると、イメージ バージョンを使用するクラスタはサポートの対象ではなくなります。

古いイメージ バージョン

以前サポートされていた OS ディストリビューション

以前サポートされていた OS ディストリビューションは次のとおりです。

OS ディストリビューション コード OS ディストリビューション 最終パッチ(サポート終了)
debian9 Debian 9 2020 年 7 月 10 日
deb8 Debian 8 2018 年 10 月 26 日

明示的な OS ディストリビューションがないイメージ バージョン

2018 年 8 月 16 日より前のイメージ バージョンはすべて Debian 8 でビルドされ、OS ディストリビューション コードが省略されています。次の形式で指定されています。

version_major.version_minor.version_sub_minor

0.1 と 0.2

一般提供になった Dataproc バージョン 1.0 より前にアルファ版またはベータ版としてリリースされたイメージ バージョンは、Dataproc サポート ポリシーの対象になりません。

バージョニングに関する重要な注意事項

  • イメージ バージョンには、次のコンポーネントが含まれます。
  • 新しいイメージ バージョンがリリースされても、Dataproc クラスタは自動的には更新されません。
    • 推奨事項:
    • 最新のサブマイナー イメージ バージョンでクラスタを実行します。 イメージ メタデータには previous-subminor ラベルが含まれます。これは、クラスタが最新のサブマイナー イメージ バージョンを使用していない場合は true に設定されます。
      • イメージのメタデータを表示するには:
        1. 次の gcloud compute images list --filter コマンドを実行して、Dataproc イメージのリソース名を一覧表示します。
          gcloud compute images list --project=PROJECT_NAME --filter="labels.goog-dataproc-version ~ ^IMAGE_VERSION (such as 2.2.16-debian12)"
          
        2. 次の gcloud compute images describe を実行して、イメージ メタデータを表示します。
          gcloud compute images describe --project=PROJECT_NAME IMAGE_NAME"
          
    • 特に新しいメジャー イメージ バージョン リリースを使用する場合に、新しいイメージ バージョンで作成されたクラスタでアプリケーションが正しく動作することをテストし、検証します。