Ir al contenido

Estándares de Tagging

El etiquetado (tagging) de recursos es la piedra angular de nuestra estrategia de Gobernanza y FinOps. Un etiquetado consistente y obligatorio nos permite organizar, gestionar, y asignar costos de manera efectiva.

Estos 5 tags son mandatorios para cualquier recurso (VM, GKE, Bucket, Base de Datos, etc.).

Tag (Label Key)DescripciónFormato de ValorEjemplo
environmentEl ambiente al que pertenece el recurso.production, qa, devproduction
teamEl equipo funcional responsable del recurso.kebab-caseecommerce-web
applicationEl nombre de la aplicación o microservicio.kebab-caseservicio-de-pagos
cost-centerEl centro de costo al que se debe asignar el gasto.CC- seguido de númerosCC-12345
ownerEl email del Tech Lead o responsable técnico.email sin @, con guionesjuan-perez-herdez-com

Estos tags no son obligatorios, pero se recomienda encarecidamente su uso para una mejor gestión y automatización.

TagDescripciónValores Ejemplo
data-classificationClasificación de los datos que maneja el recurso.public, internal, confidential, restricted
criticalityLa criticidad del recurso para el negocio.critical, high, medium, low
backup-policyLa política de respaldo que se le aplica.daily-7-days, monthly-1-year, none
expiry-dateFecha de expiración para recursos temporales.2026-12-31

Estos tags son añadidos automáticamente por el pipeline de IaC (Terraform) y no deben ser gestionados manualmente.

  • created-by: terraform
  • created-date: 2026-01-29
  • terraform-managed: true
  • git-repo: ecommerce/infra-pagos

Para mantener la consistencia, todos los valores de los tags deben seguir estas reglas:

  • Todo en minúsculas. (production ✅, Production ❌)
  • Usar kebab-case para separar palabras (guiones, no guiones bajos). (tienda-web ✅, tienda_web ❌)
  • Sin espacios.
  • Solo caracteres a-z, 0-9, y -.

Los módulos HERA exponen una variable estándar common_labels que recibe el mapa de tags obligatorios y lo propaga al atributo labels de cada recurso GCP. El pipeline de IaC rechaza el plan si la variable no contiene los 5 tags definidos arriba, antes de permitir cualquier aprovisionamiento.

AspectoMecanismoResultado al incumplir
Tags obligatorios presentesBloque validation en la variable common_labelsterraform plan falla con mensaje explícito
Formato de valores (lowercase, kebab-case)Política OPA en el pipelineMR bloqueado antes del apply
Propagación a todos los recursosAtributo labels = var.common_labels en cada móduloRecursos sin labels se detectan en scans diarios
Tags automatizados (created-by, terraform-managed, etc.)Inyectados por el módulo, no por el callerEl consumidor no puede omitirlos
  • Scans Diarios: Un script automatizado escanea todos los recursos en GCP y genera un reporte de los que no cumplen con la política de tagging.
  • Alertas: Se generan alertas para los dueños de los recursos no conformes.
  • Dashboard de Compliance: Un dashboard en Looker Studio muestra el porcentaje de cumplimiento de tagging por equipo y por proyecto, fomentando la visibilidad y la responsabilidad.