错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Energy-aware Scheduling Algorithm for Microservices in Kubernetes Clouds

  • Wei Rao,
  • Hongjian Li

摘要

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.