Crear y gestionar etiquetas

Puedes aplicar etiquetas de usuario a los recursos de clústeres y trabajos de Dataproc para agrupar recursos y operaciones relacionadas y, posteriormente, filtrarlos y mostrarlos. Asocias etiquetas a los recursos cuando se crean, ya sea al crear un clúster o al enviar un trabajo. Una vez que un recurso se asocia a una etiqueta, esta se propaga a las operaciones que se realizan en el recurso (crear, actualizar, parchear o eliminar un clúster; enviar, actualizar, cancelar o eliminar un trabajo), lo que te permite filtrar y enumerar clústeres, trabajos y operaciones por etiqueta.

También puedes añadir etiquetas a los recursos de Compute Engine asociados a recursos de clúster, como instancias de máquina virtual y discos.

¿Qué son las etiquetas?

Una etiqueta es un par clave-valor que puede asignar a Google Cloud clústeres y tareas de Dataproc. Te ayudan a organizar estos recursos y a gestionar tus costes a gran escala, con la granularidad que necesites. Puedes asignar una etiqueta a cada recurso y, después, filtrar los recursos en función de sus etiquetas. La información relacionada con las etiquetas se reenvía al sistema de facturación para que puedas desglosar los cargos facturados por etiquetas. Con los informes de facturación integrados, puedes filtrar y agrupar los costes por etiquetas de recursos. También puedes usar etiquetas para consultar exportaciones de datos de facturación.

Requisitos de las etiquetas

Las etiquetas aplicadas a un recurso deben cumplir los siguientes requisitos:

  • Cada recurso puede tener hasta 64 etiquetas.
  • Cada etiqueta debe ser un par clave-valor.
  • Las claves deben tener como mínimo 1 carácter y como máximo 63 caracteres, y no pueden estar vacías. Los valores pueden estar vacíos y pueden tener hasta 63 caracteres.
  • Las claves y los valores solo pueden contener letras minúsculas, caracteres numéricos, guiones bajos y guiones. Todos los caracteres deben usar codificación UTF-8, y se pueden usar caracteres internacionales. Las claves deben empezar por una letra minúscula o un carácter internacional.
  • La parte de la clave de una etiqueta debe ser única en un solo recurso. Sin embargo, puedes usar la misma clave con varios recursos.

Estos límites se aplican a la clave y al valor de cada etiqueta, así como a los recursos individuales Google Cloud que tienen etiquetas. No hay límite en el número de etiquetas que puedes aplicar a todos los recursos de un proyecto.

Usos habituales de las etiquetas

A continuación se indican algunos de los usos más habituales de las etiquetas:

  • Etiquetas de equipo o centro de costes: añade etiquetas basadas en el equipo o el centro de costes para distinguir los clústeres y los trabajos de Dataproc que pertenezcan a diferentes equipos (por ejemplo, team:research y team:analytics). Puedes usar este tipo de etiqueta para la contabilidad de costes o la elaboración de presupuestos.

  • Etiquetas de componentes: por ejemplo, component:redis, component:frontend, component:ingest y component:dashboard.

  • Etiquetas de entorno o fase: por ejemplo, environment:production y environment:test.

  • Etiquetas de estado: por ejemplo, state:active, state:readytodelete y state:archive.

  • Etiquetas de propiedad: se usan para identificar los equipos responsables de las operaciones. Por ejemplo, team:shopping-cart.

No recomendamos crear un gran número de etiquetas únicas, como las de marcas de tiempo o valores individuales para cada llamada a la API. El problema de este método es que, cuando los valores cambian con frecuencia o con claves que saturan el catálogo, resulta difícil filtrar y generar informes sobre los recursos de forma eficaz.

Etiquetas

Las etiquetas se pueden usar como anotaciones consultables para los recursos, pero no se pueden usar para definir condiciones en las políticas. Las etiquetas permiten aplicar o denegar políticas de forma condicional en función de si un recurso tiene una etiqueta específica, lo que proporciona un control pormenorizado de las políticas. Para obtener más información, consulta la descripción general de las etiquetas.

Crear y usar etiquetas de Dataproc

Comando gcloud

Puede especificar una o varias etiquetas que se aplicarán a un clúster o trabajo de Dataproc en el momento de la creación o del envío mediante la CLI de Google Cloud.

gcloud dataproc clusters create args --labels environment=production,customer=acme
gcloud dataproc jobs submit args --labels environment=production,customer=acme

Una vez que se haya creado un clúster o un trabajo de Dataproc, puede actualizar las etiquetas asociadas a ese recurso mediante Google Cloud CLI.

gcloud dataproc clusters update args --update-labels environment=production,customer=acme
gcloud dataproc jobs update args --update-labels environment=production,customer=acme

Del mismo modo, puedes usar Google Cloud CLI para filtrar recursos de Dataproc por etiqueta mediante una expresión de filtro con el siguiente formato: labels.<key=value>.

