建立 Managed Service for Apache Spark 叢集時,請指定 Compute Engine 區域做為叢集位置。您也可以指定該區域內的可用區,或略過可用區,讓 Managed Service for Apache Spark 自動選擇可用區功能在指定區域中自動選取可用區。叢集的所有節點都會部署到所選可用區。
如果叢集地區包含至少兩個未排除的區域,您可以從自動選擇區域條件中排除區域。詳情請參閱使用自動選擇區域位置。
自動選擇可用區及預留資源
自動選擇可用區功能會優先在有預留資源的可用區建立叢集,規則如下:
如果可用區的預留和隨需資源 (如有必要) 加總後,可以滿足叢集的資源要求,自動選擇可用區功能就會使用這些資源,在該可用區建立叢集。
自動選擇可用區功能會依據可用區的預留 CPU 核心 (
vCPU) 總數,優先選取可用區。範例:叢集建立要求指定 20 個
n2-standard-2和 1 個n2-standard-64(共要求 40 + 64 個vCPUs)。自動選擇可用區功能會依據可用區能使用的預留 vCPU 總數,優先選取下列可用區:zone-c可用的預留項目:3 個n2-standard-2和 1 個n2-standard-64(70 個vCPUs)zone-b可用的預留項目:1 個n2-standard-64(64 個vCPUs)zone-a可用的預留項目:25 個n2-standard-2(50 個vCPUs)假設這些可用區都有額外隨需
vCPU和其他資源,可以滿足叢集要求,自動選擇可用區功能會選取zone-c來建立叢集。
如果可用區的預留和隨需資源加總後,仍無法完全滿足資源要求,自動選擇可用區功能就會選取使用隨選資源後,最有機會滿足要求的可用區來建立叢集。
使用自動選擇可用區位置功能
控制台
如要建立能自動選擇可用區位置的 Managed Service for Apache Spark 叢集,請按照下列步驟操作:
- 在 Google Cloud 控制台中,開啟 Managed Service for Apache Spark 的「Create a Managed Service for Apache Spark cluster on Compute Engine」(在 Compute Engine 建立 Managed Service for Apache Spark 叢集) 頁面,系統會選取「Set up cluster」(設定叢集) 面板。
- 在「Location」(位置) 部分,執行下列操作:
- 在「Region」(區域) 部分,為叢集選取區域。
- 在「Zone」(可用區) 下方,選取「Any」(任意)。
排除可用區:不支援透過 Google Cloud 控制台指定要從自動選擇可用區位置排除的可用區。如要使用這項功能,請透過 Google Cloud CLI 和 REST API 操作。
gcloud CLI
如要建立可以自動選擇可用區位置的 Managed Service for Apache Spark 叢集,請執行 gcloud dataproc clusters create 指令。將 --region 旗標設為區域,然後省略 --zone 旗標,或將 --zone 旗標設為空字串 (--zone="")。
--auto-zone-exclude-zones 標記指定以半形逗號分隔的可用區清單。自動選擇可用區功能會從指定區域選取可用區,但會從選取條件中排除列出的可用區。請注意,叢集區域中必須至少有兩個未排除的可用區。
範例:
基本自動區域用法:
gcloud dataproc clusters create CLUSTER_NAME \ --region=REGION \ other args ...
自動選擇可用區 (已排除可用區):
gcloud dataproc clusters create CLUSTER_NAME \ --region=REGION \ --auto-zone-exclude-zones=ZONE_1,ZONE_2 \ other args ...
REST API
如要建立可以自動選擇可用區位置的 Managed Service for Apache Spark 叢集,請建構 JSON clusters.create API 要求,並將 gceClusterConfig.zoneUri 欄位留空。將區域名稱插入 REST 端點 https://dataproc.googleapis.com/v1/projects/projectId/regions/region/clusters。Managed Service for Apache Spark 自動選擇可用區功能會在指定區域為叢集選擇一個可用區。
如要排除特定區域,可以填入 gceClusterConfig.autoZoneExcludeZoneUris 欄位,並列出要排除的區域名稱。請注意,叢集區域中必須至少有兩個未排除的可用區。
使用自動選擇可用區位置功能時,請使用簡短資源名稱:在自動選擇可用區位置功能的 REST API 叢集建立要求中,指定資源 URI (如 machineTypeUri 或 acceleratorTypeUri) 時,請使用簡短資源名稱,且不要指定可用區,例如「n1-standard-2」或「nvidia-tesla-t4」。