使用標籤

瞭解如何在 Knative 服務和修訂版本中建立及使用標籤。

標籤是套用至服務和修訂版本的鍵/值組合。在 Knative serving 服務上設定標籤時,系統會為該服務建立含有這個標籤的新修訂版本,標籤不會套用至舊版修訂版本。

Knative serving 的標籤是 Kubernetes 資源標籤,不會傳播至 Google Cloud。如要進一步瞭解如何使用標籤分析叢集資源用量,請參閱「瞭解叢集資源用量」。

標籤使用規則

Knative serving 只能使用有效的 Kubernetes 標籤

設定或修改標籤

變更任何設定都會建立新的修訂版本。除非您明確做出更新,變更這項設定,否則後續的修訂版本也會自動取得這個設定。

部署新服務或更新現有服務並部署版本時,您可以使用 Google Cloud 控制台、Google Cloud CLI 或 YAML 檔案設定或修改標籤:

控制台

  1. 前往 Google Cloud 控制台的 Knative Serving:

前往 Knative serving

  1. 找出要設定標籤的服務,然後勾選左側的核取方塊。

  2. 確認最右側的「資訊面板」已開啟 (「顯示資訊面板」)。

  3. 按一下「標籤」即可顯示標籤窗格。

    設定標籤

  4. 如要編輯現有標籤鍵值,請找出標籤並視需要變更「值」

  5. 如要在服務上設定新標籤,請按一下「新增標籤」,然後提供鍵和值。

  6. 點選「儲存」

指令列

您可以使用 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"

YAML

您可以使用 gcloud run services describe 指令和 --format=export 標記,將現有服務的設定下載到 YAML 檔案中。然後修改該 YAML 檔案,並使用 gcloud run services replace 指令部署這些變更。請務必只修改指定的屬性。

  1. 將服務設定下載到本機工作區中名為 service.yaml 的檔案:

    gcloud run services describe SERVICE --format export > service.yaml

    SERVICE 替換為 Knative 服務服務名稱。

  2. 在你的本機檔案中,更新 labels 屬性:

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE
      labels:
        LABEL: 'VALUE'

    取代

    • SERVICE 改為 Knative serving 服務名稱
    • LABEL 替換為標籤名稱
    • VALUE 替換為所需值
  3. 使用下列指令,以新設定取代服務:

    gcloud run services replace service.yaml

依標籤列出服務

您可以使用 Google Cloud CLI 篩選器,依標籤列出服務:

  gcloud run services list --filter metadata.labels.LABEL=VALUE
  

取代:

  • LABEL 替換為標籤名稱
  • VALUE,然後輸入要納入篩選清單的值

刪除標籤

您可以使用主控台或指令列刪除標籤。

控制台

  1. 前往 Google Cloud 控制台的 Knative Serving:

前往 Knative serving

  1. 找出要刪除標籤的服務,然後勾選左側的核取方塊。

  2. 確認最右側的「資訊面板」已開啟 (「顯示資訊面板」)。

  3. 按一下「標籤」即可顯示標籤窗格。

  4. 找出要刪除的標籤。

  5. 將游標懸停在標籤的「Value」(值) 文字方塊右側,顯示垃圾桶圖示,然後按一下垃圾桶圖示。

  6. 點選「儲存」

指令列

如要清除服務的所有標籤:

gcloud run services update SERVICE --clear-labels

如要從服務中刪除特定標籤,請提供以半形逗號分隔的鍵清單:

gcloud run services update SERVICE --remove-labels LABEL

取代

  • SERVICE 改為 Knative serving 服務名稱
  • LABEL 改為標籤名稱