瞭解如何指定要分配給每個 Knative 服務容器執行個體的 CPU 數量。根據預設,Knative 服務不會指定 CPU 數量下限或上限。而是取決於可用資源量。如要進一步瞭解 CPU 資源,請參閱容器執行階段合約。
設定及更新 CPU 分配方式
變更任何設定都會建立新的修訂版本。除非您明確做出更新,變更這項設定,否則後續的修訂版本也會自動取得這個設定。
部署新服務或更新現有服務並部署版本時,您可以使用 Google Cloud 控制台、Google Cloud CLI 或 YAML 檔案設定 CPU 分配量:
控制台
前往 Google Cloud 控制台的 Knative Serving:
如要設定部署的新服務,請按一下「建立服務」。如要設定現有服務,請按一下該服務,然後按一下「Edit & Deploy New Revision」(編輯及部署新的修訂版本)。
在「進階設定」下方,按一下「容器」。
從下拉式清單中選取所需的 CPU 分配量。您可以選取「Kubernetes CPU 單位」中的數字。舉例來說,如要指定 1 個 CPU,請輸入
1
;如要指定 0.4 個 CPU,請輸入400m
,依此類推。按一下「下一步」繼續前往下一個部分。
在「設定這項服務的觸發方式」部分,選取要用來叫用服務的連線。
按一下「建立」,將映像檔部署到 Knative 服務,然後等待部署作業完成。
指令列
如果是現有服務,請執行
gcloud run services update
指令並搭配--cpu
參數,設定要分配的 CPU 數量:gcloud run services update SERVICE --cpu CPU
取代:
- SERVICE 改為您的服務名稱。
- 將 CPU 替換為所需的 CPU 分配方式。以 Kubernetes CPU 單位指定值。舉例來說,您可以為 1 個 CPU 指定
1
,為 0.4 個 CPU 指定400m
,以此類推。
如果是新服務,請執行
gcloud run deploy
指令並使用--cpu
參數,設定要分配的 CPU 數量:gcloud run deploy SERVICE --image=IMAGE_URL --cpu CPU
取代:
- SERVICE 改為您的服務名稱。
- IMAGE_URL,並參照容器映像檔,例如
gcr.io/cloudrun/hello
。 - 將 CPU 替換為所需的 CPU 分配方式。以 Kubernetes CPU 單位指定值。舉例來說,您可以為 1 個 CPU 指定
1
,為 0.4 個 CPU 指定400m
,以此類推。
YAML
您可以使用 gcloud run services describe
指令和 --format=export
標記,將現有服務的設定下載到 YAML 檔案中。然後修改該 YAML 檔案,並使用 gcloud run services replace
指令部署這些變更。請務必只修改指定的屬性。
將服務設定下載到本機工作區中名為
service.yaml
的檔案:gcloud run services describe SERVICE --format export > service.yaml
將 SERVICE 替換為 Knative 服務服務名稱。
在你的本機檔案中,更新
cpu
屬性:apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE spec: template: spec: containers: - image: IMAGE resources: limits: cpu: CPU
取代
- SERVICE 改為 Knative serving 服務名稱
- IMAGE 改為容器映像檔的網址。
- 將 CPU 替換為所需的 CPU 值。
以 Kubernetes CPU 單位指定值。
舉例來說,您可以為 1 個 CPU 指定
1
,為 0.4 個 CPU 指定400m
,以此類推。
使用下列指令,以新設定取代服務:
gcloud run services replace service.yaml