Kubernetes in Action: Exploring the Performance of Kubernetes Distributions in the Cloud

Hossein Aqasizade,Ehsan Ataie,Mostafa Bastam
2024-03-03
Abstract:Kubernetes has emerged as a leading open-source platform for container orchestration, allowing organizations to efficiently manage and deploy containerized applications at scale. This paper investigates the performance of four Kubernetes distributions, namely Kubeadm, K3s, MicroK8s, and K0s when running OpenFaaS as a containerized service on a cluster of computing nodes on CloudLab. For this purpose, experiments are conducted to examine the performance of two virtualization modes, namely HVM and PV, supported by Xen as the underlying hypervisor. Moreover, two container runtimes that are integrated with Kubernetes, namely Docker, and Containerd, are examined to assess their performance on both disk-intensive and CPU-intensive workloads. After determining the appropriate underlying Xen mode and container runtime, the Kubernetes distributions are set up and their performance is measured using various metrics, such as request rate, CPU utilization, and scaling behavior.
Distributed, Parallel, and Cluster Computing,Performance
What problem does this paper attempt to address?
The main aim of this paper is to evaluate and compare the performance of different Kubernetes distributions under various configurations in a cloud environment. Specifically, the study focuses on the following aspects: 1. **Choice of Virtualization Mode**: The paper compares the performance differences between two Xen virtualization modes (Hardware Virtual Machine mode HVM and Paravirtualization mode PV) on the CloudLab cloud test platform and determines which mode is more suitable for running Kubernetes. 2. **Container Runtime Performance**: By deploying MySQL services and the OpenFaaS serverless computing platform, the performance of two mainstream container runtimes (Docker and Containerd) is evaluated to determine which runtime performs better under disk-intensive and CPU-intensive workloads. 3. **Performance of Kubernetes Distributions**: After determining the optimal virtualization mode and container runtime, the paper further evaluates the performance metrics of four Kubernetes distributions (Kubeadm, K3s, MicroK8s, K0s) when executing the OpenFaaS serverless computing platform, including request rate, CPU utilization, and scaling behavior. In summary, the core purpose of this paper is to explore and optimize the performance of Kubernetes in a cloud environment, particularly by using OpenFaaS as a typical application case. The paper provides a comprehensive performance evaluation of different Kubernetes distributions. Through detailed analysis of virtualization modes, container runtimes, and Kubernetes distributions, the researchers aim to offer guidance to organizations and individuals on how to choose the most suitable Kubernetes configuration.