Energy-aware Scheduling Algorithm for Microservices in Kubernetes Clouds: Energy-aware Scheduling Algorithm for Microservices in Kubernetes Clouds - Rao, Wei; Li, Hongjian (Journal of grid computing, 2025)
More and more applications are organized in the form of meshed microservices which can be deployed on the popular container orchestration platform Kubernetes. Kubernetes offers automated management, high availability, elastic scaling, and cross-cloud compatibility for complex meshed microservices applications. Although Kubernetes is a powerful tool for managing containers, its default scheduling algorithm and existing studies on container scheduling are mainly designed for monolithic applications. They fail to consider the varying resource consumption of different microservices, as well as the CPU consumption caused by the heartbeat mechanism of these microservices, leading to energy waste and inefficiencies. Hence, we propose an energy-aware scheduling algorithm based on Service Level Agreement (SLA) to reduce energy consumption of microservices deployed in Kubernetes. The proposed algorithm divides the communication frequency for the overall Pods by the network traffic between Pods and prioritizes the resource consumption of Pods based on the resource consumption of microservices running in the Pods. Additionally, an improved Sparrow Search Algorithm (ISSA) is designed and applied to pack the Pods by the communication frequency and the resource consumption priority of Pods, to achieve the goal of ensuring SLA and reducing energy consumption. The experimental results show that the energy consumption of Kubernetes clusters in a cloud environment is reduced by at least 5% compared with the latest container scheduling algorithms.