KCSS: Kubernetes container scheduling strategy

  • PDF / 2,373,083 Bytes
  • 27 Pages / 439.37 x 666.142 pts Page_size
  • 79 Downloads / 504 Views

DOWNLOAD

REPORT


KCSS: Kubernetes container scheduling strategy Tarek Menouer1 Accepted: 2 September 2020 © Springer Science+Business Media, LLC, part of Springer Nature 2020

Abstract The Kubernetes framework is a well-known open-source container-orchestration system widely used in industrial and academic fields. In this paper, we introduce a new Kubernetes Container Scheduling Strategy called KCSS. The goal of the KCSS is to optimize the scheduling of several containers submitted online by users to improve the performance concerning the user need in terms of makespan and the cloud provider need in terms of power consumption. In the literature, several container scheduling strategies are proposed. Each one uses a dedicated approach to select one node from the node set supplied by the cloud infrastructure. Then, this node welcomes the newly submitted container. The majority of the proposed container scheduling strategies select for each newly submitted container a node based on a single criteria, such as the number of running containers or the amount of available resources in each node. However, the scheduling based on a single criterion downgrades the performance because the scheduler has a limited vision of the state of the cloud infrastructure and the user need. The contribution of our KCSS is to introduce a multi-criteria selection of the node. This approach provides the scheduler with a global vision about the state of the cloud and the user’s need. The idea is to select from each newly submitted container the best node, with a good compromise between hybrid criteria related to the cloud infrastructure and the user need. In the KCSS, we consider six key criteria: (1) the CPUs utilization rate in each node; (2) the memory utilization rate in each node; (3) the disk utilization rate in each node; (4) the power consumption of each node; (5) the number of running containers in each node; and (6) the time of transmitting the image selected by the user for its container. In our context, the KCSS is based on a multi-criteria decision analysis algorithm to aggregate all criteria in a single rank. Then, select the node which has the highest rank to execute the new submitted container. The multi-criteria algorithm used by KCSS is the Technique for the Order of Prioritisation by Similarity to Ideal Solution (TOPSIS) algorithm. The KCSS is implemented in Go language inside the Kubernetes framework with minimal changes to be used easily with the next Kubernetes versions. The experimental results show

B

Tarek Menouer [email protected]

Extended author information available on the last page of the article

123

T. Menouer

that the KCSS improves the performance under different scenarios compared to other container scheduling strategies. Keywords Container technology · Cloud computing · Scheduling strategy · Multi-criteria scheduling · On-line scheduling · Power consumption in scheduling

1 Introduction Recently, the cloud computing industry shows rapid growth and a variety of virtualization technologies have emerged, such as virtual mac