Comparative Study Between Popular Container Orchestrators: Kubernetes, K3s, and Docker Swarm
摘要
In the era of microservices and containerization, orchestrators have become essential for managing complex applications efficiently. Containerization is an important technology for providing isolation and distribution of resources for operating system. Container orchestration is proposed to handle the automation of containerized applications. Several orchestrators are available, including Kubernetes (K8s), K3s, Docker Swarm, etc. in this paper, a comparison study between the most popular Kubernetes-based solutions: K8s, K3s, and Docker Swarm is implemented with vote application which is distributed application running across multiple Docker containers. By orchestrating a sample application using each tool, their performance, features, and ease of use are evaluated. The results of containers included (monitoring, GUI, installation and cluster configuration, supports, data volumes, update and rollback, and autoscaling) resources, Deployment operations latency, and memory consumption are obtained. Results showed that Kubernetes (K8s) has a high-performance comparative with other containers (K3s and Docker Swarms) due to its comprehensive feature set and robustness. K3s which is a lightweight version of Kubernetes, showed similar performance to K8s but with using different objects on its low-level architecture design, making it optimized for resource-constrained environments. The results also indicated that the Docker Swarm provided simplicity and ease of use but with lacking the extensive features of Kubernetes.