计算机科学
强化学习
调度(生产过程)
分布式计算
云计算
操作系统
计算机网络
人工智能
工程类
运营管理
作者
Zhaolong Jian,Xueshuo Xie,Yaozheng Fang,Yibing Jiang,Tao Li,Ye Lu
出处
期刊:Authorea - Authorea
日期:2023-01-04
被引量:1
标识
DOI:10.22541/au.167285897.72278925/v1
摘要
Recently, Kubernetes is widely used to manage and schedule the resources of microservices in cloud-native distributed applications, as the most famous container orchestration framework. However, Kubernetes preferentially schedules microservices to nodes with rich and balanced CPU and memory resources on a single node. The native scheduler of Kubernetes, called Kube-scheduler, may cause resource fragmentation and decrease resource utilization. In this paper, we propose a deep reinforcement learning enhanced Kubernetes scheduler named DRS. To improve resource utilization and reduce load imbalance, we first present the Kubernetes scheduling problem as a Markov decision process and elaborately designed the state , action , and reward . Then, we design and implement DRS mointor to perceive six metrics about resource utilization to construct a comprehensive global resource view. Finally, DRS can automatically learn the scheduling policy through interaction with the Kubernetes cluster, without relying on expert knowledge about workload and cluster status. We implement a prototype of DRS in a Kubernetes cluster with five nodes and evaluate its performance. Experimental results highlight that DRS overcomes the shortcomings of Kube-scheduler and achieve the expected scheduling target with three workloads. Compared with Kube-scheduler, DRS brings an improvement of 27.29% in resource utilization and reduce the load imbalance by 2 . 90× on average, with only 3.27% CPU overhead and 0.648% communication latency.
科研通智能强力驱动
Strongly Powered by AbleSci AI