使用 gcloud beta CLI 管理配額

下列各節包含 gcloud beta quotas infogcloud beta quotas preferences 指令範例。您可以使用這些指令查看及管理 QuotaInfoQuotaPreference 資源。

您可以使用 Google Cloud CLI (gcloud CLI) 取得目前的配額值,並為部分 Google Cloud API 和服務指定配額偏好設定。

限制

Cloud Quotas 具有下列限制:

  • 在大多數情況下,配額調高調整作業必須在專案層級進行。只有少數產品支援機構層級配額調高調整。如要確認 Google Cloud 產品是否支援組織層級的配額提高調整,請參閱該產品的說明文件。

  • 您可以要求調降專案、機構和資料夾層級的配額。

事前準備

使用 gcloud CLI 前,請務必安裝並初始化 gcloud CLI

您可能也需要 QUOTA_ID 值。如果是,請參閱配額 ID 查詢說明

安裝並初始化 gcloud CLI

如要使用 gcloud CLI 存取 Cloud Quotas,請務必安裝及初始化元件:

  1. 安裝 gcloud CLI。

    如果您使用 Cloud Shell,可以略過這個步驟,因為 gcloud CLI 已預先安裝。

  2. 初始化 gcloud CLI。

  3. 安裝 Beta 版元件 執行下列指令:

    gcloud components install beta
    

找出配額 ID

本頁面上的幾個 gcloud CLI 指令會參照配額 ID 值。您可以使用 Google Cloud 控制台、gcloud CLI、用戶端程式庫或 REST API 找出配額 ID。本節說明如何使用 Google Cloud 控制台或 gcloud CLI 找出配額 ID。

控制台

  1. 在 Google Cloud 控制台,依序前往「IAM & Admin」(IAM 與管理) >「Quotas & System Limits」(配額與系統限制) 頁面:

    前往「配額與系統限制」

  2. 按一下「篩選器」,即可篩選服務。

  3. 如果沒有看到「限制名稱」欄,請按一下「資料欄顯示選項...」圖示 。選取「限制名稱」,然後按一下「確定」

  4. 「限制名稱」欄會顯示配額 ID。

gcloud

如要使用 gcloud CLI 找出配額 ID 值,請執行下列指令,列出指定服務的配額資訊:

  1. 在終端機視窗中輸入下列 gcloud CLI 指令:

    gcloud beta quotas info list --service=SERVICE_NAME --project=PROJECT_ID_OR_NUMBER \
    --billing-project=BILLING_PROJECT_ID_OR_NUMBER
    

    更改下列內容:

    • SERVICE_NAME:您要查看配額的服務名稱,例如 Compute Engine 的服務名稱為 compute.googleapis.com

    • PROJECT_ID_OR_NUMBER:專案 ID 或專案編號

      如要使用 Google Cloud 控制台尋找專案 ID,請前往 Resource Manager 頁面:

      前往 Resource Manager

    • BILLING_PROJECT_ID_OR_NUMBER:配額和帳單使用的專案 ID 或專案編號。執行 gcloud 指令時,配額會受到影響,如同您直接透過 REST 或 RPC API 提出對等要求。

      指定要使用配額的專案。這可能與您要尋找配額 ID 的服務所屬專案不同。

      如果您在設定 gcloud CLI 時已設定帳單專案,則此標記為選用。否則,省略這項設定可能會導致權限遭拒錯誤。詳情請參閱「設定配額專案」。

  2. gcloud beta quotas info list 指令的輸出內容包含類似下列範例的文字:

    ...
    "quotaInfos": [
        ...
        {
            "name": "projects/PROJECT_NUMBER/locations/global/services/compute.googleapis.com/quotaInfos/CPUS-per-project-region",
            "quotaId": "CPUS-per-project-region",
            "metric": "compute.googleapis.com/cpus",
            "containerType": "PROJECT",
            "dimensions": [
                "region"
            ],
            "dimensionsInfo": [
                {
                    "details": {
                        "value": 20
                    },
                    "applicableLocations": [
                        "us-central1",
                        "us-central2",
                        "us-west1",
                        "us-east1"
                    ]
                    ...
                }
            ]
        },
        ...
    ]
    ...
  3. 找出與 quotaId 對應的值,並在後續章節中指定 QUOTA_ID 時使用。

