Improvement of container scheduling for Docker using Ant Colony Optimization

Docker, a software container implementation, has emerged not only as an operating-system level virtualization but also an application delivery platform for today Internet. However, the scheduling algorithm shipped with SwarmKit, the orchestration engine behind Docker, is suboptimal when resources are nonuniform. The use of meta-heuristic, like Ant Colony Optimization (ACO), is feasible to improve the scheduler's optimality. This paper presents a study of ACO to implement a new scheduler for Docker. The main contribution of this paper is an ACO-based algorithm, which distributes application containers over Docker hosts. It is to balance the resource usages and finally l eads to the better performance of applications. The experimental results showed that workloads placed by ACO performed better than those of the greedy algorithm by approximately 15% on the same host configuration.

[1]  Medhat A. Tawfeek,et al.  Cloud task scheduling based on ant colony optimization , 2013, 2013 8th International Conference on Computer Engineering & Systems (ICCES).

[2]  Ratan Mishra,et al.  Ant colony Optimization: A Solution of Load balancing in Cloud , 2012 .

[3]  Jun Zhang,et al.  Implementation of an Ant Colony Optimization technique for job shop scheduling problem , 2006 .

[4]  Michael Abd-El-Malek,et al.  Omega: flexible, scalable schedulers for large compute clusters , 2013, EuroSys '13.

[5]  Liang Liu,et al.  A multi-objective ant colony system algorithm for virtual machine placement in cloud computing , 2013, J. Comput. Syst. Sci..

[6]  Marco Dorigo,et al.  Ant colony optimization theory: A survey , 2005, Theor. Comput. Sci..

[7]  Ramakrishnan Rajamony,et al.  An updated performance comparison of virtual machines and Linux containers , 2015, 2015 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS).

[8]  Randy H. Katz,et al.  Mesos: A Platform for Fine-Grained Resource Sharing in the Data Center , 2011, NSDI.

[9]  David Bernstein,et al.  Containers and Cloud: From LXC to Docker to Kubernetes , 2014, IEEE Cloud Computing.

[10]  Manpreet Singh,et al.  Adaptive and Dynamic Load Balancing in Grid Using Ant Colony Optimization , 2012 .

[11]  Dan Wang,et al.  Cloud Task Scheduling Based on Load Balancing Ant Colony Optimization , 2011, 2011 Sixth Annual Chinagrid Conference.

[12]  Christian Blum,et al.  Ant colony optimization: Introduction and recent trends , 2005 .

[13]  Luca Maria Gambardella,et al.  Ant colony system: a cooperative learning approach to the traveling salesman problem , 1997, IEEE Trans. Evol. Comput..