Institutional Repository
Technical University of Crete
EN  |  EL

Search

Browse

My Space

Microservice placement strategies in Kubernetes for cost optimization

Aznavouridis Alkiviadis

Full record


URI: http://purl.tuc.gr/dl/dias/D9614663-A54C-4D0B-B85C-36F1E8B6C74C
Year 2022
Type of Item Diploma Work
License
Details
Bibliographic Citation Alkiviadis Aznavouridis, "Microservice placement strategies in Kubernetes for cost optimization", Diploma Work, School of Electrical and Computer Engineering, Technical University of Crete, Chania, Greece, 2022 https://doi.org/10.26233/heallink.tuc.91386
Appears in Collections

Summary

The current Thesis proposes efficient microservice placement strategies in Kubernetes for optimizing the total monetary costs for hosting an application running in a Cloud environment. The problem of service placement is formulated as an application’s graph clustering one. The services form graphs with nodes representing services and edges representing communicating services. Both nodes and edges are labeled by resources consumed (i.e. mainly CPU and RAM resources) by the application’s microservices and affinities between these microservices (i.e. messages load exchanged per second). The result of an algorithm is a set clusters comprising nodes (i.e. microservices) communicating heavily with each other. This in turn guides to placement of service clusters to nodes (or VMs) by using heuristic methods. For collecting the essential data and for monitoring an application, Service Mesh technologies, like Istio and its related services, are utilized to supervise the network communication and the resource usage of the microservices. These strategies are implemented and tested into two microservice-based applications, iXen and Google’s OnlineBoutique eShop, into a homogeneous Cloud environment and particularly in the Google Cloud Platform. The experimental results reveal that the proposed microservice placement solutions reduce both the size of allocated resources and the network traffic of the host machines. This is achieved by reducing the number of the utilized machines and by increasing the internal communication volume of microservices in every host machine respectively. As a result, these solutions minimize the total monetary cost for the end-user.

Available Files

Services

Statistics