Configurar etiquetas para servicios

Las etiquetas de Cloud Run son pares clave-valor que se aplican a los servicios y las revisiones de Cloud Run. En esta página se muestra cómo definir, modificar y eliminar etiquetas en tu servicio y tus revisiones de Cloud Run. Ten en cuenta que, cuando asignas una etiqueta a un servicio de Cloud Run, se crea una nueva revisión con esa etiqueta para el servicio. La etiqueta no se aplica a las revisiones anteriores.

Entre los posibles usos, se incluyen los siguientes:

  • Desglose de la facturación y la asignación de costes.
  • Identifica los recursos que utilizan los distintos equipos o centros de costes.
  • Distinguir los entornos de implementación (producción, desarrollo, control de calidad o prueba).
  • Identifica a los propietarios y las etiquetas de estado.
  • Filtrar registros en Logging.

Reglas de uso de las etiquetas

Se aplica la siguiente regla al uso de etiquetas definidas en un servicio de Cloud Run:

En Cloud Run solo se pueden usar etiquetas Google Cloud válidas.

Roles obligatorios

Para obtener los permisos que necesitas para configurar e implementar servicios de Cloud Run, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos:

Si vas a desplegar un servicio o una función a partir de código fuente, también debes tener otros roles concedidos en tu proyecto y en la cuenta de servicio de Cloud Build.

Para ver una lista de los roles y permisos de gestión de identidades y accesos asociados a Cloud Run, consulta los artículos sobre roles de gestión de identidades y accesos de Cloud Run y permisos de gestión de identidades y accesos de Cloud Run. Si tu servicio de Cloud Run interactúa con APIs, como las bibliotecas de cliente de Cloud, consulta la guía de configuración de la identidad del servicio.Google Cloud Para obtener más información sobre cómo conceder roles, consulta los artículos sobre permisos de implementación y gestión del acceso.

Definir o modificar etiquetas

Cualquier cambio en la configuración conlleva la creación de una nueva revisión. Las revisiones posteriores también recibirán automáticamente este ajuste de configuración, a menos que hagas cambios explícitos para modificarlo.

Las etiquetas que hayas definido anteriormente para tus funciones de Cloud Run mediante comandos gcloud functions o la API Cloud Functions v2 se propagan a Cloud Run cuando despliegas tus funciones en Cloud Run.

Puedes definir o modificar etiquetas mediante la Google Cloud consola, la línea de comandos gcloud o un archivo YAML cuando despliegues una nueva revisión.

Consola

  1. En la Google Cloud consola, ve a Cloud Run:

    Ir a Cloud Run

  2. Marca la casilla situada a la izquierda del servicio al que quieras asignar la etiqueta.

  3. Asegúrate de que el panel de información de la parte derecha esté activado (Mostrar panel de información).

  4. Haz clic en Etiquetas para mostrar el panel de etiquetas.

    Definir etiqueta

  5. Para editar el valor de una clave de etiqueta, localice la etiqueta y cambie el Valor como quiera.

  6. Para definir una nueva etiqueta en el servicio, haga clic en Añadir etiqueta e indique la clave y el valor.

  7. Haz clic en Guardar.

gcloud

Puedes actualizar las etiquetas de un servicio con el siguiente comando:

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

Para actualizar más de una etiqueta, proporcione una lista de pares clave-valor delimitada por comas. Tenga en cuenta que el comando update-labels asigna un nuevo valor a la clave de la etiqueta si esta ya existe. De lo contrario, crea una etiqueta.

Sustituir

  • SERVICE con el nombre de tu servicio de Cloud Run
  • KEY con el nombre de la clave de la etiqueta
  • VALUE con el valor de la clave

También puede definir etiquetas durante la implementación:

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

Para crear más de una etiqueta durante la implementación, proporcione una lista de pares clave-valor delimitada por comas.

YAML

  1. Si va a crear un servicio, puede saltarse este paso. Si va a actualizar un servicio, descargue su configuración YAML:

    gcloud run services describe SERVICE --format export > service.yaml
  2. Actualiza los atributos labels en dos lugares:

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

    Sustituir

    • SERVICE con el nombre de tu servicio de Cloud Run
    • LABEL con el nombre de la etiqueta
    • VALUE con el valor que quieras
    • REVISION con un nuevo nombre de revisión o elimínelo (si está presente). Si proporcionas un nuevo nombre de revisión, debe cumplir los siguientes criterios:
      • Empieza por SERVICE-
      • Contiene solo letras minúsculas, números y -
      • No termina con -
      • No supera los 63 caracteres

    metadata.labels define etiquetas en el objeto de servicio, mientras que spec.template.metadata.label define etiquetas en la revisión creada. Solo se transfieren a los registros y a la facturación las etiquetas definidas en la revisión.

  3. Crea o actualiza el servicio con el siguiente comando:

    gcloud run services replace service.yaml

Terraform

Para saber cómo aplicar o quitar una configuración de Terraform, consulta Comandos básicos de Terraform.

Añade lo siguiente a un recurso google_cloud_run_v2_service en tu configuración de Terraform:

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"
    }
  }
}

El extracto anterior añade dos etiquetas, foo (cuyo valor es bar) y baz (cuyo valor es quux), a tu instancia de Cloud Run.

Si añades etiquetas en template, se definen las etiquetas de la revisión: solo se transfieren a los registros y a la facturación las etiquetas definidas para la revisión. Si añades las etiquetas a una ubicación que no sea template, la etiqueta se asignará al servicio, no a la revisión.

Sustituye lo siguiente:

  • name con el nombre de tu servicio.
  • Propiedad location con la ubicación utilizada para tu servicio.
  • image con tu imagen de contenedor.
  • foo y baz con los nombres de tus etiquetas.
  • bar y quux por los valores de etiqueta que quieras.

Mostrar servicios por etiqueta

Puedes enumerar los servicios por etiqueta mediante un filtro de Google Cloud CLI:

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

Sustituye:

  • LABEL con el nombre de la etiqueta
  • VALUE con el valor que quieras incluir en la lista filtrada.

Eliminar una etiqueta de un servicio

Puedes usar la consola o la línea de comandos para eliminar etiquetas de un servicio.

Consola

  1. En la Google Cloud consola, ve a Cloud Run:

    Ir a Cloud Run

  2. Marca la casilla situada a la izquierda del servicio del que quieres eliminar la etiqueta.

  3. Asegúrate de que el panel de información de la parte derecha esté activado (Mostrar panel de información).

  4. Haz clic en Etiquetas para mostrar el panel de etiquetas.

  5. Busca la etiqueta que quieras eliminar.

  6. Coloca el cursor a la derecha del cuadro de texto Valor de la etiqueta para que se muestre el icono de la papelera y haz clic en él.

  7. Haz clic en Guardar.

gcloud

Para borrar todas las etiquetas de un servicio, sigue estos pasos:

gcloud run services update SERVICE --clear-labels

Para eliminar etiquetas específicas de un servicio, proporciona una lista de claves separadas por comas:

gcloud run services update SERVICE --remove-labels LABEL

Sustituir

  • SERVICE con el nombre de tu servicio de Cloud Run
  • LABEL con el nombre de la etiqueta