Labels konfigurieren

Cloud Run-Labels sind Schlüssel/Wert-Paare, die auf den Cloud Run-Dienst und auf Überarbeitungen angewendet werden. Auf dieser Seite wird beschrieben, wie Sie Labels für Ihren Cloud Run-Dienst und Ihre Überarbeitungen festlegen, ändern und löschen. Wenn Sie ein Label für einen Cloud Run-Dienst festlegen, wird für diesen Dienst eine neue Überarbeitung mit diesem Label erstellt. Das Label wird nicht auf ältere Überarbeitungen angewendet.

Mögliche Anwendungsfälle:

  • Verwendung für die Kostenzuordnung und Abrechnungsaufschlüsselung.
  • Ressourcen identifizieren, die von einzelnen Teams oder Kostenstellen verwendet werden.
  • Bereitstellungsumgebungen unterscheiden (Produktion, Staging, QA oder Test).
  • Inhaber, Labels für Status identifizieren.
  • Logs in Logging filtern.

Nutzungsregeln für Labels

Die folgende Regel gilt für die Verwendung von Labels, die für einen Cloud Run-Dienst festgelegt sind:

Nur gültige Google Cloud-Labels dürfen in Cloud Run verwendet werden

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Konfigurieren und Bereitstellen von Cloud Run-Diensten benötigen:

Eine Liste der IAM-Rollen und -Berechtigungen im Zusammenhang mit Cloud Run finden Sie unter IAM-Rollen für Cloud Run und IAM-Berechtigungen für Cloud Run. Wenn Ihr Cloud Run Service mit Google Cloud APIs wie Cloud-Clientbibliotheken verknüpft ist, lesen Sie die Konfigurationsanleitung für Dienstidentitäten. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Bereitstellungsberechtigungen und Zugriff verwalten.

Labels festlegen oder ändern

Jede Konfigurationsänderung führt zur Erstellung einer neuen Überarbeitung. Für nachfolgende Überarbeitungen gilt automatisch dieselbe Konfigurationseinstellung, sofern Sie sie nicht explizit aktualisieren.

Sie können Labels über die Google Cloud Console, die gcloud-Befehlszeile oder eine YAML-Datei ändern, wenn Sie eine neue Überarbeitung bereitstellen.

Console

  1. Rufen Sie in der Google Cloud Console Cloud Run auf.

    Öffnen Sie Cloud Run.

  2. Aktivieren Sie das Kästchen links neben dem Dienst, für den Sie das Label festlegen möchten.

  3. Achten Sie darauf, dass das Infofeld ganz rechts aktiviert ist (Infofeld anzeigen).

  4. Klicken Sie auf Labels, um den Bereich mit den Labels aufzurufen.

    Label festlegen

  5. Wenn Sie ein vorhandenes Schlüssel/Wert-Paar-Label bearbeiten möchten, suchen Sie nach dem Label und ändern Sie den Wert wie gewünscht.

  6. Wenn Sie ein neues Label für den Dienst festlegen möchten, klicken Sie auf Label hinzufügen und geben Sie den Schlüssel und den Wert ein.

  7. Klicken Sie auf Speichern.

gcloud

Sie können Labels für einen Dienst mit dem folgenden Befehl aktualisieren:

gcloud run services update SERVICE --update-labels KEY=VALUE

Wenn Sie mehrere Labels aktualisieren möchten, geben Sie eine durch Kommas getrennte Liste von Schlüssel/Wert-Paaren an. Beachten Sie, dass mit dem Befehl update-labels ein neuer Wert für den Labelschlüssel festgelegt wird, wenn das Label bereits vorhanden ist. Andernfalls wird ein neues Label erstellt.

Ersetzen

  • SERVICE durch den Namen Ihres Cloud Run-Dienstes
  • KEY durch den Namen Ihres Labelschlüssels
  • VALUE durch den Wert für den Schlüssel.

Sie können Labels auch während der Bereitstellung festlegen:

gcloud run deploy SERVICE --image IMAGE --labels KEY=VALUE

Sie können während der Bereitstellung mehrere Labels erstellen. Geben Sie dafür eine durch Kommas getrennte Liste mit Schlüssel/Wert-Paaren an.

