管理代理程式集區

代理程式集區是使用相同設定的代理程式集合,可提供一致的來源和目的地存取權和可見度。代理程式集區也提供傳輸頻寬限制的控管功能。

所有服務專員都必須隸屬於代理程式集區。

本指南說明如何使用代理程式集區。

事前準備

您必須具備專案的正確權限,才能使用服務機器人集區。詳情請參閱「使用 IAM 控管存取權」。

您可以查看目前的權限

如要使用 gcloud 指令,請安裝 gcloud 指令列工具

建立代理程式集區

請勿在服務專員集區名稱或服務專員 ID 前置字元中加入個人識別資訊 (PII) 或安全性資料等機密資訊。資源名稱可能會傳播至其他 Google Cloud 資源的名稱,並可能會公開給專案以外的 Google 內部系統。

如要建立代理程式集區,請按照下列步驟操作:

Google Cloud 控制台

  1. 前往 Google Cloud 控制台的「Agent pools」頁面。

    前往「代理程式集區」

    系統會顯示「代理程式集區」頁面,列出您現有的代理程式集區。

  2. 按一下「建立其他集區」

  3. 為集區命名,並視需要提供說明。

  4. 您可以選擇設定頻寬限制,套用至整個資源池。指定的頻寬 (以 MB/s 為單位) 會分配給集區中的所有代理程式。詳情請參閱「管理網路頻寬」。

  5. 按一下 [建立]。

REST API

使用 projects.agentPools.create

POST https://storagetransfer.googleapis.com/v1/projects/PROJECT_ID/agentPools?agent_pool_id=AGENT_POOL_ID

其中:

  • PROJECT_ID:您要建立代理程式集區的專案 ID。
  • AGENT_POOL_ID:您要建立的服務專員集區 ID。

如果代理程式集區停留在 Creating 狀態超過 30 分鐘,建議您刪除代理程式集區並重新建立。

在代理程式集區處於 Creating 狀態時,從專案中撤銷必要的 Storage 移轉服務權限,會導致服務行為不正確。

gcloud CLI

如要使用 gcloud 指令列工具建立代理程式集區,請執行 gcloud transfer agent-pools create

gcloud transfer agent-pools create AGENT_POOL

可用的選項如下:

  • AGENT_POOL 是這個集區的專屬永久 ID。

  • --no-async 會在集區建立前,阻斷終端機中的其他工作。如果未納入,則會以非同步方式建立資源池。

  • --bandwidth-limit 會定義這個集區的代理程式可以使用的頻寬量 (以 MB/s 為單位)。頻寬限制會套用至集區中的所有代理程式,可防止集區的轉移工作負載導致共用頻寬的其他作業發生中斷。舉例來說,輸入「50」即可將頻寬限制設為 50 MB/s。如未指定此標記,這個集區的代理程式會使用所有可用的頻寬。

  • --display-name 是可變更的名稱,可用於識別這個集區。您可以加入可能不符合資源池專屬完整名稱的詳細資料。

將代理程式指派給集區

新的代理程式集區為空白,必須指派代理程式。代理程式只能在建立時指派給代理程式集區。

如果未指定代理程式集區,系統會將代理程式指派給 transfer_service_default 集區。

如要建立代理程式並指派至集區,請按照下列步驟操作:

Google Cloud 控制台

  1. 在「代理程式集區」頁面中,選取要指派代理程式的集區。

  2. 按一下「安裝代理程式」。系統隨即顯示代理程式安裝指南。

  3. 按照操作說明在這個代理程式集區中建立代理程式。

gcloud CLI

如要使用 gcloud 指令列工具建立代理程式並指派至資源池,請執行 gcloud transfer agents install。代理程式必須安裝在具有檔案系統根目錄存取權的機器上。

gcloud transfer agents install --pool=AGENT_POOL

如要安裝可與 S3 相容來源搭配使用的代理程式,請提供存取憑證,做為 AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY 的值的環境變數,或儲存在系統設定檔中的預設憑證。

