12/02/2024Che cos’è il Cloud e come funziona il Cloud Computing?

In questo articolo, esploreremo il mondo del cloud, una tecnologia chiave dietro i successi di grosse aziende come Netflix che hanno bisogno di gestire Big Data in maniera efficiente e scalabile. Analizzeremo le differenze tra infrastrutture cloud e on-premise. Inoltre, esamineremo i vari tipi di servizi cloud offerti dai principali fornitori come Amazon AWS, Google Cloud Platform e Microsoft Azure, e discuteremo le loro applicazioni pratiche. Da soluzioni serverless all’accesso a servizi basati su intelligenza artificiale, questo articolo offre una panoramica completa sul cloud computing e i suoi innumerevoli vantaggi.

Indice:

👩🏻‍🏫 Introduzione al mondo del Cloud

👨🏻‍💻 Cloud e Cloud Computing

💻 Infrastrutture On-Premise vs Cloud

🛠️ Servizi Cloud: una Panoramica

👩🏻‍🏫 Introduzione al mondo del Cloud

Hai mai pensato che Netflix ogni giorno deve gestire milioni di film e serie tv che vengono riprodotte in contemporanea in tutto il mondo? Ma come fa? Tutto ciò è possibile grazie al cloud. Vediamo insieme di cosa si tratta e perché è così importante.

👨🏻‍💻 Cloud e Cloud Computing

Il Cloud è una rete di computer remoti connessi tramite Internet che permette di archiviare e processare dati, eseguire applicazioni, e molto altro. La rivoluzione del Cloud risiede nella facilità di accesso: non dobbiamo preoccuparci di dove si trovino fisicamente questi computer o come siano configurati; tutto ciò che ci serve è una connessione a Internet per accedervi.

Il Cloud Computing consiste semplicemente nell’utilizzo di queste risorse di calcolo e di storage che sono presenti in cloud. Ogni volta che usi una casella di posta elettronica online, guardi un film in streaming o lavori su documenti condivisi online, stai sfruttando il Cloud Computing.

💻 Infrastrutture On-premise vs Cloud

Ma perchè il cloud computing è diventato sempre più importante negli anni? In passato, le aziende dovevano acquistare e mantenere una propria infrastruttura informatica, un processo costoso e complesso. Queste aziende possedevano fisicamente i server di cui avevano bisogno e si occupavano della loro manutenzione e gestione. Infrastrutture di questo tipo sono chiamate soluzioni on-premise. E’ un opzione che offre all’azienda un controllo completo sui dati e le risorse, ma richiede investimenti significativi in termini di hardware e di personale IT. Considera ad esempio che l’hardware diventa obsoleto nel tempo e va quindi cambiato periodicamente.

Un’alternativa più flessibile e scalabile è proprio quella di sfruttare i servizi offerti da un Cloud Service Provider. Questa opzione elimina la necessità di dover gestire e possedere fisicamente una propria infrastruttura, consentendo all’azienda di pagare solo per le risorse che utilizza, quando le utilizza.

Uno degli aspetti più rivoluzionari del Cloud è proprio questo modello di pagamento 'pay-as-you-go'. Questo significa che le aziende pagano solo per le risorse che effettivamente utilizzano. E questo è un enorme vantaggio. Immaginate di dover gestire un sito di e-commerce senza usare servizi cloud. Il tuo sito dovrebbe essere in grado di gestire l’enorme traffico che ci sarà in giornate come il Black Friday. Questo vuol dire che avrai bisogno di un’infrastruttura IT molto costosa e complessa per gestire il traffico di poche giornate all’anno. Grazie ai servizi Cloud, puoi invece facilmente aumentare le risorse per gestire l'enorme traffico che ci sarà nei giorni vicini al Black Friday e poi ridurle quando la domanda diminuisce, ottimizzando così i costi e rendendo la tua applicazione facilmente scalabile.

Tipi di soluzioni Cloud: che opzioni abbiamo?

A questo punto dovrebbe esserti un po’ più chiaro i vantaggi di adottare soluzioni cloud rispetto a quelle on-premise. Ma chi è che gestisce effettivamente le infrastrutture cloud?

Ad oggi, i servizi cloud più utilizzati sono quelli forniti da tre grosse aziende: Amazon con AWS, Google con Google Cloud Platform e Microsoft con Azure. Tutte e tre hanno costruito enormi data center sparsi per tutto il mondo. La scelta più comune tra le aziende è proprio quella di sfruttare i servizi offerti da questi tre Cloud Service Provider.

Ma esistono anche delle soluzioni alternative?

  • Cloud privato: un’organizzazione può creare un ambiente di cloud computing all’interno della propria infrastruttura. Lo scopo è quello di avere un controllo completo sull’ambiente, ma con i benefici tipici del cloud come la possibilità di aumentare e diminuire al volo le risorse richieste per far girare una certa applicazione
  • Cloud ibrido: un’azienda potrebbe sfruttare i vantaggi di un cloud gestito da terze parti, mantenendo alcune operazioni più critiche in un cloud privato. Ad esempio, potrebbe sfruttare il cloud privato per operazioni che lavorano sui dati sensibili dei clienti dell’azienda stessa.

🛠️ Servizi Cloud: una panoramica

Amazon, Google e Microsoft offrono molti servizi cloud. Si tratta di servizi di diversa natura: potresti richiedere l’accesso ad una macchina virtuale su cui hai pieno controllo, oppure creare una tua API, senza preoccuparti di come verrà gestita l’infrastruttura su cui verrà fatto girare il codice che hai scritto.

In generale, le categorie di servizi sono le seguenti:

  • Infrastructure as a Service (IaaS): servizi che offrono l’accesso on-demand a risorse come macchine virtuali o storage. In questo caso avrai praticamente controllo totale sulle risorse che ti vengono fornite. Ad esempio, potresti dover creare diversi account sulla macchina virtuale e definire gli accessi manualmente. Potresti far girare un server su questa macchina virtuale, ma ad esempio dovrai occuparti tu di farlo partire manualmente.
  • Platform as a Service (PaaS): servizi che offrono un ambiente di sviluppo e di deployment di applicazioni software. Sono soluzioni molto usate dagli sviluppatori perchè consentono di costruire applicazioni che girano in cloud configurando solo in parte l’infrastruttura IT sottostante
  • Soluzioni serverless: sono spesso utilizzate per scrivere codice che viene eseguito in risposta ad eventi o trigger specifici (come una chiamata API). E’ una soluzione in cui lo sviluppatore non deve preoccuparsi quasi per nulla dell’infrastruttura su cui girerà il codice
  • Software as a Service (SaaS): sono tendenzialmente applicazioni sviluppate dalle aziende stesse che gestiscono il cloud a cui puoi accedere tramite browser senza bisogno di installare nulla sul tuo computer. Ad esempio, rientrano in questa categoria tutti gli strumenti forniti da Google Workspace come Gmail e Google Drive

Un altro tipo di servizio sempre più utilizzato è in realtà una via di mezzo tra il SaaS ed il serverless. Si tratta di servizi basati su intelligenza artificiale accessibili tramite API. In pratica, gli sviluppatori possono integrare nelle proprie applicazioni modelli di deep learning pre-addestrati tramite delle semplici chiamate API. Si tratta di modelli che sono in grado ad esempio di fare riconoscimento di immagini o la conversione text-to-speech.

Scritto da Luca Arrotta