Cargando…

K8sSim: A Simulation Tool for Kubernetes Schedulers and Its Applications in Scheduling Algorithm Optimization

In recent years, Kubernetes (K8s) has become a dominant resource management and scheduling system in the cloud. In practical scenarios, short-running cloud workloads are usually scheduled through different scheduling algorithms provided by Kubernetes. For example, artificial intelligence (AI) worklo...

Descripción completa

Detalles Bibliográficos
Autores principales: Wen, Shilin, Han, Rui, Qiu, Ke, Ma, Xiaoxin, Li, Zeqing, Deng, Hongjie, Liu, Chi Harold
Formato: Online Artículo Texto
Lenguaje:English
Publicado: MDPI 2023
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10058403/
https://www.ncbi.nlm.nih.gov/pubmed/36985058
http://dx.doi.org/10.3390/mi14030651
_version_ 1785016622862303232
author Wen, Shilin
Han, Rui
Qiu, Ke
Ma, Xiaoxin
Li, Zeqing
Deng, Hongjie
Liu, Chi Harold
author_facet Wen, Shilin
Han, Rui
Qiu, Ke
Ma, Xiaoxin
Li, Zeqing
Deng, Hongjie
Liu, Chi Harold
author_sort Wen, Shilin
collection PubMed
description In recent years, Kubernetes (K8s) has become a dominant resource management and scheduling system in the cloud. In practical scenarios, short-running cloud workloads are usually scheduled through different scheduling algorithms provided by Kubernetes. For example, artificial intelligence (AI) workloads are scheduled through different Volcano scheduling algorithms, such as [Formula: see text] , [Formula: see text] , and [Formula: see text]. One key challenge is that the selection of scheduling algorithms has considerable impacts on job performance results. However, it takes a prohibitively long time to select the optimal algorithm because applying one algorithm in one single job may take a few minutes to complete. This poses the urgent requirement of a simulator that can quickly evaluate the performance impacts of different algorithms, while also considering scheduling-related factors, such as cluster resources, job structures and scheduler configurations. In this paper, we design and implement a Kubernetes simulator called K8sSim, which incorporates typical Kubernetes and Volcano scheduling algorithms for both generic and AI workloads, and provides an accurate simulation of their scheduling process in real clusters. We use real cluster traces from Alibaba to evaluate the effectiveness of K8sSim, and the evaluation results show that (i) compared to the real cluster, K8sSim can accurately evaluate the performance of different scheduling algorithms with similar [Formula: see text] (a novel metric we define to intuitively show the simulation accuracy), and (ii) it can also quickly obtain the scheduling results of different scheduling algorithms by accelerating the scheduling time by an average of 38.56×.
format Online
Article
Text
id pubmed-10058403
institution National Center for Biotechnology Information
language English
publishDate 2023
publisher MDPI
record_format MEDLINE/PubMed
spelling pubmed-100584032023-03-30 K8sSim: A Simulation Tool for Kubernetes Schedulers and Its Applications in Scheduling Algorithm Optimization Wen, Shilin Han, Rui Qiu, Ke Ma, Xiaoxin Li, Zeqing Deng, Hongjie Liu, Chi Harold Micromachines (Basel) Article In recent years, Kubernetes (K8s) has become a dominant resource management and scheduling system in the cloud. In practical scenarios, short-running cloud workloads are usually scheduled through different scheduling algorithms provided by Kubernetes. For example, artificial intelligence (AI) workloads are scheduled through different Volcano scheduling algorithms, such as [Formula: see text] , [Formula: see text] , and [Formula: see text]. One key challenge is that the selection of scheduling algorithms has considerable impacts on job performance results. However, it takes a prohibitively long time to select the optimal algorithm because applying one algorithm in one single job may take a few minutes to complete. This poses the urgent requirement of a simulator that can quickly evaluate the performance impacts of different algorithms, while also considering scheduling-related factors, such as cluster resources, job structures and scheduler configurations. In this paper, we design and implement a Kubernetes simulator called K8sSim, which incorporates typical Kubernetes and Volcano scheduling algorithms for both generic and AI workloads, and provides an accurate simulation of their scheduling process in real clusters. We use real cluster traces from Alibaba to evaluate the effectiveness of K8sSim, and the evaluation results show that (i) compared to the real cluster, K8sSim can accurately evaluate the performance of different scheduling algorithms with similar [Formula: see text] (a novel metric we define to intuitively show the simulation accuracy), and (ii) it can also quickly obtain the scheduling results of different scheduling algorithms by accelerating the scheduling time by an average of 38.56×. MDPI 2023-03-13 /pmc/articles/PMC10058403/ /pubmed/36985058 http://dx.doi.org/10.3390/mi14030651 Text en © 2023 by the authors. https://creativecommons.org/licenses/by/4.0/Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
spellingShingle Article
Wen, Shilin
Han, Rui
Qiu, Ke
Ma, Xiaoxin
Li, Zeqing
Deng, Hongjie
Liu, Chi Harold
K8sSim: A Simulation Tool for Kubernetes Schedulers and Its Applications in Scheduling Algorithm Optimization
title K8sSim: A Simulation Tool for Kubernetes Schedulers and Its Applications in Scheduling Algorithm Optimization
title_full K8sSim: A Simulation Tool for Kubernetes Schedulers and Its Applications in Scheduling Algorithm Optimization
title_fullStr K8sSim: A Simulation Tool for Kubernetes Schedulers and Its Applications in Scheduling Algorithm Optimization
title_full_unstemmed K8sSim: A Simulation Tool for Kubernetes Schedulers and Its Applications in Scheduling Algorithm Optimization
title_short K8sSim: A Simulation Tool for Kubernetes Schedulers and Its Applications in Scheduling Algorithm Optimization
title_sort k8ssim: a simulation tool for kubernetes schedulers and its applications in scheduling algorithm optimization
topic Article
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10058403/
https://www.ncbi.nlm.nih.gov/pubmed/36985058
http://dx.doi.org/10.3390/mi14030651
work_keys_str_mv AT wenshilin k8ssimasimulationtoolforkubernetesschedulersanditsapplicationsinschedulingalgorithmoptimization
AT hanrui k8ssimasimulationtoolforkubernetesschedulersanditsapplicationsinschedulingalgorithmoptimization
AT qiuke k8ssimasimulationtoolforkubernetesschedulersanditsapplicationsinschedulingalgorithmoptimization
AT maxiaoxin k8ssimasimulationtoolforkubernetesschedulersanditsapplicationsinschedulingalgorithmoptimization
AT lizeqing k8ssimasimulationtoolforkubernetesschedulersanditsapplicationsinschedulingalgorithmoptimization
AT denghongjie k8ssimasimulationtoolforkubernetesschedulersanditsapplicationsinschedulingalgorithmoptimization
AT liuchiharold k8ssimasimulationtoolforkubernetesschedulersanditsapplicationsinschedulingalgorithmoptimization