Serverless computing: è davvero questo il futuro del cloud?

Il serverless computing segna la prossima tappa del viaggio verso il cloud e sembra adattarsi bene ai piani dei CIO. Ma è davvero tutto oro quello che luccica?

Serverless computing

L’infrastructure-as-a-service è stato un vantaggio per le aziende, consentendo ai CIO di spegnere i server o persino i data center e di raggiungere nuovi livelli nell’agilità del business, ma ora in molti si chiedono quale sarà la prossima grande novità che porterà risultati aziendali positivi. La risposta potrebbe essere il serverless computing, “un’architettura software emergente in cui l’IT distribuisce dinamicamente calcolo, storage e memoria in base alla richiesta di un servizio di ordine superiore, come un database o una funzione di codice” afferma Scott Buchholz, direttore di ricerca di tecnologie emergenti presso Deloitte Consulting.

Il serverless computing sembra adattarsi bene ai piani dei CIO, in quanto il 69% dei leader IT ha identificato “automazione e trasformazione dei processi” come obiettivi primari delle loro agende digitali, almeno secondo un sondaggio di Deloitte sui CIO risalente allo scorso anno. “Stiamo raggiungendo sempre più il punto in cui il reparto IT dedica meno tempo a concentrarsi sulle minuzie e sui meccanismi della tecnologia e più tempo sui risultati di business”, afferma Buchholz.

Definizione di serverless computing

Negli ambienti cloud tradizionali i team dell’infrastruttura e delle operazioni (I&O) progettano e forniscono manualmente energia, storage e altri strumenti. Il serverless computing automatizza quelle attività, così come la relativa gestione di patch, backup, sicurezza e database associata a tali risorse. “Ciò può ridurre notevolmente il costo della gestione I&O, consentendo ai leader I&O di concentrarsi su altre attività come la gestione delle API e gli accordi sul livello di servizio”, continua Buchholz.

“Per essere chiari, gli ambienti di elaborazione serverless utilizzano ancora i server. Tuttavia, il fornitore di servizi cloud (non lo staff I&O) è responsabile di tutte le risorse sottostanti coinvolte nel provisioning e nel ridimensionamento di un ambiente runtime”, ha scritto l’analista di Gartner Ross Winser in un report del 2018 sulle tendenze I&O.

Vantaggi del serverless computing

L’obiettivo di serverless computing è quello di ottenere un ambiente IT NoOps che sia automatizzato e astratto dall’infrastruttura sottostante. Con una ridotta necessità di risorse operative, i CIO possono riallocare la capacità umana in eccesso per lavorare su nuove capacità che supportano il business. “La proliferazione di opzioni significa che stiamo cambiando la natura del lavoro all’interno dell’IT”, afferma Buchholz. “Stiamo permettendo a molte più persone all’interno dell’IT di pensare come i CIO e gli utenti aziendali”.

Nonostante il clamore e l’hype che lo circondano, il serverless computing è comunque ancora in uno stato embrionale, con solo il 5% delle organizzazioni che lo utilizzano in qualche modo oggi (dati di Gartner risalenti allo scorso aprile). Tuttavia Gartner afferma che nel 2020 oltre il 20% delle imprese sceglierà il serverless computing.

Un caso di studio

Il CTO del New York Times Nick Rockwell è convinto che il concetto di serverless rappresenti la prossima tappa nel percorso cloud e ha permesso agli sviluppatori di smettere di preoccuparsi dei server su cui verrà eseguito il loro codice. Il New York Times gestisce la maggior parte delle sue applicazioni aziendali e della sua piattaforma di e-commerce in AWS, con Google Cloud Platform (GCP) che sta invece alla base delle applicazioni consumer, tra cui il sito web e l’app per dispositivi mobili.

Ma i team guidati da Rockwell devono ancora dedicare ore a capire di quante istanze di AWS e GCP abbiano bisogno, quanto dovrebbero essere grandi queste istanze e se le istanze richiedano input, output o memoria aggiuntivi. Devono configurare ogni istanza e applicare patch e installare software sui sistemi operativi. Inoltre, devono gestire attentamente le dipendenze associate a ciascuna applicazione e capire in che modo ciascuna parte di un’app viene ridimensionata. Senza poi contare che i prezzi per soluzioni IaaS e SaaS prevedono il pagamento di un prezzo fisso mensile o annuale, indipendentemente dal fatto che venga utilizzata l’intera capacità fornita.

