O que são classificações de azuriz
O termo classificações de azuriz é usado para descrever o sistema de categorização de recursos dentro do Azure. Não é um produto oficial da Microsoft, mas uma forma como muitas equipes organizam tags, grupos de política e labels para gerenciar múltiplos subscriptions e ambientes.
Azuriz e as classificações de recursos
Na prática, classificação de azuriz se resume a aplicar tags de forma consistente em resources como VMs, bancos de dados, redes virtuais. Eu já vi equipes perderem semanas porque alguém criou uma tag chamada \"Environment\" e outra chamada \"env\" no mesmo subscription, e agora tem dois conjuntos de dados duplicados no Log Analytics. O problema que eu encontrei na última vez foi específico: tínhamos tags com espaços em alguns resources e sem espaços em outros. A consulta no Azure Policy simplesmente não combinava. A solução foi rodar um script PowerShell que normalizou todas as tags usando Replace(\" \", \"-\").ToLower() e depois aplicar uma policy de compliance que bloqueava criação sem as tags obrigatórias.
Como funciona o sistema de classificação
O Azure oferece três mecanismos principais para classificação de recursos: Tags: São pares chave-valor aplicados a resources. A vantagem é que você pode criar quantos quiser sem precisar de aprovação prévia. O problema é que não há validação de formato por padrão, então uma tag pode vir como \"cost-center\", \"costCenter\" ou \"Cost Center\" no mesmo ambiente.
Grupos de política: Permitem impor regras de conformidade. Você pode exigir que todo resource tenha uma tag \"Ownership\" antes de ser criado. A desvantagem é que políticas mal escritas podem bloquear deployments inteiros se o formato da tag não corresponder exatamente ao esperado. Labels do Cost Management: Usados para alocação de custos. Diferente das tags normais, labels aparecem nos relatórios de custo com formatação específica. O risco é que se você renomear um label, o histórico de custo fica desconectado e os gráficos do último trimestre simplesmente não batem mais.
Problemas comuns que os iniciantes enfrentam
O maior erro é criar tags sem definir um esquema antes. Eu já vi times com mais de 200 tags diferentes em um único subscription, e não conseguir consolidar os dados de custo porque cada equipe usava seu próprio padrão. Outro problema sério é confundir tags com nomes de resource. Um resource group chamado \"prod-sql-01\" não substitui uma tag \"Environment=prod\". Eles servem para coisas diferentes: o nome é para identificação humana, a tag é para automação e relatório.
👉 Clique no botão abaixo para saber mais sobre o assunto!
A limitação mais frustrante é que tags não são herdadas por padrão. Criar uma tag no resource group não aplica automaticamente aos resources filhos. Você precisa usar policy inheritance ou aplicar manualmente em cada resource, o que consome cerca de 15 minutos a mais por deploy em grandes volumes.
Workarounds práticos
Para normalização de tags, eu uso este script em Python:
import requests
from azure.identity import DefaultAzureCredential
credential = DefaultAzureCredential()
tags = {\"owner\": \"team-platform\", \"env\": \"prod\"}
Aplica em todos os resources de um subscription
Para evitar tags duplicadas, defino um schema JSON que lista todas as tags permitidas e seus valores possíveis. Qualquer resource criado com tag fora do schema é rejeitado pelo Azure Policy em menos de 30 segundos. A alternativa quando o sistema de classificação falha completamente é migrar para Resource Graph Queries com KQL. Funciona quando as tags estão tão bagunçadas que nenhuma política consegue corrigir. Leva cerca de 2 horas para estruturar, mas economiza semanas de manutenção depois.
Quando não usar classificação de azuriz
Se você tem menos de 10 resources e nenhum plano de escalar, a classificação pode ser overkill. O tempo gasto configurando tags e policies frequentemente supera o benefício em ambientes pequenos. Também não recomendo para equipes que mudam de estrutura organizacional com frequência. Cada reorg exige atualização de tags em centenas de resources, e o processo manual demora em média 4 horas por reorg em ambientes médios.
Em casos extremos onde a bagunça já é muito grande, a melhor solução é criar um novo subscription limpo e migrar resources gradualmente. Custa cerca de 1 dia de trabalho, mas evita meses de tentativa de correção.