gcloud dataproc clusters list \
    --region=region \
    --filter="status.state=ACTIVE AND labels.environment=production"
gcloud dataproc jobs list \
    --region=region \
    --filter="status.state=ACTIVE AND labels.customer=acme"

Consulta la documentación de la API Dataproc sobre clusters.list y jobs.list para obtener más información sobre cómo escribir una expresión de filtro.

API REST

Las etiquetas se pueden asociar a recursos de Dataproc a través de la API REST de Dataproc. Las APIs clusters.create y jobs.submit se pueden usar para adjuntar etiquetas a un clúster o a un trabajo en el momento de la creación o del envío. Las APIs clusters.patch y jobs.patch se pueden usar para editar etiquetas después de que se haya creado el recurso. Este es el cuerpo JSON de una solicitud cluster.create que incluye una etiqueta key1:value en el clúster.

{
  "clusterName":"cluster-1",
  "projectId":"my-project",
  "config":{
    "configBucket":"",
    "gceClusterConfig":{
      "networkUri":".../networks/default",
      "zoneUri":".../zones/us-central1-f"
    },
    "masterConfig":{
      "numInstances":1,
      "machineTypeUri":"..../machineTypes/n1-standard-4",
      "diskConfig":{
        "bootDiskSizeGb":500,
        "numLocalSsds":0
      }
    },
    "workerConfig":{
      "numInstances":2,
      "machineTypeUri":"...machineTypes/n1-standard-4",
      "diskConfig":{
        "bootDiskSizeGb":500,
        "numLocalSsds":0
      }
    }
  },
  "labels":{
    "key1":"value1"
  }
}

Las APIs clusters.list y jobs.list se pueden usar para enumerar los recursos que coincidan con un filtro especificado, con el siguiente formato: labels.<key=value>.

A continuación, se muestra una solicitud HTTPS GET de la API Dataproc clusters.list que especifica un filtro de etiquetas key=value. La persona que llama inserta project, region, un filtro label-key y label-value, y un api-key. Ten en cuenta que esta solicitud de ejemplo se divide en dos líneas para facilitar su lectura.

GET https://dataproc.googleapis.com/v1/projects/project/regions/region/clusters?
filter=labels.label-key=label-value&key=api-key

Consulta la documentación de la API Dataproc sobre clusters.list y jobs.list para obtener más información sobre cómo escribir una expresión de filtro.

Consola

Puede especificar un conjunto de etiquetas que se añadirán a un recurso de Dataproc en el momento de la creación o del envío mediante la Google Cloud consola.

  • Añade etiquetas a un clúster desde la sección Etiquetas del panel Personalizar clúster de la página Crear un clúster de Dataproc.
  • Añade etiquetas a un trabajo desde la página Enviar un trabajo de Dataproc.

Una vez que se haya creado un recurso de Dataproc, puede actualizar las etiquetas asociadas a ese recurso. Para actualizar las etiquetas, primero debes hacer clic en SHOW INFO PANEL en la parte superior izquierda de la página. Este es un ejemplo de la página Dataproc > Lista de clústeres.

Una vez que se muestre el panel de información, podrá actualizar las etiquetas de sus recursos de Dataproc. A continuación, se muestra un ejemplo de cómo actualizar las etiquetas de un clúster de Dataproc.

También es posible actualizar las etiquetas de varios elementos en una sola operación. En este ejemplo, se actualizan las etiquetas de varias tareas de Dataproc al mismo tiempo.

Las etiquetas te permiten filtrar los recursos de Dataproc que se muestran en las páginas [Dataproc→List clusters](https://console.cloud.google.com/dataproc/clusters) y [Dataproc→List jobs](https://console.cloud.google.com/dataproc/jobs). En la parte superior de la página, puedes usar el patrón de búsqueda `labels.=` para filtrar recursos por etiqueta.

Etiquetas aplicadas automáticamente

Al crear o actualizar un clúster, Dataproc aplica automáticamente varias etiquetas al clúster y a los recursos del clúster. Por ejemplo, Dataproc aplica etiquetas a las máquinas virtuales, los discos persistentes y los aceleradores cuando se crea un clúster. Las etiquetas aplicadas automáticamente tienen un prefijo goog-dataproc especial.

Las siguientes etiquetas goog-dataproc se aplican automáticamente a los recursos de Dataproc. Los valores que proporciones para las etiquetas reservadas goog-dataproc al crear el clúster anularán los valores proporcionados automáticamente. Por este motivo, no se recomienda que proporcione sus propios valores para estas etiquetas.

Etiqueta Descripción
goog-dataproc-cluster-name Nombre de clúster especificado por el usuario
goog-dataproc-cluster-uuid ID de clúster único
goog-dataproc-location Endpoint de clúster regional de Dataproc

Puedes usar estas etiquetas aplicadas automáticamente de muchas formas, entre las que se incluyen las siguientes:

Siguientes pasos