polito.it
Politecnico di Torino (logo)

Ottimizzazione dei costi in un cluster AWS tramite l'utilizzo di Knative = Using Knative to optimize costs in an AWS cluster

Marco Barbaro

Ottimizzazione dei costi in un cluster AWS tramite l'utilizzo di Knative = Using Knative to optimize costs in an AWS cluster.

Rel. Fulvio Giovanni Ottavio Risso. Politecnico di Torino, Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering), 2022

[img]
Preview
PDF (Tesi_di_laurea) - Tesi
Licenza: Creative Commons Attribution Non-commercial No Derivatives.

Download (5MB) | Preview
Abstract:

In questi ultimi anni, sempre più aziende cercano di migrare da una tecnologia on-premise ad una infrastruttura cloud. Tale scelta è dovuta principalmente ai costi, è risaputo infatti che, spostare i propri workload sul cloud consente un notevole risparmio in termini di energia, di hardware e di gestione. L'obiettivo di questo lavoro permette un ulteriore passo verso il risparmio dei costi all'interno di un cloud provider. Numerose aziende dispongono di svariati servizi continuamente attivi all'interno del proprio cluster i quali vengono utilizzati poche volte durante l'intero arco di una giornata o ,addirittura, di un intero anno, occupando inutilmente risorse hardware e facendo lievitare i costi di gestione. A fronte di ciò, durante questi anni si è incominciato a parlare di architetture serverless e "Function as a Service". Queste ultime permettono di focalizzarsi sulla scrittura del codice dell'applicazione, senza doversi occupare della sua configurazione, e sulla messa in campo all'interno di un cluster permettendo di fatto un abbassamento dei costi. Oltre a soluzioni commerciali disponibili all'interno dei vari cloud provider, se ne sono affiancate altre open-source come ad esempio Knative. Tale framework si colloca on-top dell'infrastruttura di Kubernetes, estendendendo così le sue risorse e le sue funzionalità offerte. La sua peculiarità è la possibilità di implementazione del codice attraverso delle immagini a container, create da Docker per poi essere eseguite solo quando necessario, garantendo un notevole risparmio di risorse hardware all'interno di un cluster e abbassando i costi verso le aziende. Per raggiungere l'obiettivo di questo lavoro, si è voluto analizzare Knative e i servizi offerti da Amazon Web Services, cloud provider di riferimento in questa tesi. Al fine di analizzare queste tecnologie e per un confronto diretto di performance e costi si è reso necessario lo sviluppo da un lato un'applicazione monolitica, dall’altro di una equivalente, adempiente agli stessi compiti, ma utilizzando Knative. Successivamente, l'applicazione è stata ricostruita in una terza versione per poter essere integrata con i servizi forniti da AWS, in particolare AWS Lambda e Aurora serverless. Ci si aspetta, come punto di arrivo, come sarà confermato dall’analisi suddetta, che i costi di una applicazione basata su Kubernetes risultino più alti rispetto ad una implementazione equivalente con Knative e AWS, in particolare a fronte di un numero maggiore di applicazioni all'interno del cluster.

Relatori: Fulvio Giovanni Ottavio Risso
Anno accademico: 2021/22
Tipo di pubblicazione: Elettronica
Numero di pagine: 109
Soggetti:
Corso di laurea: Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering)
Classe di laurea: Nuovo ordinamento > Laurea magistrale > LM-32 - INGEGNERIA INFORMATICA
Aziende collaboratrici: Corley S.r.l.
URI: http://webthesis.biblio.polito.it/id/eprint/22610
Modifica (riservato agli operatori) Modifica (riservato agli operatori)