export AWS_ACCESS_KEY_ID=ID
export AWS_SECRET_ACCESS_KEY=SECRET
gcloud transfer agents install --pool=AGENT_POOL

詳情請參閱「管理轉移代理人」。

如需其他選項,請參閱「進階代理程式選項」。

如要管理代理程式,請參閱「管理轉移代理程式」。

將代理程式集區指派給工作

建立代理程式集區後,即可在工作建立更新時,將其指派給工作。

更新代理程式集區

您可以更新服務專員集區的顯示名稱和頻寬限制。

如要更新代理程式集區,請按照下列步驟操作:

Google Cloud 控制台

前往 Google Cloud 控制台的「Agent pools」頁面。

前往「代理程式集區」

您可以編輯下列項目:

  • 代理程式集區的顯示名稱:按一下目前「代理程式集區」名稱旁的 「編輯」

  • 代理程式集區的頻寬限制:按一下「設定頻寬限制」,然後在「設定頻寬限制」對話方塊中輸入新的頻寬限制。按一下「Set Limit」套用新的頻寬限制。頻寬會由集區中的所有代理程式共用。

REST API

如要更新代理程式集區,請使用 projects.agentPools.patch 搭配要更新欄位的欄位遮罩。您可以更新下列代理程式集區欄位:

舉例來說,如要將 displayName 更新為 my-transfer,您需要提供欄位遮罩 "displayName,my-transfer"

以下是更新顯示名稱的修補要求範例:

PATCH https://storagetransfer.googleapis.com/v1/projects/PROJECT_ID/agentPools/AGENT_POOL:"displayName,NEW_DISPLAY_NAME"

其中:

  • PROJECT_ID:您要更新代理程式集區的專案 ID。
  • AGENT_POOL:您要更新的服務專員集區名稱。
  • NEW_DISPLAY_NAME:這個代理程式集區的新顯示名稱。

以下是更新頻寬限制的修補要求範例:

PATCH https://storagetransfer.googleapis.com/v1/projects/PROJECT_ID/agentPools/AGENT_POOL:"bandwidthLimit,NEW_LIMIT"

其中:

  • PROJECT_ID:您要更新代理程式集區的專案 ID。
  • AGENT_POOL:您要更新的代理程式集區 ID。
  • NEW_LIMIT:此代理程式資源池的新頻寬限制。

gcloud CLI

如要使用 gcloud 指令列工具更新代理程式集區,請執行 gcloud transfer agent-pools update

gcloud transfer agent-pools update AGENT_POOL \
  [--bandwidth-limit=NEW_BANDWIDTH_LIMIT] [--clear-bandwidth-limit] \
  [--clear-display-name] [--display-name=NEW_DISPLAY_NAME]

以下是必要引數:

  • AGENT_POOL 是這個集區的專屬永久 ID。AGENT_POOL 會指出要更新的代理程式集區,且無法自行更新。

您可以使用這個指令指定下列標記:

  • --bandwidth-limit 可以更新,也可以改為指定 --clear-bandwidth-limit 來移除。如要進一步瞭解頻寬限制,請參閱「建立代理程式集區」。

  • --display-name 可以更新,也可以改用 --clear-display-name 旗標來刪除。

刪除代理程式集區

您可以刪除沒有執行中的代理程式和工作集區的代理程式集區。

如要刪除代理程式集區,請按照下列步驟操作:

Google Cloud 控制台

  1. 前往 Google Cloud 控制台的「Agent pools」頁面。

    前往「代理程式集區」

  2. 按一下 「刪除」。閱讀彈出式視窗,然後按一下「Delete」確認。

    如果刪除按鈕無法啟用,您必須停止與這個集區相關聯的所有代理程式和工作。

REST API

使用 projects.agentPools.delete

DELETE https://storagetransfer.googleapis.com/v1/projects/PROJECT_ID/agentPools/AGENT_POOL

