Applications running in a cloud environment are usually developed with a cloud-native paradigm; those are composed of a multitude of microservices, independent from each other, each one performing a specific task. Their deployment in the cloud is not an easy task, and a lot of effort has been put in recent years to improve their performances. The proposed approaches, although, lack techniques for a sustainable deployment and focus mostly on the performances achieved. At the same time, the energy consumption originated by the data centers where these applications are executed is increasing. Data centers’ impact on CO2 emissions is estimated at around 2% of total emissions. Several actions have been taken by the main cloud providers to improve the infrastructure and the scheduling techniques to reduce this impact. However, the demand for new applications to be executed keeps rising, an issue complicated by the fact that applications are now executed more and more in the computing continuum, characterized by heterogeneous resources from the cloud to the edge. For these reasons, it is necessary to provide tools and techniques to increase the sustain- ability awareness of the owner of the application and to reduce the environmental impact of microservice-based applications. In this thesis, we are going to introduce a decision system that uses a novel design process of applications, called Sustainable Application Design Process (SADP), to perform a sustainable deployment of applications, driven by the energy efficiency and the quality of service characterizing the execution of the application both in cloud environments and heterogeneous environments such as fog. The point of view taken into consideration will be the one of the service providers, that will define a set of requirements for sustainability and performance, exploited to improve the application execution. This thesis proposes a set of metrics to assess QoS and the power consumption of microservice-based applications at run time and proposes an adaptive decision system able to modify their deployment adaptively. The proposed approach has been tested on Google Cloud using the Online Boutique application, demonstrating that we can reduce the application energy consumption by 19.8%.
Le applicazioni eseguite nel cloud sono spesso sviluppate seguendo il paradigma cloud- native; queste sono composte da una moltitudine di microservizi, indipendenti l’uno dall’altro, ognuno in grado di eseguire uno specifico compito. Il deployment di queste applicazioni nel cloud non è compito facile, ed è stato messo molto impegno negli ul- timi anni per aumentare le loro prestazioni, prevalentemente migliorando l’infrastruttura e gli algoritmi di schedulazione. Gli approcci proposti, tuttavia, mancano di tecniche per un deployment sostenibile e si concentrano principalmente sulle prestazioni raggiunte. Allo stesso tempo, il consumo energetico generato dai data centers dove queste appli- cazioni sono eseguite sta aumentando. L’impatto dei data centers sulle emissioni di CO2 è stimato attorno al 2% delle emissioni totali. Molte azioni sono state intraprese dai principali cloud provider migliorando l’infrastruttura e le tecniche di schedulazione per ridurre questo impatto. Tuttavia, la domanda dell’esecuzione di nuove applicazioni nel computing continuum, caratterizzato da risorse eterogenee dal cloud all’edge, continua ad aumentare. Per queste ragioni, è necessario fornire strumenti e tecniche per aumentare la consapevolezza sostenibile dei proprietari delle applicazioni e per ridurre l’impatto ambi- entale delle applicazioni basate su micro-servizi. In questa tesi, introdurremo un sistema di decisione che sulla base di un innovativo processo di design delle applicazioni, chiam- ato Sustainable Application Design Process, effettuerà un deployment sostenibile delle applicazioni, tracciando l’energia consumata in ambienti cloud (usato negli esperimenti) e ambienti eterogenei come il fog. Il punto di vista preso in considerazione sarà quello del service provider, che definirà un insieme di requisiti per la sostenibilità e le prestazioni, usati per migliorare l’esecuzione dell’applicazione. La nostra contribuzione è di definire le metriche per monitorare la QoS e il consumo energetico di applicazioni basate su micro- servizi al fine di modificare, tramite il nostro sistema di decisione, il loro deployment in maniera adattativa. L’approccio proposto è stato testato su Google Cloud usando la ap- plicazione di Online Boutique, dimostrando che possiamo ridurre il consumo energetico dell’applicazione del 19.8%.
An adaptive deployment approach for sustainable microservice-based applications
DELL'ORO, SIMONE
2020/2021
Abstract
Applications running in a cloud environment are usually developed with a cloud-native paradigm; those are composed of a multitude of microservices, independent from each other, each one performing a specific task. Their deployment in the cloud is not an easy task, and a lot of effort has been put in recent years to improve their performances. The proposed approaches, although, lack techniques for a sustainable deployment and focus mostly on the performances achieved. At the same time, the energy consumption originated by the data centers where these applications are executed is increasing. Data centers’ impact on CO2 emissions is estimated at around 2% of total emissions. Several actions have been taken by the main cloud providers to improve the infrastructure and the scheduling techniques to reduce this impact. However, the demand for new applications to be executed keeps rising, an issue complicated by the fact that applications are now executed more and more in the computing continuum, characterized by heterogeneous resources from the cloud to the edge. For these reasons, it is necessary to provide tools and techniques to increase the sustain- ability awareness of the owner of the application and to reduce the environmental impact of microservice-based applications. In this thesis, we are going to introduce a decision system that uses a novel design process of applications, called Sustainable Application Design Process (SADP), to perform a sustainable deployment of applications, driven by the energy efficiency and the quality of service characterizing the execution of the application both in cloud environments and heterogeneous environments such as fog. The point of view taken into consideration will be the one of the service providers, that will define a set of requirements for sustainability and performance, exploited to improve the application execution. This thesis proposes a set of metrics to assess QoS and the power consumption of microservice-based applications at run time and proposes an adaptive decision system able to modify their deployment adaptively. The proposed approach has been tested on Google Cloud using the Online Boutique application, demonstrating that we can reduce the application energy consumption by 19.8%.File | Dimensione | Formato | |
---|---|---|---|
An_Adaptive_Deployment_Approach_for_Sustainable_Microservice_Based_Applications.pdf
accessibile in internet per tutti
Dimensione
11.47 MB
Formato
Adobe PDF
|
11.47 MB | Adobe PDF | Visualizza/Apri |
I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.
https://hdl.handle.net/10589/186469