Blog
Domine a plataforma e otimize seus gastos!
Gerenciamento de custos no Azure: otimizando workloads e evitando surpresas

Introdução
Com o modelo de pagamento sob demanda da nuvem, é fácil perder o controle dos custos se não houver uma estratégia clara de monitoramento, controle e otimização financeira. No Azure, você conta com um conjunto robusto de ferramentas que ajudam a:
- Visualizar o consumo em tempo real
- Criar alertas e orçamentos
- Otimizar recursos subutilizados
- Planejar com previsibilidade
Neste artigo, você vai aprender a aplicar boas práticas de FinOps no Azure, utilizando serviços como Cost Management + Billing, Azure Advisor, reservas, tags, entre outros.
Pilares do gerenciamento de custos no Azure

O gerenciamento de custos envolve três frentes principais:
- Monitorar: visibilidade sobre quem consome o quê
- Controlar: orçamentos, alertas e limites
- Otimizar: reduzir gastos mantendo desempenho
1. Cost Management + Billing: monitorando seus gastos
A ferramenta Cost Management + Billing permite visualizar o consumo em tempo real, filtrar por tags, grupos de recursos, assinaturas ou escopos personalizados (management groups).
Acessando relatórios:
- Portal → Cost Management + Billing → Cost Analysis
- Filtros por serviço, local, grupo de recursos, tag, subscription
💡 Exemplo prático:
Filtrar o custo mensal por ambiente (usando tags):
Usage
| where Tags["Environment"] == "Production"
| summarize TotalCost = sum(PreTaxCost) by bin(UsageDate, 1d)
2. Criando orçamentos e alertas
Criando um budget:
- Acesse Cost Management > Budgets
- Clique em + Add
- Defina:
- Escopo (Subscription, RG, etc)
- Valor do orçamento (ex: R$ 20.000/mês)
- Período: mensal/trimestral
- Ações: alertar por e-mail, webhook, etc
Exemplo CLI:
az consumption budget create \
--amount 20000 \
--budget-name budget-prod \
--category cost \
--resource-group rg-producao \
--time-grain Monthly \
--start-date 2024-01-01 \
--end-date 2024-12-31 \
--notifications \
actual_greater_than_80_percent=true \
threshold=80 \
contact-emails="finops@empresa.com"
3. Utilizando tags para rastrear custos
Tags são essenciais para atribuir consumo por projeto, departamento ou responsável.
Exemplo de tag padrão:
Chave | Valor |
---|---|
Environment | Production |
CostCenter | MKT001 |
Owner | jose.silva |
💡 Boas práticas:
- Defina uma política de naming/tagging com o time de FinOps
- Use Azure Policy para exigir tags em novos recursos
- Acompanhe o consumo por tag no Cost Management
4. Azure Advisor: recomendações de otimização
O Azure Advisor fornece insights práticos para reduzir custos com segurança. Ele analisa o ambiente e sugere:
- Redimensionamento de VMs superdimensionadas
- Encerramento de recursos não utilizados
- Migração para reservas ou instâncias spot
- Redução de custos com discos premium ou IPs públicos ociosos
Exemplo prático:
Reduzir uma VM DS3 para DS2 após análise de baixa utilização nos últimos 30 dias.
5. Reservas e Savings Plans
Para workloads previsíveis e de longa duração, as reservas oferecem descontos expressivos (até 72%) em comparação com instâncias sob demanda.
Tipos de reservas:
- VMs (1 ou 3 anos)
- SQL Database
- App Service Plans
- Storage, Cosmos DB, etc
Exemplo de economia:
Serviço | Sob demanda | 1 ano reservado | Economia |
---|---|---|---|
VM D2s v3 (Linux) | R$ 500/mês | R$ 290/mês | ~42% |
SQL Standard Gen5 | R$ 1200/mês | R$ 660/mês | ~45% |
Você também pode usar o Azure Savings Plan for Compute, mais flexível que reservas.
6. Monitoramento contínuo com alertas e dashboards
Além dos budgets, você pode criar dashboards personalizados com métricas de custo, usando:
- Azure Workbooks
- Power BI com conector nativo
- Log Analytics + KQL
Exemplo de alerta com Azure Monitor:
az monitor metrics alert create \
--name AlertaCusto \
--resource-group rg-financeiro \
--scopes "/subscriptions/<ID>/providers/Microsoft.Consumption/usageDetails" \
--condition "totalCost > 15000" \
--action-group AgFinOps
7. Boas práticas de FinOps no Azure
- Use management groups e subscriptions separadas por área/projeto
- Habilite budgets + alertas por equipe ou centro de custo
- Revise regularmente o Azure Advisor
- Otimize com reservas ou spot VMs para workloads previsíveis ou temporários
- Automatize tagging com Azure Policy
- Audite recursos órfãos e subutilizados com scripts periódicos
Conclusão
O gerenciamento de custos no Azure vai muito além de “ver quanto foi gasto”. Ele envolve visibilidade, controle, otimização e cultura de responsabilidade financeira (FinOps).
- Monitoramento com Cost Management
- Alertas e orçamentos automatizados
- Otimização contínua com Azure Advisor
- Redução de custos com reservas e tags bem definidas
Referências oficiais
- Documentação do Cost Management + Billing
- Azure Advisor
- Azure Reservations
- Tagging best practices
- Microsoft FinOps Toolkit (GitHub) — Ferramentas e automações para aplicar práticas de FinOps no Azure em escala
Laboratório prático: monitoramento e otimização de custos no Azure com Cost Management
Objetivo do laboratório
Criar um ambiente controlado no Azure, aplicar tags, configurar budgets, explorar Azure Advisor e visualizar o consumo com Cost Management — tudo isso para consolidar práticas reais de FinOps.
Pré-requisitos
- Uma assinatura ativa do Azure
- Permissão de Owner ou Contributor
- Acesso ao Portal do Azure e/ou Azure CLI
Parte 1: Criando o ambiente de teste
1.1 Criar um grupo de recursos
az group create \
--name rg-finops-lab \
--location eastus \
--tags Environment=Lab CostCenter=DEV001 Owner=finops@empresa.com
As tags já são aplicadas na criação, permitindo rastrear o custo desde o início.
1.2 Criar uma máquina virtual de teste
az vm create \
--resource-group rg-finops-lab \
--name vm-costlab \
--image UbuntuLTS \
--admin-username azureuser \
--generate-ssh-keys \
--size Standard_B1s \
--tags Environment=Lab CostCenter=DEV001 Owner=finops@empresa.com
Essa VM será usada como carga para gerar consumo monitorável.
Parte 2: Visualizando custos com Cost Management
- Acesse o portal do Azure
- Vá para Cost Management + Billing → Cost Analysis
- Selecione o escopo (subscription ou resource group)
- Aplique filtros por:
- Resource group: rg-finops-lab
- Tag: CostCenter = DEV001
💡 Dica: Salve esse filtro como favorito para acompanhar a evolução diariamente.
Parte 3: Criando um orçamento (budget)
3.1 Criar um orçamento para o grupo de recursos
az consumption budget create \
--resource-group rg-finops-lab \
--budget-name budget-lab \
--amount 50 \
--time-grain Monthly \
--start-date $(date +%Y-%m-01) \
--end-date 2025-01-01 \
--notifications \
actual_greater_than_80_percent=true \
threshold=80 \
contact-emails="finops@empresa.com"
Você será alertado por e-mail quando o consumo ultrapassar 80% de R$ 50,00.
Parte 4: Analisando oportunidades de economia com Azure Advisor
- No portal, acesse Azure Advisor
- Filtre por grupo de recursos: rg-finops-lab
- Veja recomendações em:
- Custo → ex: “essa VM está ociosa”
- Alta disponibilidade
- Desempenho
- Segurança
💡 Se houver recomendação de reduzir o tamanho da VM, aplique:
az vm resize \
--resource-group rg-finops-lab \
--name vm-costlab \
--size Standard_B1ms
Se quiser visualizar quanto economizaria com uma reserva de VM, vá em:
- Cost Management → Reservations → Recommendations
- Compare preços para 1 ano e 3 anos
Não é necessário comprar a reserva neste laboratório — apenas explore o cenário.
Parte 6: Criando dashboard de custo
- No portal, acesse Cost Management → Workbooks
- Crie um novo workbook com:
- Gráfico de consumo por recurso
- Tabela de consumo por tag
CostCenter
- Tendência mensal de consumo
- Salve como Dashboard personalizado para a equipe de FinOps
Parte 7: limpando os recursos ao final
az group delete --name rg-finops-lab --yes --no-wait
O que você aprendeu
- Como aplicar tags corretamente desde a criação de recursos
- Como criar orçamentos com alertas para controlar consumo
- Como usar o Azure Advisor para identificar desperdícios
- Como simular economias com reservas
- Como montar dashboards para monitoramento contínuo