本頁說明如何使用預設的 Cloud Run 自動調度資源行為,為 Cloud Run 服務設定可使用的執行個體數量上限。如果您使用手動資源調度,也請參閱手動資源調度的說明文件,瞭解這些帳單設定如何搭配手動調度的服務運作。
在 Cloud Run 中指定執行個體數量上限,可限制服務因應傳入要求而進行的資源調度,但由於流量暴增等情況,這項上限設定可能會在短時間內遭到突破。
您可以透過這項設定控管費用,或限制與後端服務 (例如資料庫) 的連線數量。
如要瞭解服務可能適用的執行個體數量上限,請參閱「設定上限執行個體限制」。
如要進一步瞭解 Cloud Run 如何自動調度容器執行個體資源,請參閱「執行個體自動調度資源」。
必要的角色
如要取得設定及部署 Cloud Run 服務所需的權限,請要求管理員授予下列 IAM 角色:
-
Cloud Run 開發人員 (
roles/run.developer
) 在 Cloud Run 服務上 -
服務帳戶使用者 (
roles/iam.serviceAccountUser
) 服務身分
如需與 Cloud Run 相關聯的 IAM 角色和權限清單,請參閱 Cloud Run IAM 角色和 Cloud Run IAM 權限。如果 Cloud Run 服務與Google Cloud API (例如 Cloud 用戶端程式庫) 介接,請參閱服務身分設定指南。 如要進一步瞭解如何授予角色,請參閱部署權限和管理存取權。
設定及更新執行個體數量上限
變更任何設定都會建立新的修訂版本。除非您明確做出更新,變更這項設定,否則後續的修訂版本也會自動取得這個設定。
根據預設,Cloud Run 服務會擴充至最多 100 個執行個體。
您可以在建立新服務或部署新修訂版本時,使用 Google Cloud 控制台、Google Cloud CLI 或 YAML 檔案變更執行個體上限設定。
控制台
前往 Google Cloud 控制台的 Cloud Run:
從選單中選取「服務」,然後按一下「部署容器」,設定新服務。如要設定現有服務,請按一下該服務,然後點選「編輯並部署新修訂版本」。
如要設定新服務,請填寫初始服務設定頁面,然後按一下「容器、磁碟區、網路與安全性」,展開服務設定頁面。
按一下「容器」分頁標籤。
- 在標示為「Maximum number of instances」(執行個體數量上限) 的欄位中,使用
1
到上限之間的任何整數值,指定所需的執行個體數量上限。
- 在標示為「Maximum number of instances」(執行個體數量上限) 的欄位中,使用
按一下 [Create] (建立) 或 [Deploy] (部署)。
gcloud
您可以使用以下指令,更新特定服務的執行個體數量上限:
gcloud run services update SERVICE --max-instances MAX-VALUE
取代
- SERVICE 改為您的服務名稱,
- MAX-VALUE,並使用介於
1
和上限之間的任何整數值,指定所需的容器執行個體數量上限。指定default
可清除任何執行個體數量上限設定,並還原預設的 100 個執行個體。
您也可以在部署期間,使用以下指令設定執行個體數量上限:
gcloud run deploy --image IMAGE_URL --max-instances MAX-VALUE
取代
- IMAGE_URL,並參照容器映像檔,例如
us-docker.pkg.dev/cloudrun/container/hello:latest
。如果您使用 Artifact Registry,則必須先建立存放區 REPO_NAME。網址的格式為LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG
。 - MAX-VALUE 改成所需的容器執行個體數量上限。
YAML
如要建立新服務,請略過這個步驟。 如要更新現有服務,請下載其 YAML 設定:
gcloud run services describe SERVICE --format export > service.yaml
更新
autoscaling.knative.dev/maxScale:
屬性:apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE spec: template: metadata: annotations: autoscaling.knative.dev/maxScale: 'MAX-INSTANCE' name: REVISION
取代
- SERVICE 改為 Cloud Run 服務名稱
- MAX-INSTANCE,填入所需的數量上限。
- REVISION,並提供新的修訂版本名稱,或刪除該名稱 (如有)。如果您提供新的修訂版本名稱,則必須符合下列條件:
- 開頭為「
SERVICE-
」 - 只能包含小寫字母、數字和
-
- 結尾不是
-
- 不超過 63 個半形字元
- 開頭為「
使用下列指令建立或更新服務:
gcloud run services replace service.yaml
Terraform
如要瞭解如何套用或移除 Terraform 設定,請參閱「基本 Terraform 指令」。
在 Terraform 設定中,將下列內容新增至google_cloud_run_v2_service
資源:上述 google_cloud_run_v2_service
資源指定 template.scaling
底下 的執行個體數量上限。10
將 10
改成所需的執行個體數量上限。
查看執行個體上限設定
如要查看 Cloud Run 服務目前的執行個體數量上限設定:
控制台
前往 Google Cloud 控制台的 Cloud Run:
按一下感興趣的服務,開啟「服務詳細資料」頁面。
按一下「Revisions」(修訂版本) 分頁標籤。
在右側的詳細資料面板中,「執行個體數量上限」設定會列在「容器」分頁下方。
gcloud
使用下列指令:
gcloud run services describe SERVICE
在傳回的設定中找出執行個體數量上限設定。