Agregar etiquetas a una implementación

Las etiquetas son una forma rápida de organizar implementaciones relacionadas o asociadas entre sí. Por ejemplo, una práctica común es etiquetar las implementaciones destinadas a la producción, etapa de pruebas o desarrollo por separado, para que puedas buscar fácilmente las implementaciones que pertenecen a cada etapa cuando lo necesites.

¿Qué son las etiquetas?

Una etiqueta es un par clave-valor que te ayuda a organizar tus implementaciones de Google Cloud Platform. Puedes adjuntar una etiqueta a cada recurso y, luego, usarlas para filtrarlos. La información sobre las etiquetas se reenvía al sistema de facturación a fin de que puedas desglosar tus cargos de facturación según las etiquetas.

Usos comunes de las etiquetas

No recomendamos crear grandes cantidades de etiquetas únicas, como marcas de tiempo o valores individuales para cada llamada a la API. Estos son algunos casos prácticos comunes de las etiquetas:

  • Etiquetas por equipo o centro de costos: agrega etiquetas por equipo o centro de costos para distinguir las implementaciones pertenecientes a diferentes equipos (por ejemplo, team:research y team:analytics). Puedes usar este tipo de etiqueta para la contabilidad de costos o el presupuesto.

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

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

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

Requisitos para las etiquetas

Las etiquetas que se aplican a un recurso deben cumplir los siguientes requisitos:

  • Cada recurso puede tener varias etiquetas, hasta 64.
  • Cada etiqueta debe ser un par clave-valor.
  • La longitud de las claves debe ser de entre 1 y 63 caracteres, y no pueden estar vacías. Los valores pueden estar vacíos y su longitud máxima es de 63 caracteres.
  • Las claves y los valores pueden contener solo letras en minúscula, caracteres numéricos, guiones bajos y guiones. Todos los caracteres deben usar la codificación UTF-8, además, se permiten los caracteres internacionales.
  • La porción de clave de una etiqueta debe ser única. Sin embargo, puedes usar la misma clave en varios recursos.
  • Las claves deben comenzar con una letra en minúscula o un carácter internacional.

Instrucciones para crear una implementación con etiquetas

Cuando creas una implementación, para agregar etiquetas puedes proporcionar uno o más pares clave-valor como etiquetas. Si tienes una implementación existente, puedes actualizar la implementación a fin de agregar etiquetas nuevas o cambiar las existentes.

Debes usar la herramienta de gcloud o la API para crear una implementación con etiquetas.

gcloud

En gcloud, para agregar etiquetas a tu implementación, proporciona la marca --labels, seguida de una lista de pares clave-valor separados por comas. Por ejemplo, el siguiente comando agrega dos etiquetas a la implementación, devserver=backend y storage=media:

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

Para ver las etiquetas que se aplicaron a una implementación, solicita una descripción de ella:

gcloud deployment-manager deployments describe example-deployment
---
fingerprint: 0p03t0z31PQLOrGH8KdhWQ==
id: '2204841443843636456'
insertTime: '2017-04-18T09:42:47.323-07:00'
labels:
- key: devserver
  value: backend
- 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 y, además, incluye la propiedad nueva labels en el cuerpo de la solicitud. Por ejemplo:

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

Instrucciones para quitar las etiquetas

Console

  1. Ve a la página Implementaciones en Google Cloud Platform Console.

    Ir a la página Implementaciones

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

  3. Marca la casilla junto a la implementación de la cual desea quitar etiquetas. Aparecerá un panel lateral.

  4. Haz clic en la X al lado de cada etiqueta que deseas quitar.

  5. Guarda los cambios.

gcloud

En gcloud, quita las etiquetas con el comando deployments update y la marca --remove-labels, seguida de una lista separada por comas de las claves de etiquetas que deseas quitar.

Por ejemplo, lo siguiente quita una etiqueta con la clave devserver:

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

API

En la API, sigue las instrucciones para actualizar la implementación y, además, incluya una actualización de la implementación que no contenga la propiedad labels en el cuerpo de la solicitud. Esto quita las etiquetas de manera efectiva.

Agregar o actualizar etiquetas

Puedes agregar etiquetas nuevas o actualizarlas en implementaciones existentes.

Console

  1. Ve a la página Implementaciones en Google Cloud Platform Console.

    Ir a la página Implementaciones

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

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

  4. Para cambiar los valores de las etiquetas, actualiza las entradas correspondientes de la etiqueta. Si deseas cambiar la clave de la etiqueta, deberás quitarla y agregarla nuevamente con la nueva clave.

  5. Guarda los cambios.

gcloud

En gcloud, para actualizar o agregar etiquetas nuevas, usa el comando deployments update y proporciona la marca --update-labels, seguida de una lista separada por comas de las etiquetas actualizadas:

Por ejemplo, lo siguiente actualiza la etiqueta devserver:

gcloud deployment-manager deployments update example-deployment --update-labels devserver=frontend

API

En la API, sigue las instrucciones para actualizar la implementación y, en el cuerpo de la solicitud, omite la propiedad labels, que quita las etiquetas de la implementación.

Agregar etiquetas durante vistas previas de la implementación

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

gcloud deployment-manager deployments create example-deployment --config example-config.yaml \
    --labels devserver=backend --preview

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

Filtrar búsquedas con etiquetas

Puedes buscar tus recursos y filtrar resultados por etiquetas.

Console

  1. Ve a la página Implementaciones en Google Cloud Platform Console.

    Ir a la página Implementaciones

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

  3. En la barra de búsqueda, comienza a escribir labels. y las etiquetas por las que puedes filtrar se mostrarán de manera automática.

gcloud

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

gcloud deployment-manager deployments list --filter labels.env=dev

Para obtener la documentación completa sobre la sintaxis de filtro en la herramienta de gcloud, consulta la documentación de gcloud topic filters.

API

En la API, realiza una solicitud de lista con parámetros de búsqueda filter de una URL codificada. Por ejemplo, para filtrar según una clave de etiqueta env que sea igual al valor dev, realiza la siguiente solicitud GET:

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

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

Qué sigue

¿Te ha resultado útil esta página? Enviar comentarios:

Enviar comentarios sobre...

Documentación de Cloud Deployment Manager