Añadir etiquetas a un despliegue

Las etiquetas son una forma sencilla de organizar las implementaciones que están relacionadas o asociadas entre sí. Por ejemplo, es habitual etiquetar por separado las implementaciones que están destinadas a producción, staging o desarrollo, de forma que puedas buscar fácilmente las implementaciones que pertenecen a cada fase cuando sea necesario.

¿Qué son las etiquetas?

Una etiqueta es un par clave-valor que puede asignar a las Google Cloud implementaciones. 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 las implementaciones propiedad de 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 un despliegue con etiquetas

Cuando creas una implementación, puedes añadir etiquetas proporcionando uno o varios pares clave-valor como etiquetas. Si ya tienes una implementación, puedes actualizarla para añadir etiquetas o cambiar las que ya tienes.

Debes usar la CLI de gcloud o la API para crear un despliegue con etiquetas.

gcloud

En gcloud, añada etiquetas a su implementación proporcionando la marca --labels seguida de una lista de pares clave-valor separados por comas. Por ejemplo, el siguiente comando añade dos etiquetas a la implementación: environment=production y storage=media:

gcloud deployment-manager deployments create example-deployment --config example-config.yaml \
    --labels environment=production,storage=media

Para ver las etiquetas aplicadas al despliegue, obtén una descripción del despliegue:

gcloud deployment-manager deployments describe example-deployment
---
fingerprint: 0p03t0z31PQLOrGH8KdhWQ==
id: '2204841443843636456'
insertTime: '2017-04-18T09:42:47.323-07:00'
labels:
- key: environment
  value: production
- key: storage
  value: media
manifest: manifest-1492533767362
name: example-deployment
operation:
  endTime: '2017-04-18T09:43:04.581-07:00'
  name: operation-1492533767010-54d7398ff76d1-7930b926-f64e72ae
  operationType: insert
  progress: 100
  startTime: '2017-04-18T09:42:48.034-07:00'
  status: DONE
  user:user@example.com

API

En la API, sigue las instrucciones para crear tu implementación e incluye la nueva propiedad labels en el cuerpo de la solicitud. Por ejemplo:

{
  "name": "example-deployment",
  "target": {
    "config": {
      "content": "..."
      },
   }
  "labels": [
  {
    "key": "environment",
    "value": "production"
  },
  {
    "key": "storage",
    "value": "media"
  }
 ]
}

Eliminando etiquetas

Consola

  1. Ve a la página Implementaciones de la Google Cloud consola.

    Ir a la página Implementaciones

  2. Si se te solicita, selecciona tu proyecto y haz clic en Continuar.

  3. Marca la casilla situada junto a la implementación de la que quieras quitar etiquetas. Aparecerá un panel lateral.

  4. Haz clic en la X situada junto a cada etiqueta que quieras quitar.

  5. Guarda los cambios.

gcloud

En gcloud, elimina etiquetas con el comando deployments update y proporciona la marca --remove-labels, seguida de una lista separada por comas de claves de etiquetas que quieras eliminar.

Por ejemplo, el siguiente comando elimina una etiqueta con la clave environment:

gcloud deployment-manager deployments update example-deployment --remove-labels environment

API

En la API, sigue las instrucciones para actualizar tu implementación e incluye una actualización de tu implementación que no contenga la propiedad labels en el cuerpo de la solicitud. De esta forma, se eliminarán las etiquetas.

Añadir o actualizar etiquetas

Puede añadir etiquetas nuevas o actualizar las de las implementaciones que ya tenga.

Consola

  1. Ve a la página Implementaciones de la Google Cloud consola.

    Ir a la página Implementaciones

  2. Si se te solicita, selecciona tu proyecto y haz clic en Continuar.

  3. Marca la casilla situada junto a la implementación de la que quieras actualizar las etiquetas. Se abrirá un panel lateral.

  4. Para cambiar los valores de las etiquetas, actualice las entradas correspondientes. Si quieres cambiar la clave de una etiqueta, tendrás que eliminarla y volver a añadirla con la nueva clave.

  5. Guarda los cambios.

gcloud

En gcloud, actualice o añada etiquetas con el comando deployments update y la marca --update-labels, seguida de una lista de etiquetas actualizadas separadas por comas:

Por ejemplo, la siguiente acción actualiza la etiqueta environment:

gcloud deployment-manager deployments update example-deployment --update-labels environment=production

API

En la API, sigue las instrucciones para actualizar tu despliegue y, en el cuerpo de la solicitud, omite la propiedad labels, que quita las etiquetas del despliegue.

Añadir etiquetas durante las vistas previas de los despliegues

Antes de crear una implementación, puedes previsualizarla. Como parte de la vista previa, puedes asignar etiquetas a la implementación previsualizada. Por ejemplo:

gcloud deployment-manager deployments create example-deployment --config example-config.yaml \
    --labels environment=production --preview

Para cambiar las etiquetas durante la vista previa, debes actualizar la vista previa con las nuevas etiquetas. Para obtener más información sobre las vistas previas, consulta la documentación sobre vistas previas de configuraciones.

Filtrar búsquedas con etiquetas

Puedes buscar tus recursos y filtrar los resultados por etiquetas.

Consola

  1. Ve a la página Implementaciones de la Google Cloud consola.

    Ir a la página Implementaciones

  2. Si se te solicita, selecciona tu proyecto y haz clic en Continuar.

  3. En la barra de búsqueda, empieza a escribir labels. y la barra de búsqueda mostrará automáticamente una lista de etiquetas por las que puedes filtrar.

gcloud

En gcloud, haz una solicitud list y usa la marca --filter. Para filtrar por etiquetas, usa la sintaxis labels.[KEY]=[VALUE]. Por ejemplo, si quieres filtrar por una etiqueta con environment como clave y production como valor, puedes ejecutar este comando:

gcloud deployment-manager deployments list --filter labels.environment=production

Para consultar la documentación completa sobre la sintaxis de los filtros en la CLI de gcloud, consulta la documentación de gcloud topic filters.

API

En la API, haz una solicitud de lista con el parámetro de consulta filter codificado como URL. Por ejemplo, para filtrar por una clave de etiqueta environment que sea igual al valor production, haz la siguiente solicitud GET:

GET https://www.googleapis.com/deploymentmanager/v2/deployments/list?filter=labels.environment+eq+production

Para obtener más información, consulta la documentación de filter en la referencia de la API.

Siguientes pasos