瞭解如何在 Knative 服務和修訂版本中建立及使用標籤。
標籤是套用至服務和修訂版本的鍵/值組合。在 Knative serving 服務上設定標籤時,系統會為該服務建立含有這個標籤的新修訂版本,標籤不會套用至舊版修訂版本。
Knative serving 的標籤是 Kubernetes 資源標籤,不會傳播至 Google Cloud。如要進一步瞭解如何使用標籤分析叢集資源用量,請參閱「瞭解叢集資源用量」。
標籤使用規則
Knative serving 只能使用有效的 Kubernetes 標籤。
設定或修改標籤
變更任何設定都會建立新的修訂版本。除非您明確做出更新,變更這項設定,否則後續的修訂版本也會自動取得這個設定。
部署新服務或更新現有服務並部署版本時,您可以使用 Google Cloud 控制台、Google Cloud CLI 或 YAML 檔案設定或修改標籤:
控制台
- 前往 Google Cloud 控制台的 Knative Serving:
找出要設定標籤的服務,然後勾選左側的核取方塊。
確認最右側的「資訊面板」已開啟 (「顯示資訊面板」)。
按一下「標籤」即可顯示標籤窗格。
如要編輯現有標籤鍵值,請找出標籤並視需要變更「值」。
如要在服務上設定新標籤,請按一下「新增標籤」,然後提供鍵和值。
點選「儲存」。
指令列
您可以使用 Google Cloud CLI 為新服務設定標籤,或更新現有服務:
如要更新現有服務的標籤,請執行
gcloud run services update
指令,並指定下列其中一個參數:範例:
gcloud run services update SERVICE --update-labels KEY1=VALUE1,KEY2=VALUE2
取代:
- SERVICE 改為您的服務名稱。
- KEY1=VALUE1,KEY2=VALUE2,並以半形逗號分隔每個標籤的名稱和值配對清單。 為每個 KEY 指定標籤名稱,並為 VALUE 指定值。 如何指定多個參數。
指令參數選項
如要指定多組鍵/值組合,您可以指定多個參數,方便閱讀。範例:[...] --set-labels "KEY=VALUE1" \ --set-labels "KEY=VALUE2" \ --set-labels "KEY=VALUE3"
如要為新服務設定標籤,請使用
--set-labels
參數執行gcloud run deploy
指令:gcloud run deploy SERVICE --image=IMAGE_URL --set-labels KEY1=VALUE1,KEY2=VALUE2
取代:
- IMAGE_URL,並參照容器映像檔,例如
gcr.io/cloudrun/hello
。 - SERVICE 改為您的服務名稱。
- KEY1=VALUE1,KEY2=VALUE2,並以半形逗號分隔每個標籤的名稱和值配對清單。 為每個 KEY 指定標籤名稱,並為 VALUE 指定值。 如何指定多個參數。
指令參數選項
如要指定多組鍵/值組合,您可以指定多個參數,方便閱讀。範例:[...] --set-labels "KEY=VALUE1" \ --set-labels "KEY=VALUE2" \ --set-labels "KEY=VALUE3"
- IMAGE_URL,並參照容器映像檔,例如
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 服務服務名稱。
在你的本機檔案中,更新
labels
屬性:apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE labels: LABEL: 'VALUE'
取代
- SERVICE 改為 Knative serving 服務名稱
- 將 LABEL 替換為標籤名稱
- VALUE 替換為所需值
使用下列指令,以新設定取代服務:
gcloud run services replace service.yaml
依標籤列出服務
您可以使用 Google Cloud CLI 篩選器,依標籤列出服務:
gcloud run services list --filter metadata.labels.LABEL=VALUE
取代:
- 將 LABEL 替換為標籤名稱
- VALUE,然後輸入要納入篩選清單的值
刪除標籤
您可以使用主控台或指令列刪除標籤。
控制台
- 前往 Google Cloud 控制台的 Knative Serving:
找出要刪除標籤的服務,然後勾選左側的核取方塊。
確認最右側的「資訊面板」已開啟 (「顯示資訊面板」)。
按一下「標籤」即可顯示標籤窗格。
找出要刪除的標籤。
將游標懸停在標籤的「Value」(值) 文字方塊右側,顯示垃圾桶圖示,然後按一下垃圾桶圖示。
點選「儲存」。
指令列
如要清除服務的所有標籤:
gcloud run services update SERVICE --clear-labels
如要從服務中刪除特定標籤,請提供以半形逗號分隔的鍵清單:
gcloud run services update SERVICE --remove-labels LABEL
取代
- SERVICE 改為 Knative serving 服務名稱
- LABEL 改為標籤名稱