Cloud Governance: come controllare i costi del cloud tramite i budget

Nel cloud pubblico la semplicità di delega e il modello di costi legato al consumo espone le aziende ad un rischio di perdita di controllo sugli stessi. Avere sempre una supervisione sulle spese da sostenere per le risorse create in ambiente cloud diventa quindi un aspetto di fondamentale importanza per attuare un processo di governance efficace. La soluzione Azure Cost Management offre un set completo di funzionalità per la gestione dei costi del cloud, tra le quali la possibilità di impostare budget ed avvisi di spesa. In questo articolo viene riportato come utilizzare al meglio i budget per controllare e gestire in modo proattivo i costi dei servizi cloud.

I budget sono delle soglie di spesa che è possibile impostare nella soluzione Azure Cost Management + Billing, in grado di generare delle notifiche quando vengono raggiunte. I dati sui costi e sull’utilizzo delle risorse sono generalmente disponibili entro 20 ore ed i budget vengono valutati rispetto a questi costi ogni 12-14 ore.

La procedura per impostare i budget dal portale Azure prevede i seguenti step.

Figura 1 – Aggiunta di un budget da Cost Management
Figura 2 – Parametri richiesti in fase di creazione del budget

Durante la fase di configurazione del budget è necessario per prima cosa assegnare lo scope. A seconda della tipologia di account Azure è possibile selezionare i seguenti scope:

  • Azure role-based access control (Azure RBAC)
    • Management groups
    • Subscription
  • Enterprise Agreement
    • Billing account
    • Department
    • Enrollment account
  • Individual agreements
    • Billing account
  • Microsoft Customer Agreement
    • Billing account
    • Billing profile
    • Invoice section
    • Customer
  • AWS scopes
    • External account
    • External subscription

Per maggiori informazioni in merito all’utilizzo degli scope è possibile consultare questo documento Microsoft.

Per creare un budget allineato al periodo di fatturazione si ha la possibilità di selezionare un periodo di reset relativo al mese, al trimestre oppure all’anno di fatturazione. Se invece si intende creare un budget allineato al mese di calendario è necessario selezionare un periodo di reset mensile, trimestrale o annuale.

Successivamente, è possibile impostare la data di scadenza a partire dalla quale il budget diventa non più valido e ne viene interrotta la relativa valutazione dei costi.

In base ai campi scelti in fase di definizione del budget, viene mostrato un grafico per fornire un aiuto nell’impostare la soglia di spesa da utilizzare. Di default il budget suggerito si basa sul costo previsto più elevato che si potrebbe sostenere nei periodi futuri, ma l’importo del budget può essere modificato in base alle proprie esigenze.

Dopo aver impostato il budget viene richiesto di configurare i relativi avvisi. I budget richiedono almeno una soglia di costo (% del budget) e un indirizzo e-mail da utilizzare per le notifiche.

Figura 3 – Configurazione degli alert e dell’indirizzo di posta elettronica da utilizzare per le notifiche

Per un singolo budget è possibile includere fino a cinque soglie e cinque indirizzi e-mail. Quando viene raggiunta una soglia di budget, le notifiche e-mail vengono normalmente inviate entro un’ora dalla valutazione.

In fase di creazione oppure di modifica di un budget, ma solo se lo scope definito per lo stesso è una subscription oppure un resource group, è possibile configurarlo per richiamare un Action Group. L’Action Group permette di personalizzare le notifiche in base alle proprie esigenze e può eseguire varie azioni quando viene raggiunta la soglia di budget, tra le quali:

  • Chiamata vocale oppure invio di SMS (per i paesi abilitati)
  • Invio di una mail
  • Chiamata a un webhook
  • Invio di dati verso ITSM
  • Richiamo di una Logic App
  • Invio di una notifica push sulla mobile app di Azure
  • Esecuzione di un runbook di Azure Automation
Figura 4 – Associazione di un Action Group al raggiungimento di una soglia

Dopo aver concluso la creazione di un budget è possibile visualizzarlo nella rispettiva sezione.

Figura 5 – Budget creato e relativa percentuale di utilizzo

La visualizzazione del budget rispetto all’andamento della spesa è uno delle prime azioni che generalmente si prende in considerazione in fase di analisi dei costi.

Figura 6 – Visualizzazione del budget nell’analisi dei costi

Al raggiungimento di una determinata soglia impostata in un budget oltre alle notifiche impostate, viene anche generato un alert nel portale Azure.

Figura 7 – Alert generato a fronte del raggiungimento di una determinata soglia

Quando le soglie di budget create vengono superate si attivano le notifiche, ma nessuna delle risorse cloud viene modificata e di conseguenza il consumo non viene interrotto.

Grazie all’ integrazione con Amazon Web Services (AWS) Cost and Usage report (CUR) è possibile monitorare e controllare i costi di AWS in Azure Cost Management e definire dei budget anche per le risorse AWS.

Costo della soluzione

Azure Cost Management è possibile utilizzarlo gratuitamente, in tutte le sue funzionalità, per l’ambiente Azure. Per quanto riguarda la gestione dei costi di AWS è previsto, al rilascio definitivo, un addebito pari all’1% della spesa totale gestita per AWS. Per maggiori dettagli in merito al costo della soluzione è possibile consultare la pagina del pricing di Cost Management.

Conclusioni

Il controllo dei costi è una componente fondamentale per massimizzare il valore dell’investimento nel cloud. Grazie all’utilizzo dei budget è possibile attivare facilmente un efficace meccanismo per controllare e gestire in modo proattivo i costi dei servizi cloud dislocati sia in Microsoft Azure che in Amazon Web Services (AWS).