Container Orchestration: A Survey

Container technologies are changing the way cloud platforms and distributed applications are architected and managed. Containers are used to run enterprise, scientific and big data applications, to architect IoT and edge/fog computing systems, and by cloud providers to internally manage their infrastructure and services. However, we are far away from the maturity stage and there are still many research challenges to be solved. One of them is container orchestration that makes it possible to define how to select, deploy, monitor, and dynamically control the configuration of multi-container packaged applications in the cloud. This paper surveys the state-of-the-art solutions and discusses research challenges in autonomic orchestration of containers. A reference architecture of an autonomic container orchestrator is also proposed.

[1]  Claus Pahl,et al.  Containerization and the PaaS Cloud , 2015, IEEE Cloud Computing.

[2]  Inderveer Chana,et al.  QoS-Aware Autonomic Resource Management in Cloud Computing , 2015, ACM Comput. Surv..

[3]  Manish Parashar,et al.  Dynamic Adaptation of Policies Using Machine Learning , 2016, 2016 16th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid).

[4]  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).

[5]  Chanwit Kaewkasi,et al.  Improvement of container scheduling for Docker using Ant Colony Optimization , 2017, 2017 9th International Conference on Knowledge and Smart Technology (KST).

[6]  Vlado Stankovski,et al.  Implementing time-critical functionalities with a distributed adaptive container architecture , 2016, iiWAS.

[7]  Ramki Krishnan,et al.  An Analysis of Container-based Platforms for NFV , 2015 .

[8]  Moustafa Ghanem,et al.  Elastic Application Container: A Lightweight Approach for Cloud Resource Provisioning , 2012, 2012 IEEE 26th International Conference on Advanced Information Networking and Applications.

[9]  Malgorzata Steinder,et al.  Docker Containers across Multiple Clouds and Data Centers , 2015, 2015 IEEE/ACM 8th International Conference on Utility and Cloud Computing (UCC).

[10]  Marco D. Santambrogio,et al.  DockerCap: A Software-Level Power Capping Orchestrator for Docker Containers , 2016, 2016 IEEE Intl Conference on Computational Science and Engineering (CSE) and IEEE Intl Conference on Embedded and Ubiquitous Computing (EUC) and 15th Intl Symposium on Distributed Computing and Applications for Business Engineering (DCABES).

[11]  Simon Moser,et al.  Topology and Orchestration Specification for Cloud Applications Version 1.0 , 2013 .

[12]  Nitin Naik,et al.  Applying Computational Intelligence for enhancing the dependability of multi-cloud systems using Docker Swarm , 2016, 2016 IEEE Symposium Series on Computational Intelligence (SSCI).

[13]  Jiafeng Zhu,et al.  Application Oriented Dynamic Resource Allocation for Data Centers Using Docker Containers , 2017, IEEE Communications Letters.

[14]  Rami Bahsoon,et al.  A Systematic Review of Service Level Management in the Cloud , 2015, ACM Comput. Surv..

[15]  Boualem Benatallah,et al.  Web Service Composition , 2015 .

[16]  Yunjie Ji,et al.  Performance Tuning and Modeling for Big Data Applications in Docker Containers , 2017, 2017 International Conference on Networking, Architecture, and Storage (NAS).

[17]  Eui-nam Huh,et al.  An Index Scheme for Similarity Search on Cloud Computing using MapReduce over Docker Container , 2016, IMCOM.

[18]  Emiliano Casalicchio Autonomic Orchestration of Containers: Problem Definition and Research Challenges , 2016, VALUETOOLS.

[19]  Christoph Hochreiner,et al.  Elastic Provisioning of Virtual Machines for Container Deployment , 2017, ICPE Companion.

[20]  Giuseppina Cretella,et al.  Advances in Applications Portability and Services Interoperability among Multiple Clouds , 2015, IEEE Cloud Computing.

[21]  Mohamed Mohamed,et al.  In Search of the Ideal Storage Configuration for Docker Containers , 2017, 2017 IEEE 2nd International Workshops on Foundations and Applications of Self* Systems (FAS*W).

[22]  Eric A. Brewer,et al.  Borg, Omega, and Kubernetes , 2016, ACM Queue.

[23]  Philippe Merle,et al.  Autonomic Vertical Elasticity of Docker Containers with ELASTICDOCKER , 2017, 2017 IEEE 10th International Conference on Cloud Computing (CLOUD).

[24]  Emiliano Casalicchio,et al.  Measuring Docker Performance: What a Mess!!! , 2017, ICPE Companion.

[25]  Miika Komu,et al.  Hypervisors vs. Lightweight Virtualization: A Performance Comparison , 2015, 2015 IEEE International Conference on Cloud Engineering.

[26]  Richard O. Sinnott,et al.  A performance comparison of container-based technologies for the Cloud , 2017, Future Gener. Comput. Syst..

[27]  Swapnil Patil,et al.  Performance analysis of Union and CoW File Systems with Docker , 2016, 2016 International Conference on Computing, Analytics and Security Trends (CAST).

[28]  Jeffrey O. Kephart,et al.  The Vision of Autonomic Computing , 2003, Computer.

[29]  Roberto Morabito,et al.  A performance evaluation of container technologies on Internet of Things devices , 2016, 2016 IEEE Conference on Computer Communications Workshops (INFOCOM WKSHPS).

[30]  Rion Dooley,et al.  Distributed Systems of Microservices Using Docker and Serfnode , 2015, 2015 7th International Workshop on Science Gateways.

[31]  Michela Taufer,et al.  A Two-Tiered Approach to I/O Quality of Service in Docker Containers , 2015, 2015 IEEE International Conference on Cluster Computing.

[32]  Jieun Choi,et al.  Is container-based technology a winner for high performance scientific applications? , 2015, 2015 17th Asia-Pacific Network Operations and Management Symposium (APNOMS).

[33]  Bukhary Ikhwan Ismail,et al.  Evaluation of Docker as Edge computing platform , 2015, 2015 IEEE Conference on Open Systems (ICOS).

[34]  Yang Liu,et al.  Collaborative Security , 2015, ACM Comput. Surv..

[35]  Julie A. McCann,et al.  A survey of autonomic computing—degrees, models, and applications , 2008, CSUR.

[36]  Andreas Wilke,et al.  Skyport - Container-Based Execution Environment Management for Multi-cloud Scientific Workflows , 2014, 2014 5th International Workshop on Data-Intensive Computing in the Clouds.

[37]  Emiliano Casalicchio,et al.  Auto-Scaling of Containers: The Impact of Relative and Absolute Metrics , 2017, 2017 IEEE 2nd International Workshops on Foundations and Applications of Self* Systems (FAS*W).

[38]  Maurizio Giacobbe,et al.  Characterizing Cloud Federation in IoT , 2016, 2016 30th International Conference on Advanced Information Networking and Applications Workshops (WAINA).

[39]  Dharmesh Kakadia,et al.  Virtualization vs Containerization to Support PaaS , 2014, 2014 IEEE International Conference on Cloud Engineering.