YAML

  1. Wenn Sie einen neuen Dienst erstellen, überspringen Sie diesen Schritt. Wenn Sie einen vorhandenen Dienst aktualisieren, laden Sie die zugehörige YAML-Konfiguration herunter:

    gcloud run services describe SERVICE --format export > service.yaml
  2. Aktualisieren Sie die labels-Attribute an zwei Stellen:

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

    Ersetzen

    • SERVICE durch den Namen Ihres Cloud Run-Dienstes
    • LABEL durch den Namen des Labels
    • VALUE durch den gewünschten Wert.
    • REVISION durch einen neuen Überarbeitungsnamen oder löschen (falls vorhanden). Wenn Sie einen neuen Überarbeitungsnamen angeben, muss er die folgenden Kriterien erfüllen:
      • Beginnt mit SERVICE-
      • Enthält nur Kleinbuchstaben, Ziffern und -
      • Endet nicht mit -
      • Darf nicht mehr als 63 Zeichen enthalten

    metadata.labels legt Labels für das Dienstobjekt fest, während spec.template.metadata.label Labels für die erstellte Überarbeitung festlegt. Nur Labels, die für die Überarbeitung festgelegt wurden, werden an Logs und die Abrechnung übergeben.

  3. Erstellen oder aktualisieren Sie den Dienst mit dem folgenden Befehl:

    gcloud run services replace service.yaml

Terraform

Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.

Mit dem folgenden Snippet werden zwei Labels, foo mit dem Wert bar und baz mit dem Wert quux, mithilfe einer google_cloud_run_v2_service-Ressource in Ihrer Terraform-Konfiguration zur Cloud Run-Instanz hinzugefügt.

Durch Hinzufügen der Labels unter template (wie gezeigt) werden die Labels für die Überarbeitung festgelegt: Nur für die Überarbeitung festgelegte Labels werden an Logs und die Abrechnung übergeben. Wenn Sie die Labels unter einem anderen Speicherort als template hinzufügen, wird das Label für den Dienst festgelegt und nicht für die Überarbeitung.

resource "google_cloud_run_v2_service" "default" {
  name     = "cloudrun-service-labels"
  location = "us-central1"

  deletion_protection = false # set to "true" in production

  template {
    containers {
      image = "us-docker.pkg.dev/cloudrun/container/hello"
    }
    # Labels
    labels = {
      foo : "bar"
      baz : "quux"
    }
  }
}

Ersetzen Sie

  • name durch den Namen des Dienstes.
  • location durch den Speicherort, der für den Dienst verwendet wird.
  • image durch das Container-Image.
  • foo und baz durch Ihre eigenen Labelnamen.
  • bar und quux durch Ihre eigenen Labelwerte.

Dienste nach Label auflisten

Sie können Dienste mithilfe eines Google Cloud CLI-Filters nach Label auflisten:

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

Ersetzen Sie:

  • LABEL durch den Namen des Labels
  • VALUE durch den Wert, der in die gefilterte Liste aufgenommen werden soll

Labels in einem Dienst löschen

Sie können die Konsole oder die Befehlszeile verwenden, um Labels für einen Dienst zu löschen.

Console

  1. Rufen Sie in der Google Cloud Console Cloud Run auf.

    Öffnen Sie Cloud Run.

  2. Aktivieren Sie das Kästchen links neben dem Dienst, für den Sie das Label löschen möchten.

  3. Achten Sie darauf, dass das Infofeld ganz rechts aktiviert ist (Infofeld anzeigen).

  4. Klicken Sie auf Labels, um den Bereich mit den Labels aufzurufen.

  5. Suchen Sie das Label, das Sie löschen möchten.

  6. Bewegen Sie den Mauszeiger rechts neben das Textfeld Wert für das Label, damit das Papierkorbsymbol angezeigt wird, und klicken Sie darauf.

  7. Klicken Sie auf Speichern.

gcloud

So löschen Sie alle Labels aus einem Dienst:

gcloud run services update SERVICE --clear-labels

Wenn Sie bestimmte Labels aus einem Dienst löschen möchten, geben Sie eine durch Kommas getrennte Liste von Schlüsseln an:

gcloud run services update SERVICE --remove-labels LABEL

Ersetzen

  • SERVICE durch den Namen Ihres Cloud Run-Dienstes
  • LABEL durch den Namen Ihres Labels