Cloud Intelligence™Cloud Intelligence™

Cloud Intelligence™

Riduca la spesa cloud senza complicazioni

By Craig LowellSep 20, 20227 min read

Questa pagina è disponibile anche in English, Deutsch, Español, Français, 日本語 e Português.

Quando ottimizzare costa più di quanto faccia risparmiare, scelga la via più semplice per ridurre la spesa cloud.

Quando ottimizzare i costi cloud diventa un peso, scelga la via più semplice per risparmiare

Per quanta scalabilità, affidabilità e flessibilità offra il cloud pubblico, nessuno regala niente. Provider come Amazon Web Services e Google Cloud le consentono di utilizzare e pagare potenza di calcolo e servizi in base alle sue esigenze, ma farlo solo in modalità on-demand ha un costo elevato. A un certo punto, l'uso on-demand del cloud pubblico diventa economicamente insostenibile.

Per gestire meglio la spesa cloud esistono diversi approcci: impegnarsi in anticipo su determinati volumi di utilizzo o di spesa, oppure ricorrere alle spot instance a tariffe fortemente scontate. Entrambe le strategie, però, richiedono tempo e risorse per essere messe in pratica come si deve. La domanda non è più "quanto si può risparmiare?", ma piuttosto "il risultato vale lo sforzo?".

Analizziamo le due strategie per capire meglio cosa comportano e come ottimizzarle perché lo sforzo sia davvero ripagato.

Compute Commitments / Reservations

Poiché il compute rappresenta in genere oltre la metà della bolletta cloud, ottimizzare questa voce è ciò che inciderà di più sulla spesa complessiva. È per questo che provider come AWS offrono sconti significativi in cambio di prenotazioni o commitment di utilizzo anticipati. Questi programmi, noti su AWS come Reserved Instances o Savings Plans, hanno durate di uno o tre anni: i commitment triennali, naturalmente, garantiscono gli sconti più consistenti.

Sfruttare queste opportunità di risparmio richiede però previsioni di utilizzo molto accurate per l'intera durata del commitment. Se sovrastima e prenota più capacità di calcolo del necessario, finirà per buttare soldi in workloads inutilizzati (un ritorno alle vecchie logiche dei data center e dei modelli di spesa CapEx). Se invece sottostima e in seguito le servono più istanze, dovrà ricominciare da capo con previsioni e provisioning per un nuovo commitment, oppure pagare le tariffe ben più alte delle istanze on-demand.

A complicare le cose ci sono numerose variabili difficili da incorporare nei termini di un commitment, ad esempio:

  • modifiche al codice che aumentano o riducono il fabbisogno di compute di un'app;
  • il potenziale di successo o di viralità di nuovi prodotti e servizi;
  • fattori macroeconomici come l'inflazione e le dinamiche delle catene di approvvigionamento, che non si possono controllare ma che incidono comunque sull'utilizzo del cloud.

Di norma, le aziende prenotano il massimo possibile con commitment triennali per fissare una baseline minima, aggiungendo poi prenotazioni annuali in base ai tipi di VM, alle dimensioni e alle region richieste dalle loro applicazioni.

Il risultato è quasi sempre un calendario di sconti in continua evoluzione, i cui workloads di riferimento, specifiche e date di scadenza vanno monitorati e gestiti tutto l'anno da almeno una persona dedicata, se non da un intero team. Persone che devono avere competenze cloud ed essere in grado di collegare l'utilizzo agli obiettivi di business. E, ovviamente, il costo per reclutare, formare e trattenere un team così specializzato finirà probabilmente per erodere i risparmi ottenuti.

Non sorprende che si tratti di un ostacolo importante per molte realtà, soprattutto per le aziende più giovani, con risorse limitate e una mentalità orientata alla crescita. La maggior parte delle startup non può permettersi di sottrarre tempo e attenzione alle proprie già scarse risorse DevOps per gestire i commitment, e preferisce concentrarsi su sviluppo e crescita anziché sulla gestione di costi e utilizzo.

Anche le aziende più grandi, meglio strutturate e digitalmente più mature possono faticare a stare dietro al proprio portafoglio di commitment. Più l'ambiente cloud è complesso, più la gestione diventa impegnativa: i fabbisogni di compute e i tassi di consumo variano tra i diversi team, la responsabilità del provisioning e del monitoraggio dell'utilizzo cloud cambia di mano e gli ambienti di lavoro tra team si differenziano sempre di più.

Più l'ambiente cloud è complesso, più la gestione operativa diventa impegnativa.

Spot Instances