gcloud 配額資訊指令範例

本節提供範例,說明如何使用 gcloud beta quotas info 指令查看特定服務或機構的配額資訊。

QuotaInfo 是唯讀資源,可提供特定專案、資料夾或機構的特定配額相關中繼資料和配額值資訊。

查看特定服務的配額資訊

如要查看特定服務的配額資訊,請執行下列指令:

gcloud beta quotas info describe QUOTA_ID --service=SERVICE_NAME \
    --project=PROJECT_ID_OR_NUMBER --billing-project=BILLING_PROJECT_ID_OR_NUMBER

更改下列內容:

  • QUOTA_ID:配額 ID 值。如要找出這個值,請參閱「找出配額 ID」。
  • SERVICE_NAME:您要查看配額的服務名稱,例如 Compute Engine 的服務名稱為 compute.googleapis.com
  • PROJECT_ID_OR_NUMBER:專案 ID 或專案編號
  • BILLING_PROJECT_ID_OR_NUMBER:配額和帳單使用的專案 ID 或專案編號。執行 gcloud 指令時,配額會受到影響,如同您直接透過 REST 或 RPC API 提出對等要求。

    指定要使用配額的專案。這可能與您要查看配額資訊的服務所屬專案不同。

    如果您在設定 gcloud CLI 時已設定帳單專案,則此標記為選用。否則,省略這項設定可能會導致權限遭拒錯誤。詳情請參閱「設定配額專案」。

查看機構的配額資訊

如要查看相同服務的機構配額詳細資料,請執行下列指令:

gcloud beta quotas info list --service=SERVICE_NAME --organization=ORGANIZATION_ID \
    --billing-project=BILLING_PROJECT_ID_OR_NUMBER

更改下列內容:

  • SERVICE_NAME:您要查看配額的服務名稱,例如 Compute Engine 的服務名稱為 compute.googleapis.com
  • ORGANIZATION_ID:機構 ID
  • BILLING_PROJECT_ID_OR_NUMBER:配額和帳單使用的專案 ID 或專案編號。執行 gcloud 指令時,配額會受到影響,如同您直接透過 REST 或 RPC API 提出對等要求。

    指定要使用配額的專案。這可能與您要查看配額資訊的服務所屬專案不同。

    如果您在設定 gcloud CLI 時已設定帳單專案,則此標記為選用。否則,省略這項設定可能會導致權限遭拒錯誤。詳情請參閱「設定配額專案」。

gcloud 偏好設定配額指令範例

本節提供範例,說明如何使用 gcloud beta quotas preferences 指令檢查現有配額偏好設定,以及調整配額值。

QuotaPreference 資源代表您對特定維度組合的偏好設定。維度是代表區域或地帶的屬性,或是服務專屬的維度,例如 gpu_familynetwork_id

檢查現有偏好設定

如要檢查現有偏好設定,請執行下列指令:

gcloud beta quotas preferences list --project=PROJECT_ID_OR_NUMBER \
    --billing-project=BILLING_PROJECT_ID_OR_NUMBER

更改下列內容:

  • PROJECT_ID_OR_NUMBER:專案 ID 或專案編號
  • BILLING_PROJECT_ID_OR_NUMBER:配額和帳單使用的專案 ID 或專案編號。執行 gcloud 指令時,配額會受到影響,如同您直接透過 REST 或 RPC API 提出對等要求。

    指定要使用配額的專案。這可能與您要檢查配額偏好的專案不同。

    如果您在設定 gcloud CLI 時已設定帳單專案,則此標記為選用。否則,省略這項設定可能會導致權限遭拒錯誤。詳情請參閱「設定配額專案」。

檢查是否有待處理配額調整的現有偏好設定

如要檢查是否有待處理的配額調整要求,請新增 --reconciling-only=true 旗標,如下列指令所示:

gcloud beta quotas preferences list --project=PROJECT_ID_OR_NUMBER --reconciling-only=true \
    --billing-project=BILLING_PROJECT_ID_OR_NUMBER

