<i>Tetris:</i> Proactive Container Scheduling for Long-Term Load Balancing in Shared Clusters
Long-running containerized workloads (e.g., machine learning), which typically show <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">time-varying</i> patterns, are increasingly prevailing in shared production clusters. To improve workload performance, current schedulers mainly focus on optimizing <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">short-term</i> benefits of cluster load balancing or <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">initial container placement</i> on servers. However, this would inevitably bring many <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">invalid migrations</i> (i.e., containers are migrated back and forth among servers over a short time window), leading to significant service level objective (SLO) violations. This paper introduces <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">Tetris</i>, a <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">model predictive control</i> (MPC)-based container scheduling strategy to proactively migrate long-running workloads for cluster load balancing. Specifically, we first build a discrete-time dynamic model for <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">long-term</i> optimization of container scheduling. To solve such an optimization problem, <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">Tetris</i> then employs two main components: (1) a container resource predictor, which leverages time-series analysis approaches to accurately predict the container resource consumption; (2) an MPC-based container scheduler that jointly optimizes the cluster load balancing and container migration cost <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">over a certain sliding time window</i>. We implement and open source a prototype of <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">Tetris</i> based on K8s. Extensive prototype experiments and trace-driven simulations demonstrate that <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">Tetris</i> can improve the cluster load balancing degree by up to 77.8% without incurring any SLO violations, compared to the state-of-the-art container scheduling strategies.
Authors
- Fei Xu (ORCID: https://orcid.org/0000-0003-1590-5323)
- Xiyue Shen
- Fen Xiao (ORCID: https://orcid.org/0000-0001-7511-9418)
- Fangming Liu (ORCID: https://orcid.org/0000-0002-8570-1345)
- Li Chen (ORCID: https://orcid.org/0000-0002-2300-6996)
- Zhi Zhou (ORCID: https://orcid.org/0000-0002-0987-9344)
- Shuo-Hao Lin
Institutions
- Sun Yat-sen University (CN)
- Tencent (China) (CN)
- Peng Cheng Laboratory (CN)
- Huazhong University of Science and Technology (CN)
- East China Normal University (CN)
- University of Louisiana at Lafayette (US)
Publication Details
- Journal
- IEEE Transactions on Services Computing
- Published
- 2024-08-13
- DOI
- https://doi.org/10.1109/tsc.2024.3442544
- Citations
- 8
- Primary Topic
- Distributed and Parallel Computing Systems
- Type
- article
- Field-Weighted Citation Impact
- 2.79
Funders
- National Natural Science Foundation of China
- Science and Technology Commission of Shanghai Municipality