Dataproc 會使用映像檔,將有用的 Google Cloud 連接器,以及 Apache Spark 與 Apache Hadoop 元件整合成一個套件,讓您能用來部署到 Dataproc 叢集。 這些映像檔包含叢集的基本作業系統 (Debian 或 Ubuntu),以及執行工作所需的核心與選用元件,例如 Spark、Hadoop 和 Hive。 我們會定期升級這些映像檔,加入新的改善項目和功能。Dataproc 版本管理可讓您在建立叢集時選擇一組軟體版本。
版本管理的運作方式
映像檔建立時會給予一個格式如下的映像檔版本編號:
version_major.version_minor.version_sub_minor-os_distribution
以下為目前維護的作業系統版本:
作業系統版本編碼 | 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 |
如要查看之前支援的作業系統版本,請參閱舊映像檔版本一節。
建議的做法是為實際工作環境,或是在與特定元件版本的相容性很重要時,指定 major.minor
映像檔版本。副次要版本和作業系統版本會自動設為最近一週的新發行版本。
選取版本
建立新的 Dataproc 叢集時,系統預設會使用最新的可用 Debian 映像檔版本。您可以在建立叢集時,選取 Debian、Rocky Linux 或 Ubuntu 映像檔版本 (請參閱 Dataproc 映像檔版本清單)。如果您指定 Debian 映像檔,可以省略作業系統版本代碼的尾碼,例如指定 2.0
來選取 2.0-debian10
映像檔。如要選取 Rocky Linux 或 Ubuntu 映像檔,就必須使用作業系統的尾碼,例如指定 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
您可以指定 SoftwareConfig
imageVersion
欄位,做為 cluster.create
API 請求的一部分。
示例
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" } } }
控制台
開啟 Dataproc 的「Create a cluster」(建立叢集) 頁面。系統會選取「設定叢集」面板。 「Versioning」(版本控管) 部分的「Image type」(映像檔類型) 和「Version」(版本) 欄位會顯示系統將在建立叢集時使用的映像檔。系統也會顯示圖片發布日期。一開始,系統會顯示預設映像檔 (最新的可用 Debian 版本),並將其選取。按一下「變更」,顯示可用的映像檔清單。您可以選取標準或自訂映像檔,用於叢集。
建立新版本時
我們會定期建立新的主要版本,以納入下列其中一或多個項目:
- 下列項目的主要版本:
- Spark、Hadoop 和其他大數據元件
- Google Cloud 連接器
- Dataproc 功能的主要變更或更新
新預先發布版本 (帶有 -RC
後置字元) 會在新主要版本發布前推出:
- 預覽圖片不適用於正式環境工作負載。
- 預覽圖片元件版本可能會在預先發布後,升級至正式發布版本中可用的最新元件版本。
我們會定期建立新的次要版本,以納入下列其中一或多個項目:
- 下列項目的次要版本和更新:
- Spark、Hadoop 和其他大數據元件
- Google Cloud 連接器
- Dataproc 功能的次要變更或更新
建立新的次要版本時,該版本的 Debian 映像檔會成為主要版本的預設映像檔,代表該主要版本所用的最新版本。
我們會定期建立新的副次要版本,以納入下列其中一或多個項目:
- 映像檔中元件的修補程式或修正內容
- 元件次要版本升級
映像檔版本與 Dataproc 支援
次要映像檔版本在最初正式發布 (GA) 後,可獲得 24 個月的支援。在此期間,使用這些映像檔版本的叢集也能取得支援 (如要取得修正程式,請使用最新支援的副次要映像檔版本重新建立叢集)。在支援期限過後,使用這些映像檔版本的叢集將無法繼續取得支援。
舊版圖片
之前支援的作業系統版本
以下為之前支援的作業系統版本:
作業系統版本編碼 | OS 發行版 | 最後修補日期 (停止支援) |
---|---|---|
debian9 | Debian 9 | 2020 年 7 月 10 日 |
deb8 | Debian 8 | 2018 年 10 月 26 日 |
無明確作業系統版本的映像檔版本
在 2018 年 8 月 16 日之前,映像檔版本是使用 Debian 8 建構的,並且缺少作業系統版本代碼,格式如下:
version_major.version_minor.version_sub_minor
0.1 和 0.2 版
我們在 Dataproc 版本 1.0
正式發行版之前所推出的 Alpha 版或 Beta 版映像檔,不受 Dataproc 支援政策的規範。
版本管理的重要注意事項
- 映像檔版本包含下列元件:
- 新映像檔版本發布時,Dataproc 叢集不會自動更新。
- 建議:
- 使用最新的次要映像檔版本執行叢集。映像檔中繼資料包含
previous-subminor
標籤,如果叢集未使用最新的次要映像檔版本,該標籤會設為true
。- 如何查看圖片中繼資料:
- 執行下列
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
)" - 執行下列
gcloud compute images describe
,查看映像檔中繼資料。gcloud compute images describe --project=PROJECT_NAME IMAGE_NAME"
- 執行下列
- 如何查看圖片中繼資料:
- 請測試並驗證應用程式是否能在使用新版映像檔建立的叢集上順利執行,尤其是使用新版主要映像檔時。