“L’utilizzo delle risorse e l’ottimizzazione ricadono sul cliente”, afferma Rockwell. “Se affittiamo 50 istanze e se una è completamente carica e le altre 49 sono inattive, questo è il nostro problema”. Il serverless computing mette in discussione il problema delle istanze inattive. Quando si verifica un evento predefinito, viene attivato il codice scritto appositamente per eseguire una funzione e la piattaforma serverless esegue l’attività. I clienti non devono dire al fornitore del cloud quante volte verranno attivate queste funzioni e pagano una frazione di centesimo ogni volta che viene eseguita una funzione. Anche per questo Rockwell sostiene che il serverless computing può potenzialmente produrre da 5 a 10 volte incrementi di efficienza.

“Il concetto di serverless rende i prodotti affidabili e scalabili”, afferma Rockwell, aggiungendo che sta lavorando con GCP su un piano serverless per il Times. “A lungo termine, economicamente, sarà molto meglio, molto più economico e molto più efficiente.”

Opzioni serverless

Resta poi da vedere se il serverless diventerà la next big thing nel settore dell’informatica, ma i fornitori stanno già perseguendo in modo aggressivo questa fiorente opportunità di mercato. AWS ha lanciato AWS Lambda come sua prima piattaforma commerciale serverless nel 2014. Le offerte comparabili di Microsoft e Google stanno rafforzando la concorrenza, creando più scelta per i clienti. Lambda rimane comunque il favorito per ora.

Coca-Cola ha tagliato i costi da 13.000 a 4.500 dollari migrando dalle istanze di AWS EC2 alle istanze serverless di Lambda per i suoi distributori automatici. Nel frattempo Netflix utilizza Lambda per la produzione, l’elaborazione, la duplicazione e la protezione dei suoi contenuti. Cargill e Commonwell Mutual Insurance Group sono tra le altre imprese che stanno sperimentando o implementando soluzioni serverless.

Il serverless computing è un business rischioso

Resta il fatto che serverless non è qualcosa da prendere alla leggera, soprattutto per le aziende che prevedono di distribuire app su larga scala. Ad esempio, il passaggio a serverless richiede spesso la riprogettazione delle applicazioni o lo scambio dei principali componenti di sistema come i database. Questo può rivelarsi costoso e disruptive. Per questo motivo, molti, incluso Rockwell, considerano il serverless più sicuro per le iniziative di sviluppo greenfield.

“Anche il monitoraggio e il debugging sono difficili, vista la natura effimera dei serverless”, afferma Buchholz. Ad esempio, catturare dati è più difficile con un modello senza server perché non c’è una macchina su cui effettuare l’accesso. Ma Buchholz dice anche che sta nascendo una nuova generazione di strumenti di debug e monitoraggio per facilitare la situazione. Un’altra preoccupazione è il lock-in del fornitore, qualcosa con cui i CIO hanno già faticato nel passare ai cloud pubblici. Al momento non ci sono standard di settore per il serverless computing e ciò solleva non poche preoccupazioni per gli early adopter che hanno paura di scommettere sul cavallo sbagliato.

Suggerimenti in chiave serverless

  • Conoscere la vostra architettura di dati. Mentre riflettete sulle opzioni offerte dal fornitore, dovete conoscere i vostri dati e i relativi flussi, come conservarli e gestirli e come integrarli con le piattaforme front-end. Chiedetevi: quali dati sto memorizzando e manipolando? Come li sto elaborando? Ad esempio coloro che gestiscono dati non strutturati su scala e volumi elevati possono aver bisogno di qualcosa di diverso da quelli che elaborano i dati transazionali in un modello relazionale. Le risposte a queste domande vi aiuteranno a decidere quale piattaforma utilizzare.
  • Fate attenzione all’hype. I servizi serverless proliferano a un ritmo rapido e quindi fate attenzione al personale esperto che è entusiasta di utilizzare un nuovo strumento. Scegliete la tecnologia che ha più senso per i risultati aziendali che desiderate raggiungere. Buchholz dice di essere stato in molti IT shop che hanno acquistato ogni tipo di servizio senza una buona ragione.