Uno dei modi più efficaci per ridurre la spesa cloud su AWS è ricorrere il più possibile alle Spot Instances. Con risparmi fino al 90% rispetto al prezzo on-demand, questo approccio offre sconti ancora maggiori dei commitment triennali, ma con un'avvertenza importante: le Spot Instances sono vendute come offerte last-minute su istanze on-demand inutilizzate (un po' come una panetteria che svende le rimanenze a fine giornata) e il provider può revocarle con un preavviso di soli due minuti. Un dettaglio che spinge in molti a pensarci due volte prima di adottarle: nel trade-off tra continuità delle applicazioni e risparmio, è naturale far prevalere l'uptime.

Le Spot Instances si possono gestire su AWS tramite gli Auto Scaling Groups (ASG), ma il loro utilizzo richiede un certo grado di flessibilità sui tipi di istanza e sulle Availability Zones richieste, perché è sempre possibile che nessuna sia disponibile con le specifiche desiderate. Gli ASG, inoltre, vanno configurati manualmente e messi a punto con regolarità per garantire che i fabbisogni di compute siano sempre coperti senza interruzioni rilevanti. Un altro processo manuale e laborioso che, in caso di configurazione errata, rischia addirittura di non funzionare.

Nonostante i limiti evidenti delle Spot Instances, esistono strategie per ottimizzarne l'utilizzo. Una di queste è il capacity rebalancing, che aiuta a mantenere la disponibilità sfruttando le Instance Rebalance Recommendations di AWS: un segnale anticipato che avvisa quando una Spot Instance sta per essere disattivata, ben più utile del classico preavviso di due minuti, a patto di avere qualcuno pronto a gestire il cambiamento.

Il gioco vale la candela?

La verità, purtroppo, è che non esiste una formula magica per stabilire quanto le costerà gestire tutte queste strategie di ottimizzazione. Dipende molto dalle dimensioni e dalla complessità del suo ambiente cloud, dagli obiettivi di business attuali e futuri e dalle competenze a disposizione nella sua organizzazione. Conviene di più sovra-impegnarsi entro certi limiti a un prezzo inferiore, oppure sotto-impegnarsi e ricorrere al pricing on-demand per il resto? E se sceglie la seconda strada, quanto vale la flessibilità che ne deriva rispetto al risparmio aggiuntivo che un commitment più ampio garantirebbe?

Andando ancora più a fondo: il suo team è in grado di pianificare e gestire questi programmi, o dovrà assumere nuovo personale con le competenze richieste? E, in questo caso, è davvero il miglior impiego del suo budget operativo, oppure quei fondi sarebbero meglio investiti nello sviluppo prodotto o nelle strategie go-to-market?

Molte aziende concludono che tutte queste domande, e il tempo necessario a rispondervi, non valgono lo sforzo. Difficile dar loro torto, soprattutto considerando che i commitment a lungo termine si traducono spesso in una minore flessibilità per l'engineering: nuovi progetti o funzionalità non previsti nelle stime iniziali rischiano di rimanere in stand-by fino al provisioning di nuove risorse. Le va bene che la sua product roadmap sia vincolata da decisioni di budget operativo prese oltre un anno prima?

Per fortuna, esistono soluzioni alternative che assicurano i risparmi di cui ha bisogno senza assorbire tempo ed energie del suo team infrastrutturale.

Le va bene che la sua product roadmap sia vincolata da decisioni di budget operativo prese oltre un anno prima?

DoiT Flexsave risolve la sfida della gestione dei commitment automatizzando l'amministrazione degli sconti sul compute. Sfrutta il machine learning per monitorare costantemente l'utilizzo cloud e individuare le istanze di compute non coperte dai commitment esistenti, applicando poi tariffe scontate annuali sui workloads idonei per colmare le lacune di copertura. Il risultato è la flessibilità dell'utilizzo on-demand senza il timore di costi infrastrutturali fuori controllo. Può persino acquistare tutti i commitment triennali che desidera per massimizzare i risparmi e lasciare che Flexsave copra il resto.

DoiT Spot Scaling, dal canto suo, le permette di eseguire i suoi workloads in modo affidabile sulle AWS Spot Instances senza doversi preoccupare delle interruzioni. Monitora in autonomia i suoi ASG, suggerisce configurazioni best practice e sostituisce le istanze on-demand con le Spot Instances fortemente scontate quando possibile, con ripiego sull'on-demand quando non c'è capacità Spot disponibile sul mercato. In più, Spot Scaling è l'unica soluzione sul mercato che le lascia tutti i risparmi: nessuna commissione trattenuta.

cloud cost optimization

Per saperne di più sulle strategie di ottimizzazione dei costi consigliate da DoiT, parli oggi stesso con un nostro esperto, oppure consulti il nostro recente ebook The Cost Conscious Cloud.