更改下列內容:

  • PROJECT_ID_OR_NUMBER:專案 ID 或專案編號
  • BILLING_PROJECT_ID_OR_NUMBER:配額和帳單使用的專案 ID 或專案編號。執行 gcloud 指令時,配額會受到影響,如同您直接透過 REST 或 RPC API 提出對等要求。

    指定要使用配額的專案。這可能與您要檢查配額偏好的專案不同。

    如果您在設定 gcloud CLI 時已設定帳單專案,則此標記為選用。否則,省略這項設定可能會導致權限遭拒錯誤。詳情請參閱「設定配額專案」。

如果尚未設定配額偏好設定,請申請調整配額

如要為特定區域申請調整配額,但尚未設定偏好設定,請執行下列指令:

gcloud beta quotas preferences create --preferred-value=PREFERRED_VALUE \
    --quota-id=QUOTA_ID --service=SERVICE_NAME  --project=PROJECT_ID_OR_NUMBER \
    --billing-project=BILLING_PROJECT_ID_OR_NUMBER --email=EMAIL \
    --justification=JUSTIFICATION --preference-id=PREFERENCE_ID

更改下列內容:

  • PREFERRED_VALUE:偏好的配額值
  • QUOTA_ID:配額 ID 值。如要找出這個值,請參閱「找出配額 ID」。
  • SERVICE_NAME:您要查看配額的服務名稱,例如 Compute Engine 的服務名稱為 compute.googleapis.com
  • PROJECT_ID_OR_NUMBER:專案 ID 或專案編號
  • BILLING_PROJECT_ID_OR_NUMBER:配額和帳單使用的專案 ID 或專案編號。執行 gcloud 指令時,配額會受到影響,如同您直接透過 REST 或 RPC API 提出對等要求。

    指定要使用配額的專案。這可能與您要求調整配額的專案不同。

    如果您在設定 gcloud CLI 時已設定帳單專案,則此標記為選用。否則,省略這項設定可能會導致權限遭拒錯誤。詳情請參閱「設定配額專案」。

  • EMAIL:可做為聯絡方式的電子郵件地址,以防 Google Cloud 需要更多資訊才能授予額外配額

  • JUSTIFICATION:選用字串,說明您的要求

  • PREFERENCE_ID:選填的偏好設定 ID。如未指定偏好設定 ID,API 會為您產生通用唯一識別碼 (UUID)

設定配額偏好後,申請調整配額

如要為特定區域申請調整配額,且已有偏好設定,請執行下列指令:

gcloud beta quotas preferences update PREFERENCE_ID --preferred-value=PREFERRED_VALUE \
    --quota-id=QUOTA_ID --service=SERVICE_NAME --project=PROJECT_ID_OR_NUMBER \
    --billing-project=BILLING_PROJECT_ID_OR_NUMBER --email=EMAIL  \
    --justification=JUSTIFICATION

更改下列內容:

  • PREFERENCE_ID:偏好設定 ID,使用 gcloud beta quotas preferences update 指令時,這是必要的第一個引數
  • PREFERRED_VALUE:偏好的配額值
  • QUOTA_ID:配額 ID 值。如要找出這個值,請參閱「找出配額 ID」。
  • SERVICE_NAME:您要查看配額的服務名稱,例如 Compute Engine 的服務名稱為 compute.googleapis.com
  • PROJECT_ID_OR_NUMBER:專案 ID 或專案編號
  • BILLING_PROJECT_ID_OR_NUMBER:配額和帳單使用的專案 ID 或專案編號。執行 gcloud 指令時,配額會受到影響,如同您直接透過 REST 或 RPC API 提出對等要求。

    指定要使用配額的專案。這可能與您要求調整配額的專案不同。

    如果您在設定 gcloud CLI 時已設定帳單專案,則此標記為選用。否則,省略這項設定可能會導致權限遭拒錯誤。詳情請參閱「設定配額專案」。

  • EMAIL:可做為聯絡方式的電子郵件地址,以防 Google Cloud 需要更多資訊才能授予額外配額

  • JUSTIFICATION:選用字串,說明您的要求

使用維度申請調整配額上限

如要使用維度申請調整配額上限,請執行下列指令:

gcloud beta quotas preferences create --preferred-value=PREFERRED_VALUE \
    --quota-id=QUOTA_ID --service=SERVICE_NAME --project=PROJECT_ID_OR_NUMBER \
    --dimensions=KEY1=VALUE1,KEY2=VALUE2,... --billing-project=BILLING_PROJECT_ID_OR_NUMBER \
    --email=EMAIL --justification=JUSTIFICATION --preference-id=PREFERENCE_ID

