Scheduling optimization in Kubernetes

Canova, Simone (2024) Scheduling optimization in Kubernetes. [Laurea], Università di Bologna, Corso di Studio in Informatica [L-DM270], Documento ad accesso riservato.
Documenti full-text disponibili:
[img] Documento PDF (Thesis)
Full-text non accessibile fino al 1 Ottobre 2024.
Disponibile con Licenza: Creative Commons: Attribuzione - Condividi allo stesso modo 4.0 (CC BY-SA 4.0)

Download (715kB) | Contatta l'autore

Abstract

Con l’avvento del Cloud Computing, sono emersi nuovi prodotti software, con l’obbiettivo di semplificare tutte le fasi di creazione di un prodotto integrato con il Cloud, dal design al deployment. Uno di questi prodotti è Kubernetes, un Container Orchestrator. Kubernetes ha rivoluzionato il processo di creazione e mantenimento di applicazioni in Cloud, creando nuove architetture software, come i Microservizi o l’architettura Serverless. Ci concentriamo sul suo scheduler, un componente critico di Kubernetes, poiché responsabile di allocare le risorse per i microservizi. In questa tesi, commentiamo il funzionamento di Kubernetes, ed in particolar modo il suo scheduler, e proponiamo un possibile miglioramento per esso. In questa tesi, presentiamo un possibile miglioramento allo scheduler, che rende possibile scheduling ottimale quando lo scheduler di default non è in grado di trovare sufficienti risorse per allocare i microservizi richiesti. Per fare ciò, usiamo due solver ottimali, Z3 e OrTools. Mostriamo come solo OrTools sia adatto a questo compito, poiché Z3 risulta troppo inefficiente, e con cluster con al più 16 Nodi, questo approccio fornisce buoni risultati.

Abstract
Tipologia del documento
Tesi di laurea (Laurea)
Autore della tesi
Canova, Simone
Relatore della tesi
Correlatore della tesi
Scuola
Corso di studio
Ordinamento Cds
DM270
Parole chiave
Kubernetes,Z3,OrTools,Scheduling,Cloud Computing
Data di discussione della Tesi
10 Luglio 2024
URI

Altri metadati

Gestione del documento: Visualizza il documento

^