其中:

  • PROJECT_ID:要刪除代理程式集區的專案 ID。
  • AGENT_POOL:代理程式集區名稱。

gcloud CLI

如要使用 gcloud 指令列工具刪除代理程式集區,請執行 gcloud transfer agent-pools delete

gcloud transfer agent-pools delete AGENT_POOL

以下是必要引數:

  • AGENT_POOL 是這個集區的專屬永久 ID。

如要刪除集區,請先停止集區中的所有代理程式、停用集區的工作,且這個集區不得有任何進行中的轉移作業。

如要查看與集區相關聯的所有工作,請在 Google Cloud 控制台中選取集區,然後按一下「Transfer jobs」(轉移工作) 分頁。

取得代理程式集區

如要取得代理程式集區,請按照下列步驟操作:

Google Cloud 控制台

前往 Google Cloud 控制台的「Agent pools」頁面。

前往「代理程式集區」

這個頁面會顯示與專案相關聯的所有服務人員資源池清單,以及每個服務人員資源池的以下資訊:

  • 代理程式集區名稱
  • 連線狀態
  • 已連線的代理程式數量
  • 頻寬限制 (如有)
  • 相關聯的轉移工作數量
  • 代理程式集區的顯示名稱

如要查看特定的代理人資源池,請按一下代理人資源池的「名稱」

您可以在代理程式集區的資訊頁面中執行下列動作:

  • 安裝代理程式:顯示安裝 Transfer 代理程式的操作說明。
  • 停止代理程式:在表格中選取代理程式,然後按一下「停止代理程式」
  • 列出移轉工作:按一下「移轉工作」,即可顯示這個集區中已連結的移轉工作代理程式。

REST API

使用 projects.agentPools.get

GET https://storagetransfer.googleapis.com/v1/projects/PROJECT_ID/agentPools/AGENT_POOL

其中:

  • PROJECT_ID:您要取得代理程式集區的專案 ID。
  • AGENT_POOL:要擷取的代理程式集區。

gcloud CLI

如要使用 gcloud 指令列工具擷取代理程式集區,請執行 gcloud transfer agent-pools describe

gcloud transfer agent-pools describe AGENT_POOL

以下是必要引數:

  • AGENT_POOL 是這個集區的專屬永久 ID。

列出代理程式集區

如要列出代理程式集區,請按照下列步驟操作:

Google Cloud 控制台

前往 Google Cloud 控制台的「Agent pools」頁面。

前往「代理程式集區」

系統會顯示所有代理程式集區。

REST API

使用 projects.agentPools.list

GET https://storagetransfer.googleapis.com/v1/projects/PROJECT_ID/agentPools

其中:

  • PROJECT_ID:要列出代理程式集區的專案 ID。

gcloud CLI

如要使用 gcloud 指令列工具列出代理程式集區,請執行 gcloud transfer agent-pools list

gcloud transfer agent-pools list \
  [--limit=LIMIT] \
  [--names=[NAMES,...]] \
  [--page-size=PAGE_SIZE]

您可以使用這個指令指定下列標記:

  • --limit 會定義要傳回的代理程式集區數量上限。

  • --names 可指定要列出的代理程式集區名稱。請使用半形逗號分隔多個名稱,例如 --names=foo,bar。如果未指定,系統會列出目前專案中的所有代理程式集區。

  • --page-size 會定義此指令的批次處理行為。根據預設,list 指令會將回應分批處理成 256 個項目,並自動擷取下一個批次,直到所有項目都列出或達到 limit 為止。

這個指令會傳回相符的服務專員集區清單,以及這些集區的設定詳細資料。以下範例顯示回應範例。

name: projects/my-project-123/agentPools/my-first-pool
state: CREATED
---
bandwidthLimit:
  limitMbps: '120'
displayName: Source A to destination Z.
name: projects/my-project-123/agentPools/a2z-pool
state: CREATED