更改下列內容:

  • PREFERRED_VALUE:偏好的配額值
  • QUOTA_ID:配額 ID 值。如要找出這個值,請參閱「找出配額 ID」。
  • SERVICE_NAME:您要查看配額的服務名稱,例如 Compute Engine 的服務名稱為 compute.googleapis.com
  • PROJECT_ID_OR_NUMBER:專案 ID 或專案編號
  • KEY1=VALUE1,KEY2=VALUE2,...: 選用清單,以逗號分隔的鍵/值組合清單形式指定維度。舉例來說,維度可能會指定下列 Compute Engine 值:
    • KEY1=VALUE1region=us-east4
    • KEY2=VALUE2gpu_family=NVIDIA_H100
  • BILLING_PROJECT_ID_OR_NUMBER:配額和帳單使用的專案 ID 或專案編號。執行 gcloud 指令時,配額會受到影響,如同您直接透過 REST 或 RPC API 提出對等要求。

    指定要使用配額的專案。這可能與您要求調整配額的專案不同。

    如果您在設定 gcloud CLI 時已設定帳單專案,則此標記為選用。否則,省略這項設定可能會導致權限遭拒錯誤。詳情請參閱「設定配額專案」。

  • EMAIL:可做為聯絡方式的電子郵件地址,以防 Google Cloud 需要更多資訊才能授予額外配額

  • JUSTIFICATION:選用字串,說明您的要求

  • PREFERENCE_ID:選填的偏好設定 ID。如未指定偏好設定 ID,API 會為您產生通用唯一識別碼 (UUID)

輸出內容會包含特定於您設定的資料,且與下列範例輸出內容類似:

{
    "createTime":"CREATE_TIME",
    "dimensions":{
        "gpu_family":"NVIDIA_H100",
        "region":"us-east4"
    },
    "etag":"ETAG_VALUE",
    "name":"projects/12345/locations/global/quotaPreferences/PREFERENCE_ID",
    "quotaConfig":{
        "grantedValue":"0",
        "preferredValue":"128",
        "traceId":"TRACE_ID"
    },
    "quotaId":"GPUS-PER-GPU-FAMILY-per-project-region",
    "reconciling":true,
    "service":"compute.googleapis.com",
    "updateTime":"UPDATE_TIME",
}

查看現有的配額偏好設定

如要查看您剛才建立的配額偏好設定詳細資料,請執行下列指令:

gcloud beta quotas preferences describe PREFERENCE_ID \
    --project=PROJECT_ID_OR_NUMBER \
    --billing-project=BILLING_PROJECT_ID_OR_NUMBER

更改下列內容:

  • PREFERENCE_ID:偏好設定 ID,使用 gcloud beta quotas preferences describe 指令時,這是必要的第一個引數
  • PROJECT_ID_OR_NUMBER:專案 ID 或專案編號
  • BILLING_PROJECT_ID_OR_NUMBER:配額和帳單使用的專案 ID 或專案編號。執行 gcloud 指令時,配額會受到影響,如同您直接透過 REST 或 RPC API 提出對等要求。

    指定要使用配額的專案。這可能與您查看配額偏好設定的專案不同。

    如果您在設定 gcloud CLI 時已設定帳單專案,則此標記為選用。否則,省略這項設定可能會導致權限遭拒錯誤。詳情請參閱「設定配額專案」。

輸出內容會包含特定於您設定的資料,且與下列範例輸出內容類似:

createTime: 'CREATE_TIME'
dimensions:
  gpu_family: NVIDIA_H100
  region: us-east4
etag: ETAG_VALUE
name: projects/12345/locations/global/quotaPreferences/PREFERENCE_ID
quotaConfig:
  grantedValue: '0'
  preferredValue: '128'
  traceId: TRACE_ID
quotaId: GPUS-PER-GPU-FAMILY-per-project-region
reconciling: true
service: compute.googleapis.com
updateTime: 'UPDATE_TIME'

透過用戶端專案啟用配額調整工具

用戶端專案是指應用程式或使用者用來存取及與資源互動的專案,而資源專案則是儲存及管理這些資源的基礎專案。 Google Cloud

如要透過用戶端專案使用 gcloud CLI 啟用配額調整工具,請按照下列步驟操作:

  1. 建立客戶專案:

    gcloud projects create CLIENT_PROJECT_ID
    gcloud config set project CLIENT_PROJECT_ID
    

    CLIENT_PROJECT_ID 替換為要建立的專案 ID。專案 ID 無法變更,只能在建立專案時設定。開頭必須是小寫字母,並可包含小寫 ASCII 字母、數字或連字號,專案 ID 長度必須介於 6 至 30 個字元之間。

  2. 在用戶端專案中啟用 Cloud Quotas API:

    gcloud services enable cloudquotas.googleapis.com
    
  3. 在用戶端專案中建立服務帳戶

    gcloud iam service-accounts create SA_NAME \
      --display-name SA_DISPLAY_NAME \
      --project=CLIENT_PROJECT_ID
    

    更改下列內容:

    • SA_NAME:新服務帳戶的內部名稱。 用於產生 IAM_ACCOUNT (做為服務帳戶 ID 的 IAM 內部電子郵件地址),必須傳遞至後續指令。
    • SA_DISPLAY_NAME:服務帳戶的顯示名稱。
    • CLIENT_PROJECT_ID:用戶端專案的 ID。
  4. 建立服務帳戶金鑰

    gcloud iam service-accounts keys create KEY_FILE \
      --iam-account=SA_NAME@CLIENT_PROJECT_ID.iam.gserviceaccount.com
    

    更改下列內容:

    • KEY_FILE:JSON 服務帳戶金鑰檔案的路徑。
    • SA_NAME@CLIENT_PROJECT_ID.iam.gserviceaccount.com: 服務帳戶電子郵件地址。
  5. 將 IAM 權限授予服務帳戶:

    gcloud projects add-iam-policy-binding CLIENT_PROJECT_ID \
      --member="serviceAccount:SA_NAME@CLIENT_PROJECT_ID.iam.gserviceaccount.com" \
      --role="roles/serviceusage.serviceUsageConsumer"
    
    gcloud projects add-iam-policy-binding RESOURCE_PROJECT_ID \
      --member="serviceAccount:SA_NAME@CLIENT_PROJECT_ID.iam.gserviceaccount.com" \
      --role="roles/cloudquotas.admin"
    

    更改下列內容:

    • CLIENT_PROJECT_ID:用戶端專案的 ID。
    • RESOURCE_PROJECT_ID:資源專案的 ID。
    • SA_NAME@CLIENT_PROJECT_ID.iam.gserviceaccount.com: 服務帳戶電子郵件地址。
  6. 使用先前建立的服務帳戶金鑰啟用服務帳戶:

    gcloud auth activate-service-account --key-file=KEY_FILE
    
  7. 指定專案和啟用設定,在資源專案中啟用配額調整工具:

    gcloud beta quotas adjuster settings update --project=RESOURCE_PROJECT_ID \
      --enablement=enabled
    

    使用 gcloud CLI 時必須啟用這項設定,且必須設為 enableddisabled

  8. 選用:如要查看目前的配額調整工具設定,請執行下列指令:

    gcloud beta quotas adjuster settings describe --project=RESOURCE_PROJECT_ID 
    

    輸出結果會與下列範例相似:

    enablement: ENABLED
    etag: 8izmJp6EI__mOfLyhkQU9
    name: projects/RESOURCE_PROJECT_ID/locations/global/quotaAdjusterSettings
    updateTime: '2025-01-10T17:22:37.883221181Z'
    

如要為多個用戶端專案啟用配額調整工具,請按照先前的步驟 5 到 8 操作。請務必符合下列條件:

  • 在用戶端專案中啟用 Cloud Quotas API。
  • 請確認服務帳戶在要啟用配額調整器的所有資源專案中,都具備 cloudquotas.admin IAM 角色。

其他提供配額相關 gcloud CLI 指令的服務

除了 gcloud beta quotas 之外,部分服務也能讓您使用指令列查看配額和資源用量資訊。

舉例來說,Compute Engine 可讓您存取配額資訊。詳情請參閱下列 Compute Engine 專區:

後續步驟