Gestão de Custos no Azure — budgets, alerts, recommendations e FinOps prático
Índice
1) Visão geral
Cost Management + Billing oferece análise de custo, orçamento, alertas, recomendações e exportações para monitorar e otimizar gastos. Combine painéis com Workbooks/Power BI e configure alertas proativos para evitar surpresas.
2) Budgets e alertas
- No Portal: Cost Management → Budgets → Add.
- Defina scope (assinatura/RG), período (mensal, trimestral, anual) e amount.
- Crie alertas por limiar (ex.: 50%, 80%, 100%) e escolha destinatários/Action Groups.
3) Exportação de custos e Workbooks
Agende exportações diárias para uma Storage Account em CSV/Parquet e conecte a ferramentas de BI. Use Workbooks prontos (Cost Analysis, Anomalies) para acompanhar tendências e picos.
4) Recomendações (Advisor)
- Rightsize: VMs e bancos subutilizados.
- Shutdown/Start schedules para ambientes de dev/teste.
- Reserved Instances / Savings Plans para cargas previsíveis.
5) Tagging e organização
Padronize tags como owner, costCenter, environment, project. Use Tag Inheritance via scripts/políticas para garantir cobertura.
6) Políticas para prevenção
- Allowed locations/SKUs para evitar recursos caros fora do plano.
- Require tags para RGs/recursos novos.
- DeployIfNotExists para habilitar diagnósticos/budget compartilhado por RG.
7) Exemplos via Azure CLI
# Criar um budget mensal na assinatura
SUB_ID=$(az account show --query id -o tsv)
SCOPE=/subscriptions/$SUB_ID
az consumption budget create \
--scope $SCOPE \
--amount 2000 \
--category cost \
--name bcs-monthly \
--time-grain Monthly \
--start-date 2026-01-24 \
--end-date 2030-12-31 \
--notification '%50' '{"enabled": true, "operator": "GreaterThan", "threshold": 50, "thresholdType": "Actual"}' \
--notification '%80' '{"enabled": true, "operator": "GreaterThan", "threshold": 80, "thresholdType": "Actual"}'
# Exportar custos diários para Storage
az costmanagement export create \
--name daily-export \
--scope $SCOPE \
--type ActualCost \
--timeframe MonthToDate \
--recurrence Daily \
--storage-account-id "/subscriptions//resourceGroups/rg-ops/providers/Microsoft.Storage/storageAccounts/stops" \
--container "cost-exports"
8) Dicas de FinOps (rápidas)
- Implemente budgets por RG/projeto com alertas por Action Group do time.
- Planeje RI/Savings Plans somente após medir uso ≥ 30 dias.
- Crie políticas para impedir SKUs/regiões fora do escopo e exigir tags.
- Automatize shutdown de dev/teste e start em horário comercial.
- Use exportações + Power BI para chargeback/showback mensal.
