Politecnico di Torino (logo)

Dynamic Sharing of Computing and Network Resources between Different Clusters

Francesco Borgogni

Dynamic Sharing of Computing and Network Resources between Different Clusters.

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

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

Download (1MB) | Preview

In the last several years, ICT world has seen an incredible innovation with the introduction of virtualization first, then with containerization and finally with orchestrators. In this last field, one of the main actors has been Kubernetes, an open source system for managing containerized applications in a clustered environment. The spread of Kubernetes is rapidly increasing, and many organizations are setting up their own clusters. In a similar scenario, if we could share resources between clusters this would open many use cases, which go from simply offloading applications on other clusters to a smart scheduler which distributes jobs on the best edge node. This behaviour is not supported natively by Kubernetes: a concept of “Federation” has been defined and is being developed, but the project is relatively new and not very mature (it is still alpha). Furthermore, it requires to elect a master cluster which manages the control plane of the federation, an approach which is not feasible in many contexts, for example between different providers. This thesis work addresses this context, focusing on the protocol that allows different clusters to know each other, exchange their information and send their jobs. The work started with the definition of the protocol, which has been designed so that it could be applied in different scenarios without the need of modifying the messages exchanged. Afterwards, it has been analysed how to implement it in Kubernetes, trying to be as transparent as possible: the implementation which has been developed extends the native capabilities of Kubernetes, without requiring additional knowledge. This means that a user who can use Kubernetes is able to exploit the proposed solution with no extra effort, interacting with the same interface and working with the same resources, but taking advantage of many other clusters on which he can deploy his applications. The tests carried out on the solution show the actual functioning in a multi-cluster environment and allow to analyse its performance.

Relators: Fulvio Giovanni Ottavio Risso
Academic year: 2019/20
Publication type: Electronic
Number of Pages: 71
Corso di laurea: Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering)
Classe di laurea: New organization > Master science > LM-32 - COMPUTER SYSTEMS ENGINEERING
Aziende collaboratrici: TOP-IX - TorinoPiemonteInternetExchange
URI: http://webthesis.biblio.polito.it/id/eprint/14517
Modify record (reserved for operators) Modify record (reserved for operators)