搭配 Batch 使用 VPC Service Controls

本文說明如何搭配 Batch 使用 VPC Service Controls。VPC Service Controls 可將特定資源隔離到服務 perimeter,藉此保護 Google Cloud 服務的資源和資料。服務範圍會封鎖與範圍外服務的連線,以及未明確允許的網際網路連線。 Google Cloud

  • 如要設定 VPC Service Controls 服務邊界以使用 Batch,請參閱本文的「為 Batch 設定服務邊界」。
  • 如果專案或網路使用 VPC Service Controls 限制 Batch 的網路存取權,您必須設定 Batch 作業,在所需的服務周圍區域內執行。如要瞭解如何建立,請參閱本文的「建立在 service perimeter 中執行的工作」。

如要進一步瞭解網路概念和設定網路的時機,請參閱「批次網路總覽」。

事前準備

  1. 如果您從未使用過 Batch,請參閱「開始使用 Batch」,並完成專案和使用者的必要條件,啟用 Batch。
  2. 如要取得搭配 Batch 使用 VPC Service Controls 所需的權限,請要求管理員授予下列 IAM 角色:

    如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。

    您或許也能透過自訂角色或其他預先定義的角色,取得必要權限。

  3. 如果您建立在服務周界執行的工作,必須找出要用於該工作的網路。在服務範圍內執行的作業所指定的網路必須符合下列規定: 詳情請參閱「建立及管理虛擬私有雲網路」。

為 Batch 設定服務範圍

如要為 Batch 設定服務範圍,請按照下列步驟操作:

  1. 規劃服務範圍的設定。如要瞭解服務範圍的設定階段總覽,請參閱 VPC Service Controls 說明文件的「服務範圍詳細資料和設定」。

    如要使用 Batch,服務安全防護範圍必須符合下列規定:

    • 受限制的服務:如要在服務範圍內保護 Batch,您必須在該範圍內加入 Batch 工作所需的 Google Cloud 服務,例如下列服務:

      • 批次 API (batch.googleapis.com)
      • Cloud Logging API (logging.googleapis.com):如要讓作業將記錄寫入 Cloud Logging,就必須啟用這項 API。(建議)
      • Container Registry API (containerregistry.googleapis.com): 如果提交的作業使用任何容器,且容器的映像檔來自 Container Registry,則必須啟用這項 API。
      • Artifact Registry API (artifactregistry.googleapis.com): 如果您提交的作業使用任何含有 Artifact Registry 映像檔的容器,則必須啟用這項 API。
      • Filestore API (file.googleapis.com):如果作業使用 Filestore 檔案共用,則為必要項目。
      • Cloud Storage API (storage.googleapis.com):部分使用 Cloud Storage bucket 的作業需要此 API。如果您為批次工作使用的映像檔未預先安裝批次服務代理程式,則必須提供這項資訊。

      如要瞭解如何在 service perimeter 中啟用這些服務,請參閱「可透過虛擬私有雲存取的服務」。

      除了 Batch 以外,您納入的每項服務也必須驗證您的服務周圍區域是否符合「VPC Service Controls 支援的產品和限制」說明文件中列出的服務需求。

    • 虛擬私有雲網路:每個 Batch 批次工作都需要虛擬私有雲網路,因此 service perimeter 必須包含 Batch 批次工作可執行的虛擬私有雲網路。如要瞭解如何設定虛擬私有雲網路,以便在服務邊界內執行 Batch 工作,請參閱下列文件:

  2. 建立新的服務邊界,或更新現有的服務邊界,以符合這些規定。

建立在服務範圍內執行的工作

建立要在服務安全防護範圍內執行的工作時,您也必須封鎖工作執行的所有 VM 的外部存取權,並指定允許工作存取必要 API 的網路和子網路。

如要建立在服務範圍內執行的工作,請按照「建立工作,禁止所有 VM 存取外部資源」一文中的步驟操作,並指定符合在服務範圍內執行工作時網路需求的網路。

後續步驟