Gestire i costi in Azure non significa solo “spendere meno”, ma avere visibilità, prevedibilità e governance sul consumo. Come amministratore, l’esame AZ-104 si aspetta che tu distingua con precisione gli strumenti di analisi dai costrutti di fatturazione e che sappia scegliere il pricing model corretto per ogni scenario.
Cost Management vs Billing account
È la distinzione concettuale più importante. Microsoft Cost Management è lo strumento analitico: ti mostra quanto stai consumando, dove e con quali trend, e ti permette di impostare budget e alert. Non emette fatture e non gestisce i metodi di pagamento.
Il billing account vive invece nel piano di fatturazione (Microsoft Customer Agreement, Enterprise Agreement o pay-as-you-go). Qui trovi le invoice effettive, i billing profile e le sezioni di fatturazione. In sintesi:
- Cost Management → analisi del consumo stimato/amortized, budget, esportazioni.
- Billing → documenti fiscali reali, metodi di pagamento, scope organizzativi.
Un dettaglio da ricordare: i dati di Cost Analysis sono near-real-time ma non definitivi; la invoice può differire leggermente perché consolida il ciclo di fatturazione.
Cost Analysis
Cost Analysis è la vista principale per esplorare la spesa. Punti chiave:
- Puoi filtrare e raggruppare per resource group, service name, location, subscription o tag.
- Distingue tra costo actual (quanto fatturato nel periodo) e amortized (che spalma il costo upfront delle reservation lungo la loro durata). Per valutare l’impatto reale delle reservation usa la vista amortized.
- Consente scheduled exports verso uno Storage Account per analisi esterne (Power BI, Microsoft Fabric).
Lo scope conta: analisi a livello di management group aggrega più subscription, utile per una vista enterprise.
Budget e alert
Un budget definisce una soglia di spesa (o di quantità) su uno scope, con alert a percentuali configurabili (es. 80%, 100%, forecast > 100%). Gli alert possono notificare via email o action group (webhook, Logic App, Automation).
Concetto critico per l’esame: il budget NON blocca la spesa. È un meccanismo di notifica. Se devi fermare realmente il consumo servono automazioni (stop/deallocate delle VM via Automation Runbook) oppure Azure Policy per impedire il deploy di risorse costose.
Cost allocation tramite tag
I tag (coppie chiave-valore) sono lo strumento primario di cost allocation e chargeback. Applicati alle risorse, permettono di raggruppare la spesa per CostCenter, Environment, Project.
Attenzione architetturale:
- I tag non sono ereditati automaticamente dal resource group alla risorsa: per uniformarli si usa Azure Policy con effetto
modify/appendoinherit tag from resource group. - Alcune risorse non emettono costo con il tag della risorsa figlia; per questo esistono le tag inheritance rules di Cost Management.
Pricing model
Scegliere il modello giusto è tema d’esame ricorrente:
- Pay-as-you-go: flessibile, nessun impegno, ideale per workload variabili o brevi.
- Reservations (Reserved Instances): impegno 1 o 3 anni su VM, SQL, Cosmos DB ecc. Sconti fino a circa 72% rispetto a PAYG. Ottime per workload stabili e prevedibili (produzione 24/7).
- Azure Hybrid Benefit: riutilizzi licenze Windows Server / SQL Server con Software Assurance per pagare solo la parte compute. Cumulabile con le reservation.
- Spot VM: capacità inutilizzata a prezzo fortemente scontato, ma evictable con breve preavviso. Adatte a batch, rendering, test — mai a workload stateful o critici.
Per dev/test, l’auto-shutdown delle VM (schedulato) riduce drasticamente i costi spegnendo le macchine di notte: ricorda che il costo compute cessa solo con lo stato Stopped (deallocated), non con il semplice “Stopped”.
Trappole tipiche d’esame
- Scenario: superata la soglia del budget, la spesa deve fermarsi automaticamente → un budget alert notifica ma non blocca; serve un’action group che avvii un runbook di deallocation o una Azure Policy restrittiva.
- Scenario: workload di produzione sempre attivo, si vuole ridurre il costo → Reservation 1/3 anni (+ Azure Hybrid Benefit se Windows/SQL), non Spot.
- Scenario: job batch tollerante alle interruzioni, budget minimo → Spot VM.
- Scenario: serve la spesa per centro di costo → tag + raggruppamento in Cost Analysis, con Azure Policy per forzarne l’applicazione.
- Scenario: valutare il beneficio reale delle reservation acquistate → vista amortized cost, non actual.
- Scenario: VM di dev spenta ma continua a costare → è solo Stopped; deve essere Stopped (deallocated) (auto-shutdown).