El diseño de tags determina las operaciones - Curiosidades y reglas de nomenclatura prácticas de la estrategia de tags de recursos AWS
Explicamos por qué los tags de recursos AWS no son simples etiquetas sino la base de la asignación de costos, control de acceso y automatización, las reglas de nomenclatura de claves de tags, cómo usar el límite de 50 tags y la gobernanza mediante políticas de tags.
Los tags no son simples etiquetas
Los tags de recursos AWS son una función que adjunta metadatos a los recursos mediante pares de clave y valor (ejemplo: Environment=Production, Team=Backend). A primera vista parece un simple etiquetado, pero en el ecosistema de AWS los tags cumplen 3 roles importantes. Primero, la asignación de costos. Cost Explorer y Cost and Usage Report (CUR) desglosan los costos basándose en tags, permitiendo visualizar los costos por equipo, proyecto o entorno. Segundo, el control de acceso. Las políticas IAM pueden usar condiciones basadas en tags para permitir que "solo los miembros del equipo Backend operen recursos con el tag Team=Backend". Tercero, la automatización. AWS Config puede detectar recursos sin tags específicos, y Systems Manager puede ejecutar parches solo en instancias con un tag específico.
Reglas de nomenclatura de claves de tags - Si no se deciden primero, se sufre después
Las reglas de nomenclatura de claves de tags causan confusión si no se unifican en toda la organización. Environment, environment, env, Env, ENVIRONMENT se tratan todos como claves de tags diferentes. Como las claves de tags distinguen mayúsculas y minúsculas, sin reglas de nomenclatura unificadas, el mismo significado existe en múltiples variaciones y la asignación de costos y el control de acceso no funcionan correctamente. La regla de nomenclatura recomendada es PascalCase (Environment, CostCenter, DataClassification). Esto es consistente con las claves de tags del sistema de AWS (aws:createdBy, etc.) y es fácil de leer visualmente. Otra opción es kebab-case (environment, cost-center), pero lo importante es la consistencia dentro de la organización.
Cómo usar el límite de 50 tags
El límite de tags que se pueden adjuntar a un recurso AWS es 50 (excluyendo tags del sistema con prefijo aws:). 50 puede parecer mucho, pero se consume sorprendentemente rápido a medida que la organización crece. Para asignación de costos (Environment, Team, Project, CostCenter), gestión operativa (ManagedBy, BackupPolicy, PatchGroup), seguridad (DataClassification, Compliance), y automatización (AutoShutdown, MaintenanceWindow), fácilmente se usan 15-20 tags. La clave es diseñar una taxonomía de tags desde el principio y evitar la proliferación de tags ad hoc. Definir los tags obligatorios y opcionales, y aplicarlos con políticas de tags de Organizations.
Políticas de tags - Gobernanza de tags en toda la organización
Las políticas de tags de AWS Organizations son una función que estandariza las claves y valores de tags utilizados en las cuentas de la organización. Si se define en la política de tags que "el valor del tag Environment debe ser Production, Staging o Development", se pueden detectar valores no estándar como Prod o production. Las políticas de tags tienen 2 modos: "modo de detección" y "modo de aplicación". El modo de detección solo reporta violaciones sin bloquear la creación de recursos. El modo de aplicación rechaza la creación de recursos que no cumplan con la política. Se recomienda comenzar con el modo de detección para identificar el estado actual y luego migrar gradualmente al modo de aplicación.
Trampas de la asignación de costos basada en tags
La asignación de costos basada en tags tiene trampas que se deben conocer. Primero, no todos los recursos soportan tags. Los costos de transferencia de datos, las tarifas de consultas de Route 53 y las tarifas de métricas de CloudWatch no pueden clasificarse con tags porque no están vinculados a recursos. Estos "costos no etiquetables" pueden alcanzar el 20-30% del total. Segundo, los tags de asignación de costos solo se reflejan desde el momento en que se activan. No se aplican retroactivamente, por lo que si se olvida activarlos, los costos de ese período no se pueden desglosar. Tercero, los tags adjuntados a recursos padre no se heredan automáticamente a recursos hijo. Los tags de una VPC no se propagan a las subnets o instancias EC2 dentro de ella. Para profundizar en la gestión de tags y costos de AWS, los libros especializados (Amazon) son una buena referencia.