開始使用 Batch

本頁說明如何開始使用 Batch for Google Cloud。

總覽

Batch 是一項全代管服務,可讓您在 Google Cloud 資源中排定時間、排入佇列和執行批次處理工作負載。舉例來說,您可以考慮使用 Batch 處理高效能運算 (HPC)、機器學習 (ML) 和資料處理工作負載。Batch 會代您佈建資源及管理容量,讓您大規模執行批次工作負載。

使用 Batch 時,您不需要設定及管理第三方工作排程器、佈建及取消佈建資源,也不需要一次要求一個區域的資源。如要執行工作,請指定工作負載所需的資源參數,然後 Batch 會取得資源,並將工作排入佇列以供執行。Batch 與其他 Google Cloud 服務原生整合,可協助排定、執行、儲存及分析批次工作,讓您專心提交工作及使用結果。

Batch 包含下列元件:

  • 工作:排定的程式,會執行一組工作直到完成,不需要任何使用者互動,通常用於運算工作負載。舉例來說,工作可以是單一 Shell 指令碼,也可以是複雜的多部分運算。

    具體來說,批次工作代表一或多個工作陣列,以及執行這些工作的環境。您可將工作程式定義為一或多個可執行檔的序列。每個工作都會在作業的資源上執行可執行檔序列。您可以將工作中的工作設定為平行或依序執行。

  • 工作:執行一次工作的一連串可執行項目。如果工作有多個工作,您可以參照工作可執行檔中工作索引的環境變數,指定每個執行的變數。

  • 可執行項目:您在工作中定義的可執行指令碼或容器。

  • 資源:執行工作所需的基礎架構。您只需要指定每個工作所需的運算資源:CPU 核心、記憶體,以及 (如有需要) 額外的開機磁碟儲存空間。您也可以視需要為工作指定其他資源選項。在工作執行期間,Batch 會自動建立及刪除符合您規格的資源。

    具體來說,每個 Batch 工作都會在區域代管執行個體群組 (MIG) 上執行,這類群組包含一或多個相符的 Compute Engine 虛擬機器 (VM) 執行個體,每個執行個體都位於其中一個包含的可用區。每個 VM 都有專屬的 CPU 核心和記憶體 (會影響作業效能),以及儲存作業系統 (OS) 映像檔和作業執行指示的開機磁碟。如果指定,工作也可能包含或存取其他資源,例如 GPU 或外部儲存空間磁碟區。為工作佈建的 VM 數量取決於您指定的硬體需求和工作排程選項。

總而言之,Batch 可讓您建立及執行工作,每項工作都會自動佈建及運用執行工作所需的資源。

如要進一步瞭解工作行為和選項,請參閱工作建立和執行總覽頁面。

定價

使用 Batch 不會產生額外費用。您只需要支付執行工作所需的基礎資源費用。

如要進一步瞭解 Batch 的相關費用,以及如何篩選 Cloud Billing 報表來查看 Batch 費用,請參閱「定價」。

限制

批次作業有下列限制:

  • 您無法超過專案的 Batch 配額和限制
  • 每個工作只能指定一種機器類型,可以是預先定義自訂的類型。
  • 每個工作只能指定一個工作群組。所有工作都只有一個名為 group0 的工作群組。

必要條件

如要開始使用 Batch,請完成下列事前準備工作:

  1. 如果專案先前未使用過 Batch,請為專案啟用 Batch
  2. 為每位新使用者設定 Batch

為專案啟用 Batch

如要開始在專案中使用 Batch,請執行下列操作:

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  2. Verify that billing is enabled for your Google Cloud project.

  3. 請確認專案已啟用 Batch:

    1. 使用Google Cloud 控制台或 Google Cloud CLI 啟用 Batch 的 API。

      控制台

      Enable the Batch, Compute Engine, and Cloud Logging APIs.

      Enable the APIs

      gcloud

      Enable the Batch, Compute Engine, and Cloud Logging APIs.

      Enable the APIs

    2. 請確認專案具備一或多個服務帳戶,且這些帳戶擁有建立及存取資源的必要權限,可執行 Batch 工作。

      請務必授予使用者權限,允許他們使用其中一個服務帳戶,在專案中建立及執行 Batch 工作。因此,請勿選取權限比您要授予這些使用者還多的服務帳戶。

      根據預設,每個作業使用的服務帳戶都是 Compute Engine 預設服務帳戶,但您也可以自訂作業使用的服務帳戶

      除非您打算只為工作服務帳戶使用預設設定,否則請將下列 IAM 角色授予專案用於 Batch 工作的任何服務帳戶。

      • 專案的 Batch Agent Reporter (roles/batch.agentReporter)
      • 如要讓作業在 Cloud Logging 中產生記錄,請在專案中授予「記錄檔寫入者」(roles/logging.logWriter) 權限

      根據您想用於工作的設定選項,您用於工作的服務帳戶可能也需要其他角色。請參閱各項工作的說明文件,瞭解是否需要其他權限。如要進一步瞭解如何將角色授予服務帳戶,請參閱限制服務帳戶管理服務帳戶的存取權

    3. 請務必瞭解專案的 Batch 服務代理人:

      建立批次作業後,系統會自動為專案建立 Batch 服務代理程式,名稱如下:

      service-PROJECT_NUMBER@gcp-sa-cloudbatch.iam.gserviceaccount.com
      

      PROJECT_NUMBER 替換為專案的專案編號

      Batch 服務代理會自動獲得 Google Batch 服務代理 (roles/batch.serviceAgent) IAM 角色。專案必須完成這項設定,才能使用 Batch。

      不過,在某些情況下 (例如在共用虛擬私有雲網路中執行工作),您必須授予專案的 Batch 服務代理程式額外權限。

      詳情請參閱服務代理程式

為新使用者設定 Batch

如要以使用者身分開始使用 Batch,請執行下列操作:

  1. 如要取得使用 Batch 所需的權限,請要求管理員授予專案的必要 IAM 角色。請參閱各項工作的說明文件,瞭解所需權限。

    舉例來說,如果您想建立基本工作,開始學習如何使用 Batch,請考慮要求下列工作適用的角色:

    • 如何建立工作:
    • 列出及說明工作:專案的批次工作編輯者 (roles/batch.jobsEditor) 或批次工作檢視者 (roles/batch.jobsViewer)
    • 如要查看作業記錄,請使用專案中的記錄檢視器 (roles/logging.viewer)
    • 如要刪除工作:專案的批次工作編輯者 (roles/batch.jobsEditor)

    如要進一步瞭解如何授予角色,請參閱管理存取權

  2. 如要使用 Batch 的指令列範例,請執行下列操作來設定 Google Cloud CLI。進一步瞭解 Google Cloud CLI 的驗證

    1. 安裝 Google Cloud CLI。 安裝完成後,執行下列指令初始化 Google Cloud CLI:

      gcloud init

      如果您使用外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI

    2. 建議:使用 gcloud config set project 指令設定預設專案:

      gcloud config set project PROJECT_ID
      

      PROJECT_ID 替換為專案的專案 ID

  3. 如要使用 Batch 的 API 範例或用戶端程式庫範例,請參閱「向 Batch 進行驗證」。

取得支援

如要與社群討論 Batch,請在 Cloud 論壇使用 Batch 標籤。

如果使用 Batch 時遇到問題,請參閱疑難排解說明文件。

如要取得 Batch 支援或提供意見,請使用下列資源:

  • 如有 Google Cloud的帳單問題,請與帳單支援團隊聯絡。

  • 如果您已購買付費支援方案,請直接與支援團隊聯絡,解決 Batch 相關問題。 Google Cloud

    Google Cloud 提供多種支援方案,可滿足不同的需求,例如全年無休的全天候支援、電話支援服務,以及直接諮詢技術支援經理。詳情請參閱Google Cloud 支援

  • 如要提供關於 Batch 的意見或功能要求,或回報 Batch 問題 (不含付費支援方案),請按一下「傳送意見」按鈕。您可以在每個 Batch 說明文件頁面的開頭和結尾找到這個按鈕。然後選取下列其中一個選項:

    • 如要提供 Batch 說明文件相關意見,請選取「Documentation feedback」。
    • 如要提供有關 Batch 的其他意見,請選取「產品意見回饋」。

後續步驟