Docker Layer Placement for On-Demand Provisioning of Services on Edge Clouds

Driven by the increasing popularity of the microservice architecture, we see an increase in services with unknown demand pattern located in the edge network. Pre-deployed instances of such services would be idle most of the time, which is economically infeasible. Also, the finite storage capacity limits the amount of deployed instances we can offer. Instead, we present an on-demand deployment scheme using the Docker platform. In Docker, service images consist of layers, each layer adding specific functionality. This allows different services to reuse layers, avoiding cluttering the storages with redundant replicas. We propose a layer placement method which allows users to connect to a server, retrieve all necessary layers -possibly from multiple locations- and deploy an instance of the requested service within the desired response time. We search for the best layer placement which maximizes the satisfied demand given the storage and delay constraints. We developed an iterative optimization heuristic which is less exhaustive by dividing the global problem in smaller subproblems. Our simulation results show that our heuristic is able to solve the problem with less system resources. Last, we present interesting use-cases to use this approach in real-life scenarios.

[1]  Feng Chu,et al.  Lower and upper bounds for a two-stage capacitated facility location problem with handling costs , 2014, Eur. J. Oper. Res..

[2]  G. Nemhauser,et al.  Integer Programming , 2020 .

[3]  Peyman Bahrampour,et al.  Modeling Multi-Product Multi-Stage Supply Chain Network Design , 2016 .

[4]  Charles Anderson,et al.  Docker [Software engineering] , 2015 .

[5]  Laurent Lemarchand,et al.  iFogStor: An IoT Data Placement Strategy for Fog Infrastructure , 2017, 2017 IEEE 1st International Conference on Fog and Edge Computing (ICFEC).

[6]  Paolo Bellavista,et al.  Feasibility of Fog Computing Deployment based on Docker Containerization over RaspberryPi , 2017, ICDCN.

[7]  Arto Ojala,et al.  Developing Cloud Business Models: A Case Study on Cloud Gaming , 2011, IEEE Software.

[8]  Johan Tordsson,et al.  Dynamic application placement in the Mobile Cloud Network , 2017, Future Gener. Comput. Syst..

[9]  Schahram Dustdar,et al.  Towards QoS-Aware Fog Service Placement , 2017, 2017 IEEE 1st International Conference on Fog and Edge Computing (ICFEC).

[10]  Filip De Turck,et al.  Towards Efficient Service Placement and Server Selection for Large-Scale Deployments , 2008, 2008 Fourth Advanced International Conference on Telecommunications.

[11]  David K. H. Chua,et al.  Optimizing Crane Selection and Location for Multistage Construction Using a Four-Dimensional Set Cover Approach , 2017 .

[12]  Jörg Ott,et al.  Consolidate IoT Edge Computing with Lightweight Virtualization , 2018, IEEE Network.

[13]  Luís Veiga,et al.  Towards Network-Aware Service Placement in Community Network Micro-Clouds , 2016, Euro-Par.

[14]  Luís Veiga,et al.  Practical Service Placement Approach for Microservices Architecture , 2017, 2017 17th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGRID).

[15]  Raffaele Giaffreda,et al.  Edge computing in IoT context: Horizontal and vertical Linux container migration , 2017, 2017 Global Internet of Things Summit (GIoTS).

[16]  Joseph Pasquale,et al.  Internet Distance Prediction Using Node-Pair Geography , 2012, 2012 IEEE 11th International Symposium on Network Computing and Applications.

[17]  J. Avery,et al.  The long tail. , 1995, Journal of the Tennessee Medical Association.

[18]  Mazin S. Yousif,et al.  Microservices , 2016, IEEE Cloud Comput..

[19]  Fabrizio Montesi,et al.  Microservices: Yesterday, Today, and Tomorrow , 2017, Present and Ulterior Software Engineering.

[20]  Qi Zhang,et al.  Dynamic Service Placement in Geographically Distributed Clouds , 2013, IEEE J. Sel. Areas Commun..

[21]  Paramvir Bahl,et al.  The Case for VM-Based Cloudlets in Mobile Computing , 2009, IEEE Pervasive Computing.

[22]  Zdenek Becvar,et al.  TROPIC-D22 Design of network architecture for femto-cloud computing , 2013 .

[23]  Ali Amiri Application placement and backup service in computer clustering in Software as a Service (SaaS) networks , 2016, Comput. Oper. Res..

[24]  Feng Chu,et al.  A lagrangean relaxation approach for a two-stage capacitated facility location problem with choice of depot size , 2015, 2015 IEEE 12th International Conference on Networking, Sensing and Control.

[25]  Filip De Turck,et al.  Network-aware service placement and selection algorithms on large-scale overlay networks , 2011, Comput. Commun..

[26]  Razvan Bocu,et al.  Software-defined networking of Linux containers , 2014, 2014 RoEduNet Conference 13th Edition: Networking in Education and Research Joint Event RENAM 8th Conference.

[27]  Sven Helmer,et al.  A Platform for Edge Computing Based on Raspberry Pi Clusters , 2017, BICOD.

[28]  AmiriAli Application placement and backup service in computer clustering in Software as a Service (SaaS) networks , 2016 .

[29]  Jon Crowcroft,et al.  PiCasso: A lightweight edge computing platform , 2017, 2017 IEEE 6th International Conference on Cloud Networking (CloudNet).

[30]  Nikolay Borissov,et al.  Cloud Computing – A Classification, Business Models, and Research Directions , 2009, Bus. Inf. Syst. Eng..

[31]  Pieter Simoens,et al.  On-demand provisioning of long-tail services in distributed clouds , 2016, NOMS 2016 - 2016 IEEE/IFIP Network Operations and Management Symposium.

[32]  Frédéric Semet,et al.  Comparison of formulations for the two-level uncapacitated facility location problem with single assignment constraints , 2017, Comput. Oper. Res..