计算机工程与科学2018,Vol.40Issue(12):2112-2119,8.DOI:10.3969/j.issn.1007-130X.2018.12.003
Docker动态调度算法的设计与实现
Design and implementation of a Docker dynamic scheduling algorithm
摘要
Abstract
As a container's runtime infrastructure, Docker can efficiently deploy, execute, and manage containers.However, the existing Docker-container management mechanism based on pre-run static configuration cannot dynamically allocate resources according to the characteristics of different application categories and runtime resource requirements.Therefore, based on the analysis of experiments on the resource usage and performance of Docker when running different workloads, we design and implement a runtime-based Docker dynamic scheduling algorithm to prioritize real-time application container service while ensuring the performance of batch-application containers.The algorithm can also recommend the most suitable application container that can be created according to current running status of nodes, thus maximizing the resource utilization of nodes.Experiments show that this algorithm does not introduce significant performance overhead.When resource competition occurs among containers, the service time for real-time application containers can be prolonged by 87.5%, with a 2.9% performance overhead at most for the batch-application containers that running at the same time.The algorithm recommendation mechanism increases the number of container instances that can run on nodes by 2.3 times, resulting in a maximum of 9.3% performance loss for batch-application containers.关键词
容器/动态调度/资源利用率/服务要求Key words
container/dynamic scheduling/resource utilization/service requirement分类
信息技术与安全科学引用本文复制引用
刘殊旸,张曼怡,曹强..Docker动态调度算法的设计与实现[J].计算机工程与科学,2018,40(12):2112-2119,8.基金项目
中央高校基本科研业务费专项(2018KFYXKJC03) (2018KFYXKJC03)
国家自然科学基金(61872156,61821003) (